Как получить оригинальное исключение в IErrorHandler - PullRequest
2 голосов
/ 17 сентября 2011

Я использую ролевую безопасность в приложении WCF.Я украсил свою реализацию операции сервиса с помощью System.Security.Permissions.PrincipalPermissionAttribute.

Если авторизация не удалась, возникает System.Security.SecurityException (который содержит роль, которая была утверждена).

Я хотел бы записать подробности исключения System.Security.SecurityException.Однако, если я реализую IErrorHandler, я не получу исходное исключение System.Security.SecurityException, переданное в методы HandleError или ProvideFault, вместо этого я получу исключение System.ServiceModel.FaultException.Это последнее исключение не включает в себя какие-либо подробности, которые я хочу записать в журнал.

Есть ли способ получить исходное исключение System.Security.SecurityException из IErrorHandler или есть еще один хук где-то в WCF для получениядержать его?

1 Ответ

1 голос
/ 12 октября 2011

Охотился вокруг и, согласно Microsoft:

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

WCF отфильтровывает его, так что нет, вы не можете получить оригинальное исключение.

...