티스토리 뷰

오픈아이디는 URL(정확히는URI와 해당 Dispatcher조합)로 표현된다는 관점에서 우리는 재밌는 것을 실험해 볼 수가 있습니다. 이 실험에 대한 아이디어는 OpenID 세미나로 방문했던  David Recordon(블로그)으로부터 소개 받은 것입니다.

첫번째 실험은 앵커를 이용한 오픈아이디 사용입니다.

http://coolengineer.idtail.com/
이라는 아이디가 있을 때, 보통 한 페이지에 여러 섹션을 두고 그 섹션을 찾아가기 위해애 앵커라는 표현 방식으로 다음과 같이 사용할 수 있습니다.
http://coolengineer.idtail.com/#2
http://coolengineer.idtail.com/#3
http://coolengineer.idtail.com/#private
http://coolengineer.idtail.com/#public
위 URL은 모두 다른 것을나타내지만, 결국 http://coolengineer.idtail.com/ 을 가져오도록되어있습니다. 일종의 위임(delegation)이 일어나는 것으로 생각할 수 있습니다. (물론 link tag에 의한 위임은 일어나지 않습니다.)

위와같이 로그인시도를 할 경우 RP(Relying Party, Consumer site)에서는 각각을 다른아이디로 인식하게 됩니다. 하지만, IdP 쪽에는같은 아이디로 로그인을 하게 됩니다. 물론 IdP에서도 RP에 어떤 식으로 로그인하고 있는지 #뒤의 정보를 포함한 전체 URL이 전달됩니다. 따라서, 서버쪽 라이브러리가 #뒤의 내용을 무시하고 잘 처리해주어야하는데요, 제가 간단히 테스트한 상황으로, php 라이브러리를 사용하는 idtail.com과 ruby 라이브러리를 사용하는 myid.net은 정상적으로 처리하는것을 보았습니다. java나 .net은 살펴보지 않았습니다. (누가 테스트해서 댓글을 좀.)

두번째 실험은 전체 URL 대신 일부만으로 가능하냐입니다.

즉,
coolengineer.idtail.com#2
coolengineer.idtail.com#me2dayonly
이렇게 앞의 'http://'을 떼고, .com 뒤의 # 앞에 '/'을 빼도 되느냐하는 것입니다. 이것은 클라이언트의 URL 정규화 함수의 기능에 들어 있어야하는것입니다. php 라이브러리에서는 예상대로 잘 되는 군요. (누가 다른 클라이언트 라이브러리에서도 테스트해서 댓글을 좀. 부탁합니다.)

세번째 실헝믄 위임주소에서도 가능한가 입니다.

저와 같이 블로그 주소를 오픈아이디로위임하여 사용하는 것에서 실험해볼 수 있습니다.
http://coolengineer.com/#2
잘 됩니다. 즉, RP에서는 다른 오픈아이디로 인식하는 것을 확인하였습니다. 하지만, 제 블로그의 경우에는, 위임을 http://coolengineer.idtail.com/ 에 하기 때문에, IdP 입장에서는 블로그 주소뒤에 #XXX가 어떤 내용인지 알 수가 없더군요. 만약, IdP에서 #을 기반으로하는 기능 확장을 고려한다면, 주소를 위임받아 로그인하는 사람들에게는 어찌할 수 없어보입니다.

정리하자면...

이 기능을 고려하여 사용할 수 있는 것은, IdP의 입장에서는 여러 Persona에 대해서 URL을 부여할 수가 있으며, 각 URL이 다른 오픈아이디로 인식되게 할 수 있다는 것입니다. 또한 사용자도 IdP가 이런 확장을 지원하지 않아도 #XXX를 통해 달라지는 URL을 통해 많은 OpenID를 만들어낼 수가 있다는 것입니다.


반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/03   »
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
31
글 보관함