2012-12-21 3 views
1

나는 이것이 가능할지 모르지만 kbs, 도움말 또는 문서에서 확실한 답을 찾을 수 없습니다.ACS 서비스 신원에 클레임을 추가하는 방법

나는 ACS를 통해 보안 웹 API를 가지고 있습니다. 응용 프로그램은 서비스 ID를 사용하여 액세스를 허용하기 위해 WebAPI를 사용하여 ACS를 통해 인증합니다. 제가하고 싶은 것은 개별 신분을 확인하기 위해 서비스 신분에 대한 주장을 제기하는 것입니다. 예를 들어, 서비스 아이디 (Service Identity) A는 유형 및 ID를 제공하고 서비스 아이덴티티 B는 동일한 클레임 유형에 대해 다른 값을 제공합니다. 그런 다음 WebAPI는 클레임 ​​값을 기반으로 특정 호출을 인증 할 수 있습니다.

현재이 방법은 ACS 포털을 통해 설정된 클레임 값으로 출력 클레임을 사용하여 규칙 그룹을 통해 구현되지만, 규칙 그룹은 의존 응용 프로그램 (My WebAPI)에 액세스하는 모든 서비스 ID에 적용됩니다. 각각 상이한 청구 값을 갖는 서비스 아이덴티티.

모든 통신은 서비스에 대한 서비스이므로 Live/Microsoft Account 또는 Google과 같은 다른 ID 제공 업체가 아니라 ACS를 사용할 계획이었습니다. 그러나 현재 내가 갈 수있는 유일한 결론은 청구 값을 제공하기 위해 자체 STS를 구현하는 것입니다.

개인 시나리오에 대한 설명이 도움이 되었으면 좋겠다. 개별 서비스 ID에 대한 클레임 값을 설정하려면 어떻게해야합니까? 아니면 다른 방식으로해야합니까?

감사

앤드류

+0

추가 소유권 주장을 추가하지 않았습니다. 여전히 유일한 클레임 유형이 있습니다. 단 하나의 ACS 서비스 ID가 지원하는 추가 요구 사항을 추가 할 수 있습니까? 아니면 "이름 지정자"입니까? – user1965207

답변

1

나는 크리스마스/연말 연시를 위해 사무실을 떠나기 직전에이 문제를 해결할 수 있었고 유용하다고 생각하는 다른 사람들을 위해이 문제를 어떻게 해결했는지 알고 싶었습니다.

나는 문제로부터 물러나서 신선한 시각으로 다시 돌아왔다. 내 애플리케이션이 서비스 ID를 기반으로 인증하고 인증이 내 서비스를 호출하는 서비스 사이에 있으므로 인증 할 서비스 ID가 많지 않습니다. 따라서 필자의 요구 사항에 따라 규칙 그룹을 사용하여 제공된 클레임을 기반으로 클레임을 제공 할 수 있습니다. 일단

Create New ACS Rule Group

:

내 윈도우 Azure 액세스 제어 서비스 ID를 모든

는 ACS 포털에서 nameidentifier 청구 ( http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name 식별자) 등 각각의 새로운 서비스 ID에 대해 나는 새로운 규칙 그룹 만들었을 제시 이 새로운 규칙 그룹이 만들어졌으며 아래와 같이 규칙을 추가하기로 결정했습니다. ACS가 내 서비스로 인증 할 토큰을 제공 할 때 InputClaim Issuer가 액세스 제어 서비스라고 선택했습니다. 다음으로, 수신 할 것으로 예상되는 입력 클레임 유형과 If 문에서 확인할 입력 유형을 선택하십시오. 따라서 아래 예제에서 제공 한 nameidentifier 클래임 값이 StackOverflow (예상 한 서비스 ID 이름)이면 ACS가 반환 한 토큰이있는 UK 값을 가진 Country 출력 클레임을 반환하고 싶습니다. 나는 또한 추가 요구 사항을 추가하기 위해 추가 규칙을 추가했다. 이를 통해 해당 서비스 ID에 대한 올바른 클레임 및 값을 반환 할 수있었습니다.

Add ACS Claim Rule

마지막으로 나는 파티 응용 프로그램 의지의 내 목록에 가서 내 신뢰 당사자 응용 프로그램 (내 서비스)를 선택하고 내가 만들어 낸 새로운 규칙 그룹을 선택했습니다.

Select Rule Group(s) for Relying Party Application

이 접근

내 문제를 해결하고 지금 내 나머지 서비스에 제공되는 토큰의 주장을 읽고 제공된 값을 기반으로 의사 결정을 내릴 저를 가능하게했다. 나는 훨씬 더 복잡한 접근법을 찾기 시작했고, 뒤로 물러나서 핵심 ACS 기능으로 나의 요구 사항을 달성 할 수 있다는 요구 사항을 명확히 살펴 보았습니다. 희망이 비슷한 요구 사항을 가진 다른 사람을 도울 수 있기를 바랍니다.

+0

세부 사항 주셔서 감사합니다, 이것은 실제로 거의 동일한 상황으로 날 도와 줬어. – Flangus

2

IIRC appplication가 자신의 토큰과 인증서/SYMM 키 징후를 생성 - 다음 규칙 엔진에 입력되고 그 토큰의 주장을 ...

.하지만 잠시 지났음)

+0

감사! 나는 아마도 내가 잘못된 방향으로 돌아 다니고 있음을 알고 있었고, 이제는이 기사를 통해 일하고있다. http://msdn.microsoft.com/en-us/library/windowsazure/ee706734.aspx 나는 나의 목표를 달성 할 수 있어야한다. - 포인터 주셔서 감사합니다 :) –