2017-03-14 1 views
0

하늘빛에서 내 응용 프로그램에 대한 그룹을 통해 역할 기반 액세스를 설정하려고합니다. 나는 다음 기사 (미안 미안 코드로 링크를 게시, 하나 이상의 링크를 게시 할 수 없습니다)을 따라했습니다. 그러나 내 애플 리케이션은 어떤 그룹 주장을받지 않습니다.Azure AD가 그룹 클레임을 표시하지 않습니다.

https://www.simple-talk.com/cloud/security-and-compliance/azure-active-directory-part-4-group-claims/ 

http://www.dushyantgill.com/blog/2014/12/10/roles-based-access-control-in-cloud-applications-using-azure-ad/ 

내가 그렇게 한 것을 지금까지

"appId": "d754a979-689d-45f8-8c63-983de55840da" 
"appRoles": [ 
    { 
     "allowedMemberTypes": [ 
     "User" 
     ], 
     "displayName": "Manager", 
     "id": "1e06dae5-467a-40cf-a9a6-14baf3969472", 
     "isEnabled": true, 
     "description": "Manages", 
     "value": "Manager" 
    }, 
    { 
     "allowedMemberTypes": [ 
     "User" 
     ], 
     "displayName": "Issuer", 
     "id": "da85f458-720d-4c09-861f-92f5c465ee3e", 
     "isEnabled": true, 
     "description": "Issues", 
     "value": "Issuer" 
    }, 
    { 
     "allowedMemberTypes": [ 
     "User" 
     ], 
     "displayName": "Supervisor", 
     "id": "d64807d4-6e12-4637-a049-2a61b250507b", 
     "isEnabled": true, 
     "description": "Can perform any function", 
     "value": "Supervisor" 
    } 
    ], 
    "availableToOtherTenants": false, 
    "displayName": "traffic", 
    "errorUrl": null, 
    "groupMembershipClaims": "SecurityGroup", 
    "homepage": "https://myapp.ca", 
    "identifierUris": [ 
    "https://myapp.azurewebsites.net/" 
    ], 

또한 추가 관련 그룹이 푸른에 앱 매니페스트 파일 (그룹이 적어도 하나의 사용자가 포함되어 있다고 가정) Groups Assignment on Azure

내 앱에서 그룹 클레임을받지 못한다. 다음 코드는 항상 0이됩니다. 어떤 아이디어? 미리 감사드립니다. 응용 프로그램의 매니페스트에서 SecurityGroup를 지정하기 때문에

var claims = ClaimsPrincipal.Current.Claims.Where(c => c.Type == "groups"); 

      Debug.Print("Total Group Claims in HomeController #### "+claims.Count()); 

      foreach (Claim c in claims) 
      { 
       Debug.Print("%%%%%%%% " + c.Value + " %%% VALUETYPE %%% " + c.Type); 
      } 

답변

0

문제가 해결되었습니다. 나는 잘못된 앱 프로파일을 짖고 있었다. 내 광고 (샌드 박스, 테스트 등)에 등록 된 수많은 앱이 있습니다. 내가 잘못된 프로파일을 편집하고 있었다는 것을 알게되었습니다. 내 문제에서 언급 한 단계는 효과가 있습니다. 감사합니다 @ Fee Xue - 시간과 도움을 주신 MSFT.

0

의 푸른 광고는 같은 유형의 그룹 클레임을 실행합니다. SecurityGroupAll으로 변경하면 Azure AD에서 모든 종류의 그룹 클레임을 발행 할 수 있습니다.

또한 그룹 수 제한 (here 참조)이 있으므로 사용자가 150 개 미만인 그룹의 구성원인지 확인해야합니다.

그리고 사용자가 로그인 한 웹 앱에 그룹이 지정되어 있는지 확인하십시오. 코드 샘플 active-directory-dotnet-webapp-groupclaims을 참조하여 그룹 클레임을 표시 할 수 있습니다.

+0

감사합니다. Fei Xue. 이미 모든 단계를 시도하고 검증했습니다. 작동하지 않습니다 :(뭔가를 놓치고 있는지 확실하지 않은 경우 ... 내 응용 프로그램을 Azure에 배포 한 이후로 관련된 추가 단계가있는 경우 – Dev

+0

Azure에 배포하면이 동작에 아무런 영향을주지 않으며 다른 추가 단계는 없습니다. id_token에서 그룹 클레임을 발행하십시오. [Active-Directory-Dotnet-WebApp-Groupclaims] (https://github.com/Azure-Samples/active-directory-dotnet-webapp-groupclaims)를 따라 테스트 해 보시기 바랍니다. 처음부터 잘 작동 할 것입니다. –