Microsoft MVP성태의 닷넷 이야기
[CardSpace 관련 질문] 정리해 좋으신 글 잘 보았습니다. [링크 복사], [링크+제목 복사],
조회: 15869
글쓴 사람
이호정 (mathlead at magicn.com)
홈페이지
첨부 파일
 

먼저 깔끔한 사이트에 깜짝 놀랐습니다. (첨엔 제 Visual Studio가 뜬 줄 알았다는 ^^a;)
CardSpace 관련 자료를 제대로 정리해서 올려놓으신 덕에 아주 잘 공부하고 있습니다.
다만 여기저기 문서를 뒤적거려도 풀리지 않는 부분이 있어서 이렇게 질문을 올리게 되었습니다.

1. Managed Card의 경우 Claim이 특정 값을 가지지 않고, XRI로 indicating하는 것 같은데요.
이 경우, 모든 Claim은 무조건 XRI indicator 형태여야 하는 것일까요? 예를 들면,

예) 이름 : 호정, 나이 : 31, 주소 : www.sysnet.pe.kr/address

이런식으로 일정 Claim만 IDP(Identity Provider)에서 관리를 할 수도 있는 것일까요?

2. Managed Card의 경우 Service Providerd에 제출하려는 카드의 주소 Claim이 위와 같은 경우
www.sysnet.pe.kr/address에서 주소를 불러와야할텐데, 그렇다면 www.sysnet.pe.kr/address로의
인증이 필요할텐데 이부분은 어떻게 동작을 할지...

3. infocard.pingidentity.com 사이트에서의 예를 보면, 사이트 로그인을 self-issued card와
managed-card 양쪽을 사용하여 가능하도록 했는데, 회원가입시 self-issued card 제출과 로그인시
managed-card 제출을 생각하고 있었는데 그게 아니네요. 이런 경우 카드의 PPID를 통해
로그인을 지원하는 것인가요?

이상입니다. 아이쿠 너무 죄송합니다. 초면에 질문이 너무 많았습니다.
CardSpace 쪽에 관심이 있어 공부하다 보니 발생하는 문제랄까요? ^^a;;;;
흠... 어쨌든 정성태님의 sysnet.... 제게는 서광입니닷... ㅋㅎㅎㅎ








[최초 등록일: ]
[최종 수정일: 8/30/2007]


비밀번호

댓글 작성자
 



2007-08-29 05시54분
언급하신 단어들로 보아, OpenID 측을 알고 계신 듯합니다. 저는 그 분야에 대해 생소하기 때문에 아래의 답변에서 용어에 대한 불일치가 있을 수 있음을 감안해 주십시오. ^^

1.
Self-issued card와 Managed card 종류에 상관없이 xri는 사용되지 않습니다. 단지, RP가 요구하는 Claim set에 대해 사용자 PC에 설치된 Managed Card 안에 지정된 IP(Identity Provider)가 구현한 STS 주소로 Claim 목록을 전송하게 됩니다. STS는 해당 Claim과 요청되어진 Token Type에 기반해서 (이전에 사용자가 보관해 두었던) 값으로 구성된 Token을 반환해 주게 됩니다.

IP는 관리할 Claim 들을 임의로 가질 수 있으며, 사용자는 그 정보 중에 필요한 수준만큼 입력해서 보관해 둘 수 있습니다. 물론, RP에 의해서 required로 지정된 claim 정보에 대해서는 필수로 입력을 했어야겠지만.

2.
이 부분의 질문이 명확하게 이해가 되지 않습니다. 아무래도 www.sysnet.pe.kr/address 라는 것을 XRI라고 생각하시는 듯한데요. 각각의 claim에 대해서 IP는 값을 가지고 있을 뿐, 그것을 다시 XRI로 여겨서 정보를 가져오는 동작은 하지 않습니다.

3.
infocard.pingidentity.com 사이트는 접속이 안 되는군요. ^^
self-issued card와 managed card 모두 동일한 "신원"으로 인증이 이뤄지나요? 만약 그렇다면 self-issued card의 PPID 값을 기반으로 managed card를 만들었다고 봐야 할 것 같습니다. 참고로, PPID 하나만으로는 안전하지 않습니다. 그 이유에 대해서는 다음의 토픽을 참고하십시오.

자체 발행 정보 카드에서 보안 토큰을 위한 장기간용 키를 찾으려면 어떻게 해야 합니까?
; http://www.microsoft.com/korea/msdn/msdnmag/issues/06/10/SecurityBriefs/default.aspx
정성태
2007-08-29 05시54분
답변 해주신 내용 잘 봤습니다.
읽기 전에 이리저리 찾아보고 이해한 내용과 거의 일치하는 군요. (내심 뿌듯해 하고 있습니다. ㅎㅎ)

흠 연결되지 않는 사이트는 내부의 링크를 누르시면, 동작하구요. 거기보다는 Higgins에서 publishing한
데모사이트가 훨씬 깔끔하고 좋네요.

https://wag.bandit-project.org/BanditIdP/index.jsp

주소는 위와 같구요. CardSpace 지원하는 데모 사이트 입니다. ^_^
아직 아리송한 것이 STS는 여러 IDP를 가질 수 있느냐는 것인데, 흠흠흠... 한 번 잘 찾아봐야겠습니다.
2. 번의 경우 제가 indicator와 locator를 좀 헤깔렸네요.

훌륭한 답변 감사합니다. ^_^ 건승을 기원할께요~~~
이호정
2007-08-29 05시54분
사실 STS는 만들기 나름일 것 같습니다. IDP들과 STS의 관계만 맺어진다면 못 가질 것이 없겠지요.

