Please take a look on the whole error message, e.g.:
"The exception is [LDAP: error code 49 - 80090308: LdapErr: DSID-0Cxxxxxx, comment: AcceptSecurityContext error, data <HEX>, XXXX]."
The cause you will find as a hexadecimal number <HEX> after data.
|Error code <HEX>||Short Description||Description|
|525||LDAP_NO_SUCH_OBJECT||Returned when an invalid username is supplied|
|52e||ERROR_LOGON_FAILURE||Returned when a valid username is supplied but an invalid password/credential is supplied.|
|52f||ERROR_ACCOUNT_RESTRICTION||Returned when account restrictions are preventing this user from signing in.|
|530||ERROR_INVALID_LOGON_HOURS||Returned when a valid username and password/credential are supplied during times when login is restricted.|
|531||ERROR_INVALID_WORKSTATION||Returned when a valid username and password/credential are supplied, but the user is restriced from using the workstation where the login was attempted.|
|532||ERROR_PASSWORD_EXPIRED||Returned when a valid username is supplied, and the supplied password is valid but expired.|
|533||ERROR_ACCOUNT_DISABLED||Returned when a valid username and password/credential are supplied but the account has been disabled.|
|568||ERROR_TOO_MANY_CONTEXT_IDS||Returned when during a logon attempt, the user's security context accumulated too many security Identifiers.|
|701||ERROR_ACCOUNT_EXPIRED||Returned when a valid username and password/credential are supplied but the account has expired.|
|773||ERROR_PASSWORD_MUST_CHANGE||Returned when a valid username and password/credential are supplied, but the user must change their password immediately (before logging in for the first time, or after the password was reset by an administrator).|
|775||ERROR_ACCOUNT_LOCKED_OUT||Returned when a valid username is supplied, but the account is locked out. Note that this error will be returned regardless of whether or not the password is invalid.|