OpenID 위임은 신뢰 당사자에서 어떻게 작동하나요?최근에 사양이 바뀌었나요?

StackOverflow https://stackoverflow.com/questions/826014

  •  05-07-2019
  •  | 
  •  

문제

이 시나리오를 고려하십시오.내 식별자로 사용하는 자체 웹사이트가 있지만 설명된 대로 제3자 OpenID 공급자(내 경우에는 yahoo)를 사용합니다. 여기, stackoverflow 및 sourceforge와 같은 신뢰 당사자(RP) 웹 사이트에 로그인합니다.

그것은 현명한 조치인 것 같았습니다.

  • 나는 OpenID 제공업체에 얽매이지 않습니다. 왜냐하면 Yahoo가 더 이상 서비스를 제공하지 않거나 비용을 청구하기 시작하거나 더 이상 그들을 신뢰하지 않을 경우 고통 없이 제공업체를 변경할 수 있기 때문입니다.
  • 내 서버에 OpenID 공급자를 설치하고 유지 관리하는 데 따른 경제적, 관리적, 보안 부담이 없습니다.

질문

RP는 어떻게 작동하나요?내 이해는 식별자를 사용해야한다는 것입니다 공급자(yahoo)를 인증용으로만 제공하고 사용합니다(식별용이 아님).그 맞습니까?최근에 뭔가 바뀌었나요?확실히 말하자면, 내 신분증은 다음과 같아야 합니다.

http://www.mysite.com/myPreferredUrl

그리고는 아니다

https://me.yahoo.com/myYahooId (위 웹사이트에 설명된 대로 내 웹사이트가 인증을 "리디렉션"하는 곳입니다)

참고 사항

제가 이 질문을 드리는 이유는 현재 상황이 문제가 있는 것 같기 때문입니다(몇 달 전에는 괜찮았습니다).stackoverflow에 로그인을 시도하면 mysite.com URL을 작성하고, 내가 로그인한 Yahoo 웹사이트로 올바르게 "리디렉션"되며, "Stackoverflow를 계속할 것인지" 묻는 메시지가 나타납니다. 예, "리디렉션"되고 stackoverflow 사이트에 "이것은 이전에 본 적이 없는 OpenID입니다"가 표시됩니다. 여기에는 내 Yahoo ID가 표시되고 실제로는 잠겨 있습니다!

버그인가요, 아니면 뭔가 빠졌나요?

추신:제가 이 질문을 어떻게 작성하고 있는지 궁금하시다면 제가 사용하는 많은 컴퓨터 중 하나에 브라우저에 여전히 유효한 쿠키가 있기 때문입니다....

편집하다:아래 Andrew Arnott의 답변은 내 문제를 해결하는 방법을 제안했습니다(예:다른 공급자로 전환).하지만 나는 여전히 몇 가지 세부 사항에 관심이 있습니다.위임과 관련하여 OpenID 1.1에서 2.0으로 변경된 사항은 무엇입니까?사양에서 공급자가 위임을 "중단"하도록 선택한 이유는 무엇입니까?더 많이 설명할수록 답변이 승인될 확률이 높아집니다.

도움이 되었습니까?

해결책

나는 Andrew의 대답이 매우 정확하다고 믿습니다.내가 추가할 수 있는 유일한 것은 v2.0 사양이 어떻게 그렇게 되었는지, 공급자가 위임을 사용하지 않도록 선택할 수 있게 되었는지에 대한 것입니다.동기 부여 중 하나는 사용자가 "yahoo.com"을 입력(또는 Yahoo 버튼 클릭)한 다음 선택한 ID가 서버에서 id_res 응답으로 반환되는 서버 지정 ID 선택이라고 생각합니다.또한 이를 통해 서버는 전송할 ID에 대한 선택권을 제공하거나(Yahoo가 수행함) 각 RP에 고유 식별자를 전송(Google이 수행함)하는 등의 작업을 수행할 수 있습니다.

이는 또한 필요한 모든 정보가 id_res 이는 RP가 자신의 상태를 저장할 필요가 없음을 의미합니다. checkid 응답을 처리하기 위해 요청합니다.실제로 공급자는 id_res RP가 시작하지 않고 RP에 직접 응답합니다. checkid 아예 요청하지 마세요.

v1.x 제공자는 위임이 저녁에 이루어졌을 때 전혀 인식하지 못했습니다.이 디자인은 공급자가 위임을 지원하지 않도록 선택하는 것을 방지했지만 일부 UI 문제도 해결했습니다.위임된 "joesmith.org" ID를 실제로 사용할 때 "joe.coolprovider.com" ID를 제공할지 묻는 메시지가 표시됩니다.

그래서 절충안이 있습니다.위임은 여전히 ​​가능하므로 정말로 위임을 원하는 사용자(이런 대규모 사이트의 사용자 수에 비해 작아질 것임)가 필요한 기능을 제공하는 공급자를 선택할 수 있기를 바랍니다.(즉, 시장이 이를 해결하도록 놔두는 것입니다.)

다른 팁

Yahoo가 OpenID 위임을 지원하지 않는 것 같습니다.즉, StackOverflow 및 기타 RP는 자신의 식별자에 대한 검색을 수행하고 위임 인증 요청을 올바르게 설정할 수 있지만 Yahoo는 다음에서 제공한 식별자 대신 자신의 식별자에 대한 ID 어설션을 보내기로 선택했을 수 있습니다(아마도 사양에 반함). RP.

사양은 OpenID 1.1에서 2.0으로 변경되지 않았습니다.사양은 Yahoo!의 행동을 제안하거나 지지하지 않으며 오직 Yahoo만이 그들의 추론에 대해 권위 있게 논평할 수 있습니다.

StackOverflow 위임은 여전히 ​​작동합니다.야후가 당신을 망친 것 같습니다.인증을 위임할 사람을 변경하여 위임이 제공한 혜택을 활용하는 것이 좋습니다.예를 들어 www.myopenid.com은 위임을 지원합니다.이를 가리키도록 자신의 식별자를 변경하면 다시 예전의 모습으로 StackOverflow에 돌아갈 수 있습니다.:)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top