2011-07-01 6 views
6

그래서 SO, 많은 오픈 ID 공급자에 의존하여 사용자 인증을 제공 할 것이고 자신의 인증 방법을 사용할 것입니다. 하지만 아직 개발 단계에 있으며 실제 OpenID 제공 업체와 협력하고 싶지는 않습니다. 실제 사용자를 에뮬레이션하기 위해 웹 사이트 (TDD 제외)에서 사용자와 활동을 테스트하는 데 사용할 수있는 접근 방법은 무엇입니까? 실제로 오픈 ID 제공자를 사용합니다.테스트 목적으로 가짜 오픈 ID 공급자

현재 사용자가 테스트 목적 및 단위 테스트 코드 용이기 때문에 실제 OpenID 서버로 사용자를 자동 전송할 필요가 없습니다 (프로덕션 모드로 이동할 때).

나는 사용자를 다루기 위해 하이라이트로 추상화 된 방식을 제공하는 사용자 서비스 계층을 필요로하므로 실제 오픈 ID 제공자로의 이전이 원활하게 이루어질 수 있으며 이미 내 로직에 영향을 미치지 않도록해야한다. 작성된 코드. C# .NET을 사용 4

, ASP.Net MVC 3, Ninject에

답변

6

DotNetOpenAuth은 OpenID의 서버 및 클라이언트 부분을 모두 제공하며 로컬 테스트를 위해 자신의 OpenID 공급자를 실행하는 데 사용할 수 있습니다. 공급자 지원이 라이브러리에 포함와

  • 사이트 회원들에게 자신의에서 OpenID를주십시오.

  • 신뢰할 수있는 파티 및 제공 업체 웹 사이트에서는 어떻게하는지 보여줍니다.

+2

특히, dotnetopenauth-tools 다운로드에는 RP 개발/테스트에 완벽한 "OpenIdOfflineProvider"가 포함되어 있습니다. –

3

단순히 다양한 조직과 사용자로 내 테스트 ID를 등록합니다. 나는 그걸 잘못 본 것이 없다. 나는 다양한 반응과 그 차이점을 보게된다.

openid 소비자를 코딩하는 것이 매우 쉽다는 것을 알았습니다. 응답 순서를 이해하면됩니다. 코딩을 시작하기 전에 이해를 돕기 위해 UML 시퀀스 다이어그램을 그립니다. openId를 위조 할 필요가 없습니다. 그렇지 않으면 openid 서버를 직접 채찍질하십시오.

1

귀하의 서비스는 오픈 ID에 의존해서는 안된다. OpenID 플러그를 인증 모듈에 연결하여 로컬 사용자 보안 주체를 제공하십시오. 개발 중에는 인증 모듈이 원하는 사용 권한을 가진 가짜 사용자 보안 주체를 반환하도록 할 수 있습니다.

베타 환경에서는 OpenID를 켜고 모든 OpenID 공급자의 테스트 계정을 사용할 수 있습니다. 개발 단계에서 로그인하면 모든 개발자가 느려집니다. 인증 버그 또는 인터넷 중단으로 인해 모든 사람의 생산성이 저하됩니다.

+0

+1'auth' 모듈을 어디에서 찾을 수 있습니까? DotNetOpenAuth에 속해 있습니까? –

관련 문제