2011-03-17 3 views
2

.NET Remoting과 관련하여 IAuthorizeRemotingConnection 인터페이스에 대한 유용한 정보를 찾기 위해 많은 노력을 기울였습니다. 유용한 것은 없습니다.IAuthorizeRemotingConnection .NET Remoting

여기서 많은 문제가 있으므로 "문제 해결 방법"이 아니지만 문제는 IsConnectingIdentityAuthorized 방법에서 ID가 서로 관련되는 방식 중 하나입니다.

.NET Remoting Service가 실행 중이고 최근에 ID를 확인하기 위해 Remoting 서비스에서 사용하는 클래스에 IAuthorizeRemotingConnection 인터페이스를 추가했습니다. 내가 가지고있는 문제는 "우리는 어떤 정체성"을 검증하고 있는가?

ID가 로컬 시스템에서 전달 될 때 IAuthorizeRemotingConnection 메서드로 전달되면 ID를 기록 할 수 있습니다. 나는 신원이 MACHINE \ ASPNET 사용자라고 말할 수 있습니다. Howeeer는 다른 개발 웹 서버에 대해 서비스를 호스팅하는 개발 서버에서 ID를 볼 수 없습니다.

극단적으로, IsConnectingEndPointAuthorized 메서드가 원격 서비스에 의해 호출되는 동안이 문제가 발생하는 것을 로그 할 수 있지만 IsConnectingIdentityAuthorized이 호출되는 것을 결코 볼 수 없습니다.

로컬 시스템에 똑같은 코드 기반을 사용하고 있지만 dev 환경에서 다르게 작동하기 때문에 이것은 매우 이상합니다. 그것에 대해 가장 절망적 인 점은 어떤 정체성이 서비스를 사용하려고 하는지를 말할 수 없다는 것입니다. 그렇다고해도 ideniity가 전혀 호출되지 않았 음을 확인하는 데 사용되는 방법을 볼 수 없습니다.

웹 응용 프로그램 로그에 "로그인이 거부되었습니다"라는 메시지가 나타나는 경우가 있습니다. 나는 우리가 장면 뒤에 어떤 방식으로 "사전 인증"하고 있는지 궁금해하고 있는데, 이것이 실패하기 때문에 우리는 IsConnectingIdentityAuthorized 메서드를 호출하지도 않습니다.

누구나 공유 할 수있는 경험이 있습니까?

추가하기 전에, 그런 식으로 가서 서비스, 나는 오전 계획 "는 WCF를 사용"하지만, 그건 완전히 구현있어 아직 전에 잠시 수 있습니다. 나는 또한 WCF에 관한 정통성 질문을하고있다. 그러나이 리모팅 문제를 해결할 수 있기를 바랍니다.

+0

"로그인 거부"메시지와 함께 전체 예외를 게시 할 수 있습니까? – tobsen

답변

0

SSL에서 작동하는 원격 객체를 가져올 때 이러한 라인을 따라 무엇인가가 발생했습니다. 우리는 신뢰 문제 (caspol 사이트 완전 신뢰를주는)를 해결하는 데 필요한 사용의 모든 구성 요소가 강력한 이름 이었기 때문에, 우리는 그들이 해결되었습니다 확인 생성 된 어셈블리 버전 대신

[assembly: AssemblyVersion("7.3.*")] 

및 사용을 중지하는 데 필요한

[assembly: AssemblyVersion("7.3.1.1")] 

- 이것은 융합을 훨씬 덜 혼란스럽게 만들 것 같았습니다.

이외에도 개발 서버의 AppPool 사용자에게 권한이 있습니까? 아니면 연결을 통해 동일한 사용자를 사용하고 있는지 확인해야합니까? 호출자의 MACHINE \ ASPNET은 서버와 다른 보안 토큰을 가지므로 도메인 사용자로 인증하려고 할 수 있습니다. 전체 그림 및 아이디어를 보려면 다음을 참조하십시오. http://msdn.microsoft.com/en-us/library/ff649264.aspx