문제

중간 신뢰 환경에서 Windsor와 Nhibernate를 사용하려고 노력하고 있으며 권한과 관련된 몇 가지 문제에 대해 실행 중입니다. 나는 이것에 대한 다른 질문을 읽었지만 논의하지 않은 Windsor의 nhibernate 시설을 사용하고 있습니다.

어떤 이유로 든 컨테이너가 시작될 때 Castle.service.Transations 어셈블리에 의존합니다. 그런 다음 이것은 다음을 작성하고 인스턴스를 시도합니다.

Castle.Services.Transaction.CallContextActivityManager()

System.Runtime.Remoting.Messaging.CallContext에서 SetData를 사용하여 CallContextActivityManager 타이어로 보안 예외가 제기됩니다. 인프라 권한이있는 경우에만 허용됩니다. 중간 신뢰 앱은 그렇지 않은 것 같습니다.

중간 신탁 에서이 보안 문제에 관한 방법을 아는 사람이 있습니까? nhibernate 시설을 버리고 컨테이너에 수동으로 등록해야합니까?

도움이 되었습니까?

해결책

컨테이너에 tlsactivityManager를 등록 하여이 문제를 해결할 수 있습니다 (IACTITIVEMANAGER 용). DefaultTransactionManager (nhibernateIntegrationFacility에서 사용)는 새로운 CallContextActivityManager를 발사하는 대신이 ActivityManager를 사용합니다.

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