2

WCFアプリケーションで役割ベースのセキュリティを使用しています。System.Security.Permissions.PrincipalPermissionAttributeを使用してサービス操作の実装を装飾しました。

承認が失敗すると、System.Security.SecurityExceptionが発生します(これには、アサートされた役割が含まれます)。

System.Security.SecurityExceptionの詳細をログに記録したいと思います。ただし、IErrorHandlerを実装すると、HandleErrorメソッドまたはProvideFaultメソッドに渡された元のSystem.Security.SecurityExceptionが取得されず、代わりにSystem.ServiceModel.FaultExceptionが取得されます。この後者の例外には、ログに記録したい詳細は含まれていません。

IErrorHandler内から元のSystem.Security.SecurityExceptionを取得する方法はありますか、それともWCFのどこかにそれを取得するための別のフックがありますか?

4

1 に答える 1

1

Microsoftによると、探し回っています:

http://connect.microsoft.com/VisualStudio/feedback/details/371181/wcf-ierrorhandler-logging-securityexceptions

WCF はそれを除外するため、元の例外を取得することはできません。

于 2011-10-11T23:54:15.480 に答える