c# - 如何使用 Microsoft Graph 将用户添加到应用程序组和角色

标签 c# azure azure-web-app-service azure-active-directory microsoft-graph-api

我在 Azure 上有一个 C# .NET MVC Web 应用程序,我已为 Azure AD 帐户启用了 Easy Auth。

我正在尝试将用户添加到此 Web 应用程序与应用程序注册关联的“用户和组”列表,并为其分配由关联 list 定义的角色。

到目前为止,我可以通过在 Controller 中进行的此调用来获取应用程序的 list (其中包含应用程序角色的信息,例如 ID 和名称):

public JObject GetRoleInfoViaId(string appObjectId)
{
    string accessToken = this.Request.Headers["X-MS-TOKEN-AAD-ACCESS-TOKEN"]; // Get Easy Auth Access Token
    var url = $"https://graph.microsoft.com/beta/applications/{appObjectId}"; // MS Graph

    // Call the URL and return the response
    using (var httpClient = new HttpClient())
    {
        httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
        var response = httpClient.GetStringAsync(url).Result;
        var json = JObject.Parse(response);

        return json;
    }
}

从这里我就陷入困境了。我不知道如何将用户添加到应用程序和/或应用程序角色。

如果这在 Microsoft Graph 中尚无法实现,我可以将其切换到 Azure AD Graph。这就是我所追求的功能。

最佳答案

如果您想要将用户分配给该应用程序,则在指定的应用程序角色之一中,您需要在用户上设置 appRoleAssignment。您可以通过 Azure AD Graph API 实现这一点。请引用this reply用于解释和 API 操作。

关于c# - 如何使用 Microsoft Graph 将用户添加到应用程序组和角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46965559/

相关文章:

c# - 我如何从 xmlnodelist 中获取 xml 节点

c# - Take() 抛出 Not Implemented Exception Entity Framework 6 with MySQL

nginx - Azure Web 应用服务 + Docker Compose + NGINX 反向代理 - 部署中出现 502 错误

asp.net - 使用 websockets javascript 时出现错误 200

c# - 为什么struct比float慢?

c# - 自动更新桌面应用程序

azure - Blob 存储中的空图像

azure - 如何在 Windows Azure VM 上启用声音

django - powershell中的bash导出命令

sql-server - 从 Azure Web 应用程序(通过 Azure S2S VPN)查询本地 SQL Server 失败