Подтвердить что ты не робот

Исключения .NET, которые я могу использовать для Not Authorized или Not Authenticated

У меня есть части кода, где я хочу бросить исключение, когда пользователь не аутентифицирован/не авторизован.

Поэтому вместо того, чтобы писать собственное NotAuthenticatedException и NotAuthorizedException, мне было интересно, не существуют ли для них некоторые стандарты С#.

Я могу себе представить, что многие программы выбрасывают подобные Исключения, и это было бы не очень полезно, если бы все снова записывали свое колесо.

4b9b3361

Ответ 2

Вы также можете использовать UnauthorizedAccessException для нарушений авторизации

Ответ 3

Чтобы избежать повторного использования колеса, я бы использовал PrincipalPermission.Demand или PrincipalPermissionAttribute.

A SecurityException будет выбрано для вас, если запрос не будет выполнен.

Если вы хотите явно исключить исключение, а не использовать PrincipalPermission.Demand, вы можете рассмотреть возможность повторного использования существующего типа System.UnauthorizedAccessException, который описан в MSDN как

Исключение, которое вызывается, когда операционная система отказывает в доступе из-за ошибки ввода-вывода или определенного типа ошибки безопасности.

Это ваше приложение, а не ОС, которое отказывает в доступе, но, возможно, достаточно близко.