我们有一个使用Azure AD的OAuth与Office 365的Web应用程序。我们正在尝试限制我们可以访问的资源。 示例:身份验证用户可以访问Site1,Site2和Site3。我们希望仅限制对Site1的应用程序访问。有人知道这是否可行?我试图查看Office 365,Azure AD甚至Discovery API文档,但我找不到任何有用的信息。
答案 0 :(得分:0)
您是否还在Azure AD上注册了site1,site2和site3?如果我理解正确,我们可以为site1,site2和site 3配置app清单,以设置如下所示的require权限(请参阅here)
"oauth2Permissions": [
{
"adminConsentDescription": "Allow the application full access to the Todo List service on behalf of the signed-in user",
"adminConsentDisplayName": "Have full access to the Todo List service",
"id": "b69ee3c9-c40d-4f2a-ac80-961cd1534e40",
"isEnabled": true,
"type": "User",
"userConsentDescription": "Allow the application full access to the todo service on your behalf",
"userConsentDisplayName": "Have full access to the todo service",
"value": "user_impersonation"
}
],
然后我们需要将具有正确权限的Web应用程序分配为Microsoft构建服务,如下图所示:
最后一步是site1,site2,site3需要通过分析访问令牌中的范围来验证请求是否具有访问资源的权限。
答案 1 :(得分:0)
为了管理用户授权,您应该实现角色基本访问控制,在此链接中,您将找到使用Azure AD https://github.com/Azure-Samples/active-directory-dotnet-webapp-roleclaims
的示例