2013-07-23 7 views
0

DNOA 라이브러리를 사용하여 Visual Studio에서 공급자와 신뢰 당사자를 만들었고 제대로 작동했습니다. 그런 다음 공급자를 서버로 이동하고 로컬 컴퓨터의 신뢰 당사자로부터 테스트하려고했습니다. RP가 'No OpenID endpoint found'오류를 표시합니다.로컬 컴퓨터의 신뢰 당사자가 서버에서 OpenID 공급자를 테스트 할 수 있습니까? - DotNetOpenAuth

Web.config에 뭔가 빠져 있다고 생각합니다. WhitelistHost 속성에서 제공자에게 누군가의 요청을 수락하도록해야하는 와일드 카드 "*"를 추가했습니다 (테스트 목적). 내가 모르는 다른 것이 있습니까? 나는 그 주제에 비교적 새로운 것이다.

의 Web.config -

<!-- The uri section is necessary to turn on .NET 3.5 support for IDN (international domain names), 
    which is necessary for OpenID urls with unicode characters in the domain/host name. 
    It is also required to put the Uri class into RFC 3986 escaping mode, which OpenID and OAuth require. --> 
<uri> 
    <idn enabled="All"/> 
    <iriParsing enabled="true"/> 
</uri> 

<!-- this is an optional configuration section where aspects of DotNetOpenAuth can be customized --> 
<dotNetOpenAuth> 
    <openid> 
     <provider> 
      <security requireSsl="false" /> 
      <behaviors> 
       <!-- Behaviors activate themselves automatically for individual matching requests. 
      The first one in this list to match an incoming request "owns" the request. If no 
      profile matches, the default behavior is assumed. --> 
       <!--<add type="DotNetOpenAuth.OpenId.Provider.Behaviors.PpidGeneration, DotNetOpenAuth"/>--> 
      </behaviors> 
     </provider> 
    </openid> 
    <messaging> 
     <untrustedWebRequest> 
      <whitelistHosts> 
       <!-- since this is a sample, and will often be used with localhost --> 
       <add name="localhost"/> 
       <add name="*"/> 
      </whitelistHosts> 
     </untrustedWebRequest> 
    </messaging> 
    <!-- Allow DotNetOpenAuth to publish usage statistics to library authors to improve the library. --> 
    <reporting enabled="true" /> 
</dotNetOpenAuth> 

<appSettings> 
    <add key="whitelistedRealms" value="http://localhost:39165/;http://othertrustedrealm/;http://localhost/;http://localhost:4856/"/> 
    <!-- Set ImplicitAuth to true when using Windows auth, or false for FormsAuthentication --> 
    <add key="ImplicitAuth" value="true"/> 
</appSettings> 
.... 

편집 : 중요하지만 서버가 SSL을 사용하는지 잘 모르겠습니다.

답변

0

이 질문에 대한 답변을 찾은 적이 있는지 확실하지 않지만 같은 문제가 있습니다. 나는이 문제를 수리 할 수 ​​있었지만 공급자 끝뿐 아니라 신뢰할 수있는 부분에서도 로컬 호스트를 허용 목록에 추가했습니다.

0

당신의 whitelisthosts 구성에 명시되는 시도 -.에 서버의 주소를 넣어이의

짧은는 RP와 ID 서버 모두에 turn on logging. RP에서 프로세스를 단계별로 수행하십시오.

또한 dev PC와 인터넷 사이에 프록시가 있습니까? 그렇다면 RP 코드에이를 통해 통신하는 방법을 알려줘야합니다.