使用图形 API 更新本地用户配置文件Microsoft



我们的应用程序中有一个屏幕,用于通过图形 API 更新 Azure AD 用户。如果用户是使用 Azure 门户或图形 API 创建的,则可以使用此屏幕更新用户配置文件。

但是,如果用户是使用 AD Connect 创建/同步的(例如,在 O365 用户的情况下(,同时更新这些用户Microsoft Graph 将返回以下错误:

无法更新本地主控目录同步对象或当前正在迁移的对象的指定属性

我有以下疑问:

  1. 是否可以通过从本地创建的图形 API 更新用户到 Azure AD?
  2. Azure 门户或广告连接上是否有任何允许用户通过图形 API 更新?
  3. 以及如何区分用户是通过图形 API 在本地还是在 Azure AD 上创建的Microsoft。Microsoft.Graph.User Class中的任何属性?

要回答您的问题:

    不,这
  1. 是不可能的,因为它们的同步方式。如果Microsoft允许双方进行更改,则必须实施某种重复的更改解决系统。因此,他们只是阻止更改属性,除了一些仅限云的属性,如许可证。
  2. 不,没有因为上述原因
  3. 是的,有,但它有点笨拙。

若要查看是否通过同步创建了 Graph 用户,应请求应用程序的User.Read.All范围,然后使用"选择所有属性"查询字符串?$select=*向"获取用户终结点"执行请求。

同步

的用户应具有未显示在未同步用户上的其他用户中的 OnPremisesSamAccountName 属性。

一旦发现用户是本地用户,您的应用程序就可以使用 System.DirectoryServices.AccountManagement API 直接更新您的 AD。

最新更新