ExtremeSwank OpenID Consumer For ASP.Net 2.0

Posted 신선한바람 : 2007.09.03 00:01, Filed under: 개발

.Net으로 OpenID Library를 구현하시거나 찾아보신 분들은 생각보다 구현체가 없다는 사실에 놀랐을 것입니다.

 

이 글을 쓰는 시점으로 가장 많이 사용되는 라이브러리는 JanRain사에서 구현한 JanRain OpenID 라이브러리입니다. 현재 이미 RubyPython과 같은 언어에서 성공적으로 사용 된 바 있고, 6개 이상의 언어로 포팅되어 있으며 Cross Platform을 지원합니다.

 

물론 .Net용 구현체도 있습니다. 다만 개발 초기부터 Cross Platform 지원이 필수였기 때문에 .Net용 구현체는 다른 ASPControl과는 다음과 같은 차이가 있습니다.


1.       Boo 라는 언어로 구현되어 있습니다.

2.       Mono Framework을 사용합니다.

3.       Mono.security라는 Mono 전용 namespace가 사용되었습니다.

 

현재 OpenID스팩은 아직 완벽히 정립된 상태가 아니며 현재도 끊임없이 변경되고 있습니다. 이런 상황에서 순수 .Net이 아닌 Mono로 빌드되어 있고, Boo라는 독특한 언어로 구현되어 있다는 점은 유지보수성에서 마이너스 요소가 될 수 밖에 없습니다. 이런 문제점은 Toy-project처럼 간단한 테스트 프로젝트라면 상관없지만 실제 상용 프로젝트에 바로 적용시키기엔 무리가 있습니다.

 

제가 오늘 소개드릴 라이브러리는 ExtremeSwankOpenID Consumer입니다.

( http://extremeswank.com/aspnet_openid.html 에서 다운로드 하실 수 있습니다.

 

특징으로는 다음과 같습니다.

 

1.       C#ASP.Net으로 구현된 모든 소스가 공개되어 있습니다.

2.       OpenID 1.1 2.0Stateful Stateless 모드를 완벽히 지원합니다.

3.       구현체가 Stateless 만을 위한 Simple ConsumerFull Consumer 두 가지로 나뉘어 있습니다. 이는 실제 동작되는 서버의 성능상의 이점을 가져다 줍니다.

4.       사용하기 쉽도록 UserControl이 구현되어 있습니다.

5.       거의 유일하게 API Documentation이 만들어 져 있습니다. (!!!!!)

 

그럼 간단한 예제를 만들어 보겠습니다.

 

먼저 Visual StudioOpenID라는 이름의 웹 사이트를 생성합니다.
만약 Visual Studio가 없으면 다음 링크에서 WebDeveloper Express버전을 다운받으십시오.  
http://msdn2.microsoft.com/ko-kr/express/aa975050.aspx

 

1.       솔류션 익스플로러에서 우클릭 -> ASP.Net 폴더 추가 -> Bin 을 선택하여 참조 디렉터리를 생성합니다.

2.       Bin디렉토리에서 우클릭 -> 참조추가 -> 찾아보기 를 통해 다운받은 ExtremeSwank.Authentication.OpenID.dll을 추가합니다.

3.       작업중인 웹 디렉토리에 OpenIDControl.ascxOpenIDControl.ascx.cs 파일을 복사합니다.

4.       Default페이지에 추가한 컨트롤을 올려 놓습니다.

 

결과 화면은 다음과 같습니다.


사진을 클릭하시면 원본이미지로 좀 더 자세히 보실 수 있습니다.

사용자 삽입 이미지

Visual Studio 에서 오픈아이디 로그인폼을 만드는 모습

 

실행하면 다음과 같습니다.


사용자 삽입 이미지

웹브라우져에서 확인하는 로그인창

 
사용자 삽입 이미지

myid.net을 통한 로그인 시도

사용자 삽입 이미지

myid.net의 비밀번호 입력 페이지

사용자 삽입 이미지

정상적으로 로그인 된 모습

ExtremeSwank의 라이브러리는 모든 소스가 공개되어 있고 API문서 또한 잘 정리되어 있기 때문에 사용하시는데 크게 어렵지 않을것이라 생각됩니다.

Posted by : 신선한바람

  1. # 2007.10.16 19:33 Delete Reply

    비밀댓글입니다

  2. # Favicon of http://chocolatecoedcouple.net/hot/a-2-leather-jacket BlogIcon a 2 leather jacket 2008.05.23 04:57 신고 Delete Reply

    친구는 너의 현재 위치의 팬이 되었다!

  3. # Favicon of http://yourweirdtaboo.net/dir/t-girls-do-girls BlogIcon t girls do girls 2008.05.23 05:25 신고 Delete Reply

    여기 이것은 뉴스 있다!

Leave a comment

« Previous : 1 : ··· : 8 : 9 : 10 : 11 : 12 : 13 : 14 : 15 : 16 : Next »

Notice

  1. 팀블로그 시작합니다.

Recent Posts

  1. ㅅㄷㄴㅅ
  2. Nullable<T>
  3. [두번째] Javascript를 사용한 rich E..
  4. [첫번째] Javascript를 사용한 rich E..
  5. Webware가 선택한 사이트 #3 - Friend..

Recent Comments

  1. Here a wealth of information here... lora 2013
  2. There’s a lot of information here... ruscopybook.com/history/10_class 2013
  3. 사람은 본질적으로 제가 언급 것이라.. jual jaket online 2012
  4. 내가 아주이 블로그에 대한 즐길입니.. notebook murah 2012
  5. 많은 흥미로운 것들이 내 배우자 그리.. Lawyer Marketing 2011

Recent Trackbacks

  1. contactos con mujeres contactos con mujeres 2012
  2. 소프트뱅크벤처스 포트폴리오 쇼케이.. Blog Marketing bible* 2007
  3. 단순함의 미투데이와 백화점식의 SKT.. 전설의에로팬더 2007
  4. 미투(혹은 플톡) vs. 토씨 가상 시나.. 민노씨.네 2007
  5. Tossi, 클로즈 베타테스트 시작 소식.. TechCabin 2007

Calendar

«   2018/11   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Bookmarks

  1. 신선한바람
  2. onionmen
  3. onionmen 미투데이
  4. 신선한바람 미투데이
  5. 횸피그
  6. 횸피그 미투데이

Site Stats

TOTAL 53,141 HIT
TODAY 0 HIT
YESTERDAY 24 HIT