문제

그래서 저는 현재 OpenID 제공 업체를 만들려고 노력하고 있습니다. Atlassian의 군중과 WSO2 Identity Server의 2 개의 Java 기반 OpenID 서버 패키지를 사용해 보았습니다. 이제 내 구현에서 보안은 필수품입니다. 즉, SSL을 사용하고 HTTPS 기반 OpenID를 갖는 것을 의미합니다. 이제 WSO2와 군중 모두 많은 사이트가 제공된 OpenID와 함께 작동하지 않습니다. 테스트 된 20 개 사이트 중 8 개 사이트가 군중으로 실패했으며 10 개는 WSO2로 실패했습니다. 이 높은 실패율은 실제로 허용되지 않습니다. 문제가있는 거의 모든 사이트는 OpenID 엔드 포인트를 찾을 수 없다고 주장합니다.

SSL없이 OpenID를 사용했을 때 (따라서 HTTP 기반 OpenID) 갑자기 사이트가 훨씬 더 준수되었으며 그 중 2 개만 실패했습니다. AUSCERT의 인증서를 사용하고 있으므로 문제는 자체 서명 된 인증서 때문이 아닙니다.

처음에 나는 이것이 단순히 HTTPS 기반 OpenID를 받아들이지 않는 많은 수의 RPS가있는 문제라고 생각했다. 나는 Verisign의 HTTPS 기반 OpenID로 실패한 것과 같은 사이트에 로그인을 시도했지만 효과가있었습니다. WSO2와 군중 모두를 자세히 살펴보면 나는 OpenID 2.0 사양에 완전히 부합하지 않았다는 것을 알았습니다. 특히 Yadis Discovery의 XRDS 문서에 대한 링크를 제공하지 않았습니다. 내 문제는 사이트가 내가 제공하는 URL에서 OpenID 엔드 포인트를 발견 할 수 없다는 것입니다. SSL을 사용하지 않을 때 HTML 기반 발견이 충분하다는 점을 제외하고는 관련이있는 것 같습니다.

내 문제가 실제로 어디에 있는지에 대한 통찰력이 있습니까? 누락 된 XRDS 문서는 관련이 있어야하는 것처럼 보이지만 빨간 청어 일 수 있습니다. 잘 문서화 된 군중 또는 WSO2에 대한 좋은 대안을 알고 있다면 사양에 잘 작동하며 (상대적으로) 구성하기 쉽다면 알아두면 좋을 것입니다!

도움이 되었습니까?

해결책

한 가지는 일부 제공 업체의 SSL 인증서가 일부 RPS에 의해 권위있는 것으로 간주되는 루트 당국에 의해 서명되지 않는다는 것입니다. 모든 RPS가 신뢰하는 인증서에서 인증서를 받으십시오.

.NET이 제공자를위한 옵션 인 경우 무료 및 오픈 소스를 확인하십시오. dotnetopenauth 자신을 호스팅 할 수 있고 다음과 같은 일부 주요 작전에서 사용하는 도서관 내 공간 그리고 netidme.com 그리고 기타. OpenID 2.0의 구현은 완전하고 미국 정부 ICAM OpenID 2.0 프로파일을 지원하며 많은 상호 운용성, 보안 및 규정 준수 테스트에 사용되었으며 OpenID 1.1 및 2.0 RPS와 함께 작동하므로 가질 가능성이 높습니다. 많은/모든 RPS와의 상호 운용성이 우수합니다. 그것은 많은 것들이 있습니다 추가 보안 기능 당신이 말한대로 HTTPS를 요구하는 것과 같이 켜질 수 있습니다.

(전체 공개 : 나는 dotnetopenauth를 썼습니다.)

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