使用Microsoft Graph更改Azure AD的密码 [英] Change Password for Azure AD using Microsoft Graph
问题描述
我原本打算使用Azure AD Graph API,但随后在Microsoft文档中注意到了有关使用Microsoft Graph API的建议.
I was planning to use Azure AD Graph API but then noticed on the Microsoft docs about suggestions to use Microsoft Graph API.
是否提供了用于更改用户密码的文档?
Is there a documentation provided for changing a user's password?
string result = Task.Run(async() => { return await GetAccessToken(); }).GetAwaiter().GetResult();
var graphserviceClient = new GraphServiceClient(
new DelegateAuthenticationProvider(
(requestMessage) =>
{
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", result);
return Task.FromResult(0);
}));
var changePasswordRequest = graphserviceClient.Me.ChangePassword("oldpassword", "newpassword");
但是我认为这还不够.有可用的文档吗?
However I don't think this is sufficient. Any documentation available?
推荐答案
您可以更新passwordProfile
属性以更改当前用户的密码.请参考以下代码:
You could update passwordProfile
property to change the current user's password . Please refer to below code :
await graphClient.Me.Request().UpdateAsync(new User
{
PasswordProfile = new PasswordProfile
{
Password = "YourPassword",
ForceChangePasswordNextSignIn = false
},
});
并根据文档,则需要以下作用域之一才能执行此API:User.ReadWrite
User.ReadWrite.All
Directory.ReadWrite.All
.
And according to documentation, one of the following scopes is required to execute this API: User.ReadWrite
User.ReadWrite.All
Directory.ReadWrite.All
.
修改: 文档已被更新了以下注释:
The documentation has been updated with the following note:
更新
passwordProfile
属性时,需要以下范围:Directory.AccessAsUser.All
.
When updating the
passwordProfile
property, the following scope is required:Directory.AccessAsUser.All
.
这篇关于使用Microsoft Graph更改Azure AD的密码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!