当前位置: 首页 > 知识库问答 >
问题:

使用Azure Graph API更改过期密码

田佐
2023-03-14
import requests

def login(tenant_name, client_id, client_secret, username, password):
     url = 'https://login.windows.net/' + tenant_name + '/oauth2/token'
     payload = {
             'grant_type': 'password',
             'username': username + '@' + tenant_name,
             'password': password,
             'client_id': client_id,
             'client_secret': client_secret,
             'resource': 'https://graph.windows.net'
     }

     r = requests.post(url, data=payload)

    return r.json()
{
 'timestamp': '2015-09-15 02:59:26Z',
 'trace_id': '8abff845-6941-4867-9729-15626c23330f',
 'submit_url': None, 
 'correlation_id': '81184c06-2627-4bca-82e3-76aab7713a5f', 
 'error_description': 'AADSTS70002: Error validating credentials. AADSTS50055: Password is expired.
Trace ID: 8abff845-6941-4867-9729-15626c23330f
Correlation ID: 81184c06-2627-4bca-82e3-76aab7713a5f
Timestamp: 2015-09-15 02:59:26Z',
 'context': None,
 'error': 'user_password_expired', 
 'error_codes': [70002, 50055]
}

共有1个答案

白智
2023-03-14

你不能。

至少对于资源所有者密码凭据授予(grant_type=Password)流不是这样,在这里您只有最终用户的凭据(尽管实际上,在很少的情况下,此流是一个好的选择--请参阅本答案和本答案以了解更多信息)。

用户需要被引导到Azure AD的web界面(在浏览器/web视图中)来验证和更改他们的密码。

 类似资料:
  • 问题内容: 我正在使用JNDI更改LDAP用户的密码。在大多数情况下(当用户密码未过期时),此代码可以正常工作: 但是,当密码过期的用户尝试更改它时,我的应用程序将抛出: 所以我的问题是:是否可以更改LDAP过期密码?如果可能,请告诉如何。 感谢您的帮助! 问题答案: 通过在Ad中创建超级用户可以解决此问题,该用户有权更改每个AD密码。当AD用户密码到期时,超级用户将更改其密码。

  • 我使用, Spring Framework 4.0.0 RELEASE(GA) Spring Security 3.2.0 RELEASE(GA) Struts 2.3.16 我在其中使用, 我的文件如下所示。 的实现如下。 无需参考这些类。 我的问题是在使用时, 可以将UserDetailsManager注入控制器及其 方法可用于更改密码。我从未尝试过这一点,但它可能大致实现如下。 在控制器中,

  • 我无法使用keytool(java 8)更改PKCS密钥库密码。当我试图更改密钥密码时: 这意味着无法更改PKCS12密钥库的密钥密码。然后我尝试更改keystore密码: 这意味着,我们必须一起更改密钥库密码和密钥密码。但是没有命令可以改变两者。我能做什么呢?

  • 问题内容: 我的页面上有一个CalendarExtender控件,有时必须将日期更改为下一个发生的星期日。我当前正在使用控件的OnClientDateSelectionChanged属性来调用一个函数,该函数将在日期中增加几天,直到其星期日为止。 我遇到的问题是,如果我在日历中选择了星期二,则文本框将显示下一个星期日,但是日历中的选定日期仍然是星期二。 如何更新CalendarExtender使其

  • 问题内容: 我目前有一个密钥库,其中只有我应该知道的特定密码。现在,我需要将对该密钥库的访问权授予其他人,因此我想: 1)更改密码,以便我可以与他人共享该密码并让他们签名 2)创建一个不同的密码并允许他们使用它进行签名。 这可能吗?以及-如果是-怎么样? 问题答案: 密钥库只有一个密码。您可以使用keytool进行更改: 要更改密钥的密码: