Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
부모글 보이기/감추기
(연관된 글이 1개 있습니다.)

2. "Windows CardSpace"와 "인증서 서비스"의 만남


이미, 이전에 제가 "개인 발행 카드에 대한 Microsoft 예제 실습 "을 통해서 개념을 익힐 수 있는 길을 열어드렸지요. 이번에는 그 예제를 현실에 맞게 조금 수정해 보겠습니다. 그렇다고 많이 수정할 생각은 없고, 단지 인증서 부분에 대한 것만을 다소 바꿔 보겠습니다.

여러분들 중에 (저를 포함해서) 개인적으로 가용한 공인 기관으로부터 받은 "서버 인증서"를 가지신 분이 거의 없을 거라 생각하기 때문에, 이번 토픽을 실습하기 위해서는 별도로 여러분들만의 "인증서 서비스"를 구축해 놓으셔야 합니다. 다음의 토픽을 참고해서 이번 기회에 인증서 서비스를 설치해 보시기 바랍니다.

개발 환경 구성: 18.1 윈도우즈 인증서 서비스 설치 
; https://www.sysnet.pe.kr/2/0/354


준비를 마치셨으면, 이제는 "개인 발행 카드에 대한 Microsoft 예제 실습"에서 살펴본 예제를 실제 인증서 서비스를 기반으로 하는 예제로 재구성해 보겠습니다.



이번 토픽은 아래와 같은 사전 준비 작업이 필요합니다.

1. "개인 발행 카드에 대한 Microsoft 예제 실습"에서 다룬 실습 환경
2. 윈도우즈 인증서 서비스 설치

그럼, 이제 기존 예제에서 인증서 부분을 떼어내 볼까요? ^^

1. 설치된 "Adatum" 및 그 하위 인증서를 서버에서 모두 삭제합니다. 이를 위해 "C:\Net30\Cardspace\scripts" 폴더에 있는 "Remove-certificates.vbs" 파일을 실행시킵니다.

2. IIS 관리자의 "Defult Web Site" 속성창에서 "Directory Security" 탭으로 이동한 후, "Server Certificate..." 버튼을 눌러서 "Remove the current certificate"를 선택하여 이전 인증서로 할당된 것을 제거합니다.

3. 예제 폴더를 한번 정리해 볼까요? 이젠 인증서 관련한 폴더가 필요없기 때문에 IIS 관리자에서 "crldata" 가상 폴더를 제거하고, "C:\Net30\Cardspace\certificates" 폴더와 "C:\Net30\Cardspace\website\crldata" 폴더를 삭제해 버립니다. (물론, 삭제 안하셔도 됩니다.)

4. 이제 여러분들의 "윈도우즈 인증서 서비스"로부터 "Default Web Site"를 위한 인증서를 할당받습니다. 자세한 방법은 다음의 토픽을 참고하십시오.

개발 환경 구성: 18.2. 웹 사이트에 SSL을 적용 
; https://www.sysnet.pe.kr/2/0/372

5. 위의 과정으로 이제 "웹 서버" 측의 준비는 모두 완료되었습니다. 이제 클라이언트 측 입장에서 "Windows CardSpace"를 테스트해 보실 수 있는데요. 우선, 다음의 토픽 2개를 먼저 읽어 주시기 바랍니다.

개발 환경 구성: 18.3.1 사용자 입장에서의 HTTPS 접근 (1) 
; https://www.sysnet.pe.kr/2/0/373

개발 환경 구성: 18.3.2 사용자 입장에서의 HTTPS 접근 (2) 
; https://www.sysnet.pe.kr/2/0/374

위의 토픽을 읽으신후, 준비가 되었다면 다음과 같은 주소로 예제 사이트를 방문해 봅니다.

Sample Exercise 1 : https://sedona2/CardSpace/Sample1.htm
Sample Exercise 2 : https://sedona2/CardSpace/Sample2.htm
Sample Exercise 3 : https://sedona2/CardSpace/Sample3.htm
Sample Exercise 4 : https://sedona2/CardSpace/Sample4.htm

6. 기존 예제에서는 "www.fabrikam.com"으로 방문을 했었고, 이제는 "sedona2"로 방문을 하기 때문에 아래와 같이 해당 사이트에 대한 카드는 비어 있으며 새로 만들어야 되는 상황이 됩니다. 이후의 상황은 "개인 발행 카드에 대한 Microsoft 예제 실습"에서 이미 설명했으므로 생략하겠습니다. 한 가지 특이한 점을 언급한다면, 이 과정에서 이전에 실습한 "www.fabrikam.com"을 위해 생성했던 카드를 "필수 필드" 조건만 만족한다면 "sedona2" 사이트에도 그대로 보낼 수 있다는 것입니다. 즉, 기존 카드를 할당하는 것인데, 이렇게 되니 카드 구성을 잘만 한다면 단 하나의 카드로 여러 사이트를 로그인 하는데 사용할 수 있게 됩니다.

새로운 서버 인증서에 대한 카드 발급



사실, 이번 토픽은 따지고 보면 큰 의미가 있는 설명을 담고 있지는 않습니다. 단지, 그동안의 토픽을 엮어 놓은 정도일 뿐인데 그래도 가끔은 이런 "통합 작업"도 의미가 있지 않을까 생각합니다. 아무튼, 도움이 되셨길 바랍니다.

