Applications Systems
Some Active Directory users cannot log in to DPA after upgrading from DPA 12.0 or earlier to DPA 12.1 or later
When users try to log in to DPA with their domain account, they get the message "Domain user is locked" or "Domain has no permissions in DPA".
First published date
Last published date
Overview
After upgrading from DPA 12.0 or earlier to DPA 12.1 or later, some AD users are getting one of the following messages when they attempt to log in with their domain account:
- Domain user is locked.
- Domain has no permissions in DPA.
Product section
Cause
Resolution
Two possible fixes exist.
Resolution 1: Adjust permissions.
Adjust the permission for DPA service account to allow this account to fetch attributes when searching for users who are supposed to access DPA. You can either:
- Run a script to verify the permissions of the user that is unable to log in, and then adjust those permissions as needed.
- Use the ADSI Edit tool to verify group permissions.
Run a script to verify user permissions
Note: If possible, connect to the AD server before executing the following PowerShell commands, because remote execution could be blocked.
-
Edit the following script for your environment:
- In the first command, change ldap_user to the LDAP user used for DPA/LDAP integration.
- In the third command, change login_user to the user that is not able to log in to DPA.
-- Scripts are not supported under any SolarWinds support program or service. -- Scripts are provided AS IS without warranty of any kind. SolarWinds further -- disclaims all warranties including, without limitation, any implied warranties -- of merchantability or of fitness for a particular purpose. The risk arising -- out of the use or performance of the scripts and documentation stays with you. -- In no event shall SolarWinds or anyone else involved in the creation, -- production, or delivery of the scripts be liable for any damages whatsoever -- (including, without limitation, damages for loss of business profits, business -- interruption, loss of business information, or other pecuniary loss) arising -- out of the use of or inability to use the scripts or documentation. Enter-PSSession -ComputerName localhost -Credential (Get-Credential -UserName ignite.local\ldap_user -Message "enter password") Import-Module ActiveDirectory $ou = "AD:CN=login_user,OU=Lab Users,DC=ignite,DC=local" $acl = Get-Acl $ou # list all attributes Rights for user $acl.access | Out-File -FilePath c:\logs\user_privilege1.txt # list attributes Rights based on ObjectType $obj = @( 'BC0AC240-79A9-11D0-9020-00C04FC2D4CF', # Group-Membership '4828cc14-1437-45bc-9b07-ad6f015e5f28', # Allowed-To-Authenticate '3e0abfd0-126a-11d0-a060-00aa006c33ed', # sAMAccountName '28630ebb-41d5-11d1-a9c1-0000f80367c1', # userPrincipalName 'bf9679c0-0de6-11d0-a285-00aa003049e2', # Member 'bf967a68-0de6-11d0-a285-00aa003049e2', # userAccountControl 'bf967a00-0de6-11d0-a285-00aa003049e2', # primaryGroupID 'bf9679e8-0de6-11d0-a285-00aa003049e2', # objectSid 'b7c69e6d-2cc7-11d2-854e-00a0c983f608' # Token-Groups ) $acl.access | Where-Object { $obj -contains $_.ObjectType} ` | Out-File -FilePath c:\logs\user_privilege.txt - Run the script on your DPA server to output a file listing user permissions.
- Run the script again to output the permissions of a user who can log in to DPA.
- Compare the permission sets, and update the permissions of the first user as needed.
Use the ADSI Edit tool
- Open the ADSI Edit tool and connect to your LDAP server.
- Find the user who is not able to log in to DPA in the AD hierarchy.
- Right-click the user name and choose Properties to show details about that user.
- On the Security tab, find the group to which the ldap_user (the user used for DPA/LDAP integration) is assigned.
- Make sure that the group has the right to read user attributes.
Resolution 2: Revert to the original attribute fetching strategy.
Upgrade to DPA 2020.2.1 and add the following option to the system.properties file. To add the option:
- Stop the DPA Service.
- Open the file <dpa_directory>/iwc/tomcat/ignite_config/idc/system.properties in a text editor.
- Add the following to the end of the file: com.confio.security.ldap.authPopulator.fetchAttributesAfterBind=true
- Start DPA.