首页 文章

使用Microsoft Graph获取用户的扩展属性

提问于
浏览
2

我正在使用Microsoft Graph来管理Azure AD用户,并且在访问User对象上的扩展属性时遇到了一些问题 . 使用Azure AD Graph API创建用户时添加了该属性,如果使用Azure AD API查询用户,则会自动返回名为“extension_ _ ”的扩展属性 . 我想使用Microsoft Graph访问此属性的值,但没有找到正确的调用来执行此操作 .

我尝试使用$ select直接选择属性(按上面列出的全名)和较短的名称 .
https://graph.microsoft.com/beta/Users/?$select=extension__

我也尝试使用$ expand查询singleValueExtendedProperty(和multiValue),但我被告知User对象上不存在该属性 .
https://graph.microsoft.com/beta/Users/?$expand=singleValueExtendedProperty

我也玩过User对象上的'extensions'字段,但它总是为null .

只是好奇Graph是否支持此操作,如果是,则如何查询该字段 . 如果我在查询用户组时无需运行单独的查询就可以获得此扩展的值,这将是一个额外的好处 .

1 回答

  • 3

    扩展程序显示在 Extensions 集合中的Microsoft Graph中,而不是顶级属性:

    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(id,displayName,mail,extensions)/$entity",
    "id": "16f5a7b6-5a15-4568-aa5a-31bb117e9967",
    "displayName": "Anne Weiler",
    "mail": "annew@CIE493742.onmicrosoft.com",
    "extensions@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('16f5a7b6-5a15-4568-aa5a-31bb117e9967')/extensions",
    "extensions": [
        {
            "@odata.type": "#microsoft.graph.openTypeExtension",
            "theme": "dark",
            "color": "purple",
            "lang": "Japanese",
            "extensionName": "com.contoso.roamingSettings",
            "id": "com.contoso.roamingSettings"
        }
    ]
    

    例如,您可以使用以下查询返回 users 的集合(包括任何扩展名): v1.0/users?$select=id,displayName,mail&$expand=extensions (参见Graph Explorer

相关问题