다음 토픽은, "관리 카드"를 발행하는 방법에 대해 이야기해 보겠습니다.


[2006-10-27 내용추가]

실제 테스트해 볼 수 있는 예제 사이트가 하나 있습니다. 지금 다음의 사이트에 방문해 보십시오.

Casa de Hambone
; https://www.casadehambone.com/Login.aspx

"Sign in with Windows CardSpace" 버튼이 있는데요. 그 버튼을 눌러주시면 됩니다. 여러분들이 위에서 테스트 삼아서 받아두었던 카드와 동일하게 필수 필드를 지정해 놓았기 때문에 이 사이트에도 그 카드를 동일하게 보내서 인증을 받을 수가 있습니다. 조만간 제 홈페이지에도, "윈도우즈 카드스페이스 로그인" 버튼이 이와 같은 식으로 구현될 것입니다. ^^


[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/27/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 121  122  123  124  125  126  127  128  129  130  [131]  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
1780정성태10/15/201424152오류 유형: 249. The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
1779정성태10/15/201419656오류 유형: 248. Active Directory에서 OU가 지워지지 않는 경우
1778정성태10/10/201418095오류 유형: 247. The Netlogon service could not create server share C:\Windows\SYSVOL\sysvol\[도메인명]\SCRIPTS.
1777정성태10/10/201421207오류 유형: 246. The processing of Group Policy failed. Windows attempted to read the file \\[도메인]\sysvol\[도메인]\Policies\{...GUID...}\gpt.ini
1776정성태10/10/201418219오류 유형: 245. 이벤트 로그 - Name resolution for the name _ldap._tcp.dc._msdcs.[도메인명]. timed out after none of the configured DNS servers responded.
1775정성태10/9/201419367오류 유형: 244. Visual Studio 디버깅 (2) - Unable to break execution. This process is not currently executing the type of code that you selected to debug.
1774정성태10/9/201426565개발 환경 구성: 246. IIS 작업자 프로세스의 20분 자동 재생(Recycle)을 끄는 방법
1773정성태10/8/201429747.NET Framework: 471. 웹 브라우저로 다운로드가 되는 파일을 왜 C# 코드로 하면 안되는 걸까요? [1]
1772정성태10/3/201418514.NET Framework: 470. C# 3.0의 기본 인자(default parameter)가 .NET 1.1/2.0에서도 실행될까? [3]
1771정성태10/2/201428035개발 환경 구성: 245. 실행된 프로세스(EXE)의 명령행 인자를 확인하고 싶다면 - Sysmon [4]
1770정성태10/2/201421664개발 환경 구성: 244. 매크로 정의를 이용해 파일 하나로 C++과 C#에서 공유하는 방법 [1]파일 다운로드1
1769정성태10/1/201424077개발 환경 구성: 243. Scala 개발 환경 구성(JVM, 닷넷) [1]
1768정성태10/1/201419484개발 환경 구성: 242. 배치 파일에서 Thread.Sleep 효과를 주는 방법 [5]
1767정성태10/1/201424602VS.NET IDE: 94. Visual Studio 2012/2013에서의 매크로 구현 - Visual Commander [2]
1766정성태10/1/201422419개발 환경 구성: 241. 책 "프로그래밍 클로저: Lisp"을 읽고 나서. [1]
1765정성태9/30/201425989.NET Framework: 469. Unity3d에서 transform을 변수에 할당해 사용하는 특별한 이유가 있을까요?
1764정성태9/30/201422248오류 유형: 243. 파일 삭제가 안 되는 경우 - The action can't be comleted because the file is open in System
1763정성태9/30/201423842.NET Framework: 468. PDB 파일을 연동해 소스 코드 라인 정보를 알아내는 방법파일 다운로드1
1762정성태9/30/201424537.NET Framework: 467. 닷넷에서 EIP/RIP 레지스터 값을 구하는 방법 [1]파일 다운로드1
1761정성태9/29/201421539.NET Framework: 466. 윈도우 운영체제의 보안 그룹 이름 및 설명 문자열을 바꾸는 방법파일 다운로드1
1760정성태9/28/201419800.NET Framework: 465. ICorProfilerInfo::GetILToNativeMapping 메서드가 0x80131358을 반환하는 경우
1759정성태9/27/201430962개발 환경 구성: 240. Visual C++ / x64 환경에서 inline-assembly를 매크로 어셈블리로 대체하는 방법파일 다운로드1
1758정성태9/23/201437803개발 환경 구성: 239. 원격 데스크톱 접속(RDP)을 기존의 콘솔 모드처럼 사용하는 방법 [1]
1757정성태9/23/201418376오류 유형: 242. Lync로 모임 참여 시 소리만 들리지 않는 경우 - 두 번째 이야기
1756정성태9/23/201427367기타: 48. NVidia 제품의 과다한 디스크 사용 [2]
1755정성태9/22/201434172오류 유형: 241. Unity Web Player를 설치해도 여전히 설치하라는 화면이 나오는 경우 [4]
... 121  122  123  124  125  126  127  128  129  130  [131]  132  133  134  135  ...