.NETexception我可以抛出未授权或未validation
我有部分代码,我想抛出一个exception,每当用户未经过身份validation/未经授权。
所以不是写我自己的NotAuthenticatedException和NotAuthorizedException,而是想知道是否还没有一些C#标准。
我可以想象很多程序都会抛出类似的Exceptions,如果每个人都再次写下他们自己的“轮子”,那也不会很有用。
使用C# AuthenticationException或InvalidCredentialException类。
http://msdn.microsoft.com/en-us/library/system.security.authentication.authenticationexception.aspx
您也可以使用UnauthorizedAccessException来授权违规
为了避免重蹈覆辙,我使用了PrincipalPermission.Demand或PrincipalPermissionAttribute 。
如果需求失败, SecurityException
将被抛出。
如果您确实要显式引发exception而不是使用PrincipalPermission.Demand
,则可以考虑重用MSDN中描述的现有typesSystem.UnauthorizedAccessException :
操作系统由于I / O错误或特定types的安全错误而拒绝访问时引发的exception。
这是你的应用程序,而不是拒绝访问的操作系统,但也许足够接近。