Managed Card 발행에 대한 Microsoft 예제 실습 (2) - STS 구현
; https://www.sysnet.pe.kr/2/0/385

위의 토픽에서, [STS 빌드 및 실행] 절을 보면, GetTokenAttributes라는 코드가 있습니다. RP로는 그 부분에서 채워진 값들이 보내집니다. 즉, 해당 코드에서 채워지는 claim의 값들이 다른 IDP에서 조회해 온다고 해서 이상할 것은 없습니다.

다시 지난번 질문을 읽어보니, 예전 2번 질문이 위의 것과 비슷한 내용으로 이해가 되는데요. 그렇게 되면 STS 서비스 프로그램과 원격지 IDP 간에 인증은 어떻게 동작을 할 것인지를 물으신 것으로 이해가 됩니다. 다소 뻔한 시나리오지만, ^^ 이 부분은 일반 B2B 시나리오처럼 생각하셔도 무리가 없을 듯 싶습니다. 별도의 (AD 같은 경우에 ADFS를 구현하는 것처럼) 트러스트 관계를 맺는 식도 있을 것입니다.

근본적으로 살펴보면, cardspace도 여러 가지 Identity 문제를 해결하려고 시도한 결과에 불과할 뿐이죠. 즉, 2-factor 인증을 도입한 여러 가지 인증 방식 중의 하나일 것입니다. 그에 비춰서 볼 때, STS와 IDP들이 어떻게 서로를 인증하느냐는 수많은 방법 중의 하나를 택하는 것이라고 생각됩니다.

이번에도, 역시나 제가 질문을 잘 이해한 건지 걱정이 되는군요. ^^

그나저나... 이 분야로 한 번 일을 진행해 봐야 저도 좀 뭔가 확실히 답변을 드릴 수 있을 텐데... 그냥 머릿속으로만 알고 적용을 해본 적이 없어서 맴돌고만 있습니다. ^^
정성태
2007-08-29 05시54분
재답변 해주신 내용 맞는 것 같습니다.
사실 심증은 있으나 물증이 없어서, 하나의 STS가 여러 IDP를 가질 수 있는지 궁금했었는데
https://sts.labs.live.com/
의 내용과 다른 문서들의 정보를 조합하건데,
걍 IDP에서 STS로 Certification만 준다면 trust는 될 터이니
STS가 Discovery 역할도 할 수 있는 것 같습니다.
아.. 이제 하는 일의 실마리가 나름 풀리고 있답니다. ㅠ_ㅠ ㅎㅎㅎ

그나저나 참으로 관련분야에서 박학다식하신 것 같습니다.
저희 같은 질문자에게는 가뭄의 단비 같은 분이시네요. 다시 한 번 감사드립니다. ^_^
이호정

... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5575베라11/23/202114004event handler 관련 문의 [2]
5574박원웅11/22/202114719닷넷 프레임워크 산출물의 배포시 해당 환경에 프레임워크 버전이 설치되어 있지 않는 경우를 고려한 배포방법은? [3]
5573mijin11/21/202113565System.NullReferenceException 에 대한 질문 [1]
5572김현진11/21/202113600C# list.Clear() 호출에 대한 문의 드립니다. [4]
5571한예지 donator11/18/202113612무설치 프로그램 원리가 궁금합니다. [2]
5570초보11/16/202114182주식데이터 초당 수신 건수를 구하고 있는데 처리속도가 느려서요 [2]
5569카짜프로...11/14/202115659381페이지 UTC에대한 언급이 그리니치 천문대 시간으로 되어있는게 맞나요? [1]
5568카짜프로...11/14/202115605그림 5.20, 그림 5.22 언급 오류 [1]
5567Edun11/2/202113822쿼리문을 코드로 어떻게 처리할 수 있을까요? [2]
5566민성10/26/202113322Linq에 관해서 [1]
5565pass...10/25/202114541wpf에서 Cefsharp를 AnyCPU로 작업 했는데 실행이 되지 않습니다. [4]
5564초보10/21/202112797오버라이드 관련 질문드립니다 [2]
5562서지훈10/20/202112741win32 api 문의 드립니다. (EnableMenuItem) [5]
5561Edun10/15/202113956도와주세요!! 팝업 띄우는 더블클릭 이벤트!! 부탁드립니다 ㅠㅠ [4]파일 다운로드1
5560Edun10/13/202114091C#초보자 개념이해 도와주세요!! [4]
5559최가운10/5/202114821C# debugging 중에 Thread Pool Worker들이 사라지는데요 [3]
5558옥코드9/29/202115157안녕하세요! EntityFramework Linq 질문 드리겠습니다. [4]
5557임기성9/16/202114826웹 사이트(IIS)가 오류로 인하여 빈번하게 죽는 이슈 문의 [1]
5556hjlee9/13/202113764visual studio 설치 없이 csi.exe (C# interactive) tool을 설치할 수 있을까요? [2]
5555이성열 donator9/2/202113533C# 런타임(Reflection)에서 소스코드에 입력한 함수설명(Summary)을 가져올 수 있을까요? [3]
5554농상9/2/202115000enum 원소값이 중복인 경우 출력 [4]
5553shdt...8/31/202112943제너릭을 new로 할당했는데 null인 경우가 존재하나요? [1]
5552hjsh...8/30/202113598C# 폼 - 마우스가 다른 버튼 위를 움직일 때도 폼의 페인트핸들러가 호출되는 것이 맞나요? [2]
5551하나다라마8/27/202113163뽀모도로 타이머 개선사항 [1]
5550하영8/27/202116710SqlDataReader 관련 질문입니다. [8]
5549책 감사...8/23/202118847C# 9.0 책 오타 [1]
... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...