# Changes to querying AD using LDAPHelper in 8.3

**URL:** <https://forum.inductiveautomation.com/t/changes-to-querying-ad-using-ldaphelper-in-8-3/111518>\
**Category:** Ignition\
**Tags:** ignition83\
**Created:** [October 16, 2025, 2:16pm UTC](https://forum.inductiveautomation.com/t/changes-to-querying-ad-using-ldaphelper-in-8-3/111518 "2025-10-16T14:16:00Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [October 16, 2025, 5:36pm UTC](https://forum.inductiveautomation.com/t/changes-to-querying-ad-using-ldaphelper-in-8-3/111518/2 "2025-10-16T17:36:06Z")

</div>

Well, you're already well outside the bounds of supported behavior, so what can it hurt...

You can use `FieldUtils` ([as done here](https://forum.inductiveautomation.com/t/easy-way-to-clear-the-serial-buffer/103240/4)) to read the inner `com.inductiveautomation.ignition.gateway.secrets.Plaintext` field from a `PyPlainText`. The field name is `"wrapped"`.

As in, something like this:

```python
        pySecret = system.security.readSecretValue("abc", "xyz")
        javaSecret = FieldUtils.readField(pySecret, "wrapped", True)
        self.instance.setProfilePassword(javaSecret) # new for 8.3

```

---

_[View the full topic](https://forum.inductiveautomation.com/t/changes-to-querying-ad-using-ldaphelper-in-8-3/111518)._
