AD FS Password update not working (PasswordValidationError) - passwords

If have installed and configured ADFS 3.0 (Windows 2012 R2). Authenticating my webapplication with ADFS is working correctly however when i want to update/change my password i get this error on the ADFS login page:
"The new password is not set. Please contact your system administrator" (translated from dutch)
In event viewer this error event is logged on the ADFS server (eventID 407):
Password change failed for following user:
Additional Data
User:
#
Server on which password change was attempted:
.domain.local
Error details:
PasswordValidationError
ADFS debug tracing comes up with these 2 error events (eventid 53):
PasswordUtil.ChangePassword: directory operation error for user , exception Sytem.DirectoryServices.Protocols.DirectoryOperationException: A value in the request is invalid.
at System.DirectoryServices.Protocols.LdapConnection.ConstructResponse(Int32 messageId, LdapOperation operation, ResiltAll resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)
and
PasswordUtil.ChangePassword: Failed to change password on server with error
Microsoft.IdentityServer.Service.PasswordManagment.PasswordChangeException: Exception of type 'Microsoft.IdentityServer.Service.PasswordManagment.PasswordChangeException' was thrown.
at Microsoft.IdentityServer.Service.PasswordManagment.PasswordUtil.ChangePassword(String userName, SecureString oldPassword, SecureString new Password)
This fix doesn't need to be installed because the dll's are older then on our ADFS server (https://support.microsoft.com/en-us/kb/3035025)
The endpoint for update passwords in adfs is enabled (ohterwise i didn't get the updatepassword screen).
In the eventviewer of the DC there are informational events which says dat an passwordchange has attempted, which is logged as wel as a password is changed not via ADFS. It seems that the ADFS service account want to change the password which i wanted te change so i made the ADFS service account domain admin but that does not solves the problem and i get the same errors.
On internet didn't find much nor adfs eventid 407 or 53.
Does anyone run into the same issues as i did?

I solved the problem myself (with help from Microsoft). The errormessage i go "passwordvalidationerror" is very misleading, i thought it pointed to communication error between AD and ADFS. But the case is that this errormessage is given when your new password is not met with you password policy. We found out that the accounts password policy said "minimum password age" was 21 days. The accounts we tested with had passwords that were not 21 days old yet. So keep in mind that if you want to change your password with ADFS and your new password does not meet your company's password policy the evenviewer message will be "passwordvalidationerror" and check your password policys by typoing the following command in your command prompt: net accounts.

Related

Invalid user or password or the account is blocked due to multiple failed login attempts

Error Message:- Invalid user or password or the account is blocked due to multiple failed login attempts. If so, it will be unblocked automatically in a short time.
I have installed Openproject in Ubuntu environment.
Today morning i updated the Openproject.
When i tried to login using my user name and password I got the above error message
The database is Postgresql.
I could able to login to db.
what is the solution to resolve this issue and i am want to unblock the account.
All the accounts, including admin account could not able to login.
Create a new username and password with admin rights in postgresql DB.
Grant admin rights to the user.
Login to the website using the new username and password.
GO to adminstration - Authentication -
check
AUTOMATED USER BLOCKING
Block user after this number of failed login attempts
--Give the input Zero - 0
It will allow the user to login any number of times if they fail.
thanks

Issue with "Resource owner password credentials grant" in Azure AD OAuth

Unable to get the access token by directly passing the username and password
Endpoint : https://login.microsoftonline.com/{tenant_id}/oauth2/token
grant_type: password
client_id: APPLICATION_ID
resource: https://graph.microsoft.com/.default
username: <username#microsoft.com>
password: <password>
Scope : openid
App is created in https://apps.dev.microsoft.com/
Getting Invalid grant error:
{
"error": "invalid_grant",
"error_description": "AADSTS70002: Error validating credentials. AADSTS50126: Invalid username or password\r\nTrace ID: 1ff96bc3-29c8-48f1-b7cc-f77c01525500\r\nCorrelation ID: 9821fdf5-25dc-4b07-84b3-f084194ea123\r\nTimestamp: 2018-09-14 20:04:01Z",
"error_codes": [
70002,
50126
],
"timestamp": "2018-09-14 20:04:01Z",
"trace_id": "1ff96bc3-29c8-48f1-b7cc-f77c01525500",
"correlation_id": "9821fdf5-25dc-4b07-84b3-f084194ea123"
}
UPDATE
Looks like there are more than one issues in play here.
You were using Azure AD token endpoint but had registered your application with Azure AD B2C by mistake (so case 2 as per my original answer).
Now after correcting that one, you should be using clientid and client secret for this new application that is registered with Azure AD.
Make sure you have added Microsoft Graph permissions for your application in Azure AD under "required permissions" and at the end of selecting appropriate permissions, make sure you press on the "Grant Permissions" button to give consent.
Looking at the error message and code you are getting (invalid_grant and "AADSTS70002: Error validating credentials. AADSTS50126"), I tried out ROPC exactly like you from Postman with a test application of my own and I tried multiple different combinations of passing wrong inputs, but the exact error codes you see come only in scenario where either my password or the username is incorrect (as the message says :)). In all other cases, error code will be different.
So, for username - make sure you give fully qualified name e.g. rohitsaigal#mydomain.onmicrosoft.com
for password - pretty obvious.
Give it another try based on instructions above and lets see how it goes.
ORIGINAL ANSWER
App is created in https://apps.dev.microsoft.com/
This means that your application is registered with Azure AD B2C.
Where you have registered your application isn't matching with the token endpoint you are using.
Case 1 - You are looking to use Azure AD B2C
Resource Owner Password Credentials Grant is still in public preview and you will need to follow the instructions provided by Microsoft here -
Configure the resource owner password credentials flow in Azure AD B2C
The endpoint you will hit to get the token will also be different that the one you have mentioned.
https://yourtenant.b2clogin.com/<yourtenant.onmicrosoft.com>/oauth2/v2.0/token?p=B2C_1_ROPC_Auth
Case 2 - You are looking to use Azure AD B2B
In this case you are using the correct end point to get the token, but you have wrongly registered your application with Azure AD B2C, you will need to change that and register your application from Azure Portal.
Instructions and details here - Integrating applications with Azure Active Directory
Just in case you need to read up on differences between Azure AD B2B v/s B2C - look at this SO Post
Here is another useful SO Post that gives information about registering your application through Azure Portal v/s https://apps.dev.microsoft.com (New application registration portal)
It seems like you didn't Grant Permissions to your app. Make sure all of the users are added to the app and ensure that you have the correct web.config parameters.
Also, ensure that the username and password are correct for the managed domain to connect. I've gotten this error before using the incorrect user. A regular azure global admin user may not be able to authenticate. You need to make sure you are using a CSP admin user.
This works https://learn.microsoft.com/en-us/azure/active-directory-b2c/add-ropc-policy?tabs=app-reg-ga&pivots=b2c-user-flow
But keep in mind that there are limitations like:
You cannot use when a password is expired or needs to be changed.
MFA is not supported
Social logins are not supported

Login to Sharepoint Online failure

We have a code that logins to Sharepoint Online using :
https://login.microsoftonline.com/extSTS.srf or https://login.microsoftonline.com/RST2.srf, but recently we starting to get authentication failed saying that "Incorrect Username or Password" and after some retries it returns:
"0x80048823 message : AADSTS70002: Error validating credentials. AADSTS50053: You've tried to sign in too many times with an incorrect user ID or password."
While using same username and password to login in the browser works fine, and neither password or username were changed, also code didn't changed. As same code works fine for another Sharepoint tenants. Seems that something changed in the Microsoft login servers, where it's started to not accept user credentials, while web browser login works fine.
Please advise.
Thanks
Microsoft Rep has helped me get this far.
They had us create a "Cloud Only" user. This user was setup as "#" so if your name is bill and your corporate sharepoint site is name is FakeCompany.sharepoint.com then you would have the person as "bill#FakeCompany.onmicrosoft.com"
This user was able to login to https://login.microsoftonline.com/extSTS.srf by just passing username and password.
Our on prem AD users are still having issues, i mentioned this and got the following response.
There is no issue with sync as you are able to login to portal using the same account and password.
The solution you need is documented in https://learn.microsoft.com/en-gb/azure/active-directory/manage-apps/configure-authentication-for-federated-users-portal#enable-direct-authentication-for-legacy-applications
You need to create a home realm discovery (HRD) policy where "AllowCloudPasswordValidation":true.
We have not yet implemented the last solution but the creating of a cloud account may help some of you.
So I think I understand what they are trying to say. There are 2 paths that you are able to authenticate with according to the node-sp-auth example.
"Managed" and "Federated"
"Managed" was the easier version and allowed for you to be able to just provide username and credentials in a soap assertion to login.
Federated is a lot more complicated. You need to first perform a post to Microsoft to validate the user hitting your adfs server. https://adfs.XXXXXXX.com/adfs/services/trust/13/usernamemixed
Then you take the saml:Assertion from that response and put it into the "Token" section of the call you make to https://login.microsoftonline.com/extSTS.srf utilizing the templates from the node-sp-auth.
I have C# code that performs all these steps but I am getting an error
AADSTS70002: Error validating credentials. AADSTS50008: SAML token is invalid. AADSTS50006: Invalid signature. Signature verification failed.
Even though the signature is being generated by Microsoft in their SAML.
node-sp-auth code refrence is OnlineUserCredential.ts file.
If someone can figure out the last mile I can post a comprehensive C# solution.

Unable to connect to CloudBees through Eclipse

I am trying to follow the tutorial here: http://wiki.cloudbees.com/bin/view/Documentation/CloudBeesEclipseToolkit that describes how to configure your eclipse to use the CloudBees subversion respository. When I get to step 2, and try to validate my account username and password, I get:
Failed to validate your account.
Reason:
Failed to get account services info.
Authentication of user: xxxx failed.;
Details -
Unexpected response code:400. Message: Bad Request
I did use my google account (and oauth?) to create my cloudbees account. I am using my google username and password to try to validate.
The account name is what you see when you enter in cloudbees on the top right.
Regarding your missing password this is due to the fact that google and github sign in don't ask user to define a password - that's why you get an authentication failure.
Users can use https://grandcentral.cloudbees.com/account/forgot_password to request password reset and define the password.
I was able to fix this by clicking on the builds sectio of my account. This led me to some pages that told me I didn't have a password with cloudbees, and prompted me to create one.
When I used this password, instead of my gmail one, validation worked.
Also, I had to use my account name minus #gmaail.com to perform svn checkins, which wasn't the most intuative - it's not clear what un/ow and where

OPenLDAP account lockout

I have openldap server and lot of applications are getting authentication setup via LDAP. I am using an Auth user for the apps which is getting locked again and again because of that I have to reset the password of Auth user to make my application start authentication again.
I have implemented ppolicy and made and exception for my Auth user. Which seems working for sometime but account locking started again. I have account lockout policy for 5 wrong password attempts which is working fine with exception to Auth user when I try manually entering wrong password more than 5 times.. So I am suspecting there must be some other system policy for account lockup may be for 250+ wrong attempts or so...
I am just looking for an option to make Auth user unlimited wrong password tries. Is it possible? Is yes how?