本文介绍了使用Microsoft Graph API进行本地用户配置文件更新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我们的应用程序中有一个屏幕,用于通过Graph API更新Azure AD用户。如果用户是使用Azure门户或Graph API创建的,我可以使用此屏幕更新用户配置文件。
但是,如果用户是使用AD Connect创建/同步的(例如,对于O365用户),则在更新这些用户时,Microsoft Graph返回以下错误:
我有以下疑问:
- 是否可以通过从本地到Azure AD创建的Graph API更新用户?
- Azure门户或广告连接上是否有任何设置允许用户是否通过Graph API更新?
- 如何区分用户是在本地创建的还是通过Microsoft Graph API在Azure AD上创建的。Microsoft.Graph.User类中有任何属性吗?
推荐答案
回答您的问题:
- 不,这是不可能的,因为它们是同步的。如果微软允许双方都进行更改,它将不得不实施某种重复的更改解决系统。因此,他们只是阻止更改属性,但许可证等一些仅限云的属性除外。
- 没有,因为上述原因
- 有,但有点老套。
要查看是否通过同步创建了图形用户,您应该请求应用程序的User.Read.All
范围,然后使用SELECT All Properties查询字符串?$select=*
向Get user endpoint发出请求。
已同步用户应具有OnPremisesSamAccountName
属性,而不是未同步用户上显示的其他属性。
一旦您发现该用户是本地用户,您的应用程序就可以使用System.DirectoryServices.AccountManagementAPI直接更新您的AD。
这篇关于使用Microsoft Graph API进行本地用户配置文件更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!