gpt4 book ai didi

java - 无效_授权 : AADSTS50126: Error validating credentials due to invalid username or password

转载 作者:行者123 更新时间:2023-12-02 22:53:52 29 4
gpt4 key购买 nike

我正在尝试向 https://login.microsoftonline.com/<My_Tenant_Id>/oauth2/token 发出发布请求从我的 Java 代码中,但我收到错误“invalid_grant:AADSTS50126:由于用户名或密码无效,验证凭据时出错”。我已验证凭证并且它们是正确的(我能够登录到 Azure 门户并查看我的 SSO 的 AWS 应用程序)。我什至尝试满足 postman 的相同请求,但也出现同样的问题。

我传递的参数是:

"grant_type", "password"
"requested_token_type","urn:ietf:params:oauth:token-type:saml2"
"username", username
"password", password
"client_secret", clientSecret
"client_id", clientId
"resource", clientId

我什至检查了各种 Microsoft 文档,但仍然无法解决该问题。谁能告诉我可能是什么问题。是API调用错误还是服务器设置错误。

请注意:最初我的 API 调用正常工作,但后来出现错误 invalid_request: AADSTS80014,然后它自动得到解决,并且我开始收到 invalid_grant: AADSTS50126。有没有人遇到过这个问题或者知道如何解决这个问题。谢谢!

最佳答案

我可以通过创建仅云用户来解决此问题。联合用户在资源所有者密码授予流程中失败的原因是,对于联合用户,Azure AD 必须将用户重定向到属于用户本地域的特定联合服务器,以便 ADFS 服务器可以进行身份​​验证与本地域 Controller 。在资源所有者密码授予流程中,此重定向是不可能的,因此无法验证用户名和密码,因此会出现该错误。

建议,我们可以创建一个新的仅云用户,其用户名和密码应驻留在 Azure AD 中,以便在使用资源所有者密码授予流程时提交用户的凭据,AAD 可以对用户进行身份验证,而无需任何重定向。

此用户可以是 AAD 中的普通用户,并且应用注册中应存在相应的委派权限。现在还要确保的一件事是,如果我们提供的委派权限需要管理员同意,那么在用户登录应用程序之前,管理员必须为此委派权限提供管理员同意。如果我们希望用户提供他/她自己的同意(如果委派权限需要用户同意),那么我们必须在继续资源所有者密码授予流程之前以某种方式提供用户同意。

关于java - 无效_授权 : AADSTS50126: Error validating credentials due to invalid username or password,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65199330/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com