'----------------------------------------------------------------------- ' This file is part of the Microsoft .NET SDK Code Samples. ' ' Copyright (C) Microsoft Corporation. All rights reserved. ' 'This source code is intended only as a supplement to Microsoft 'Development Tools and/or on-line documentation. See these other 'materials for detailed information regarding Microsoft code samples. ' 'THIS CODE AND INFORMATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY 'KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 'IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A 'PARTICULAR PURPOSE. '----------------------------------------------------------------------- Imports System Imports System.Security Imports System.Security.Permissions Imports System.Security.Principal Namespace Microsoft.SecuritySamples Public NotInheritable Class IdentityCheck Private Sub New() End Sub Public Shared Sub Main() AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal) Dim user As WindowsPrincipal = CType(System.Threading.Thread.CurrentPrincipal, WindowsPrincipal) Console.WriteLine("User name: {0}", user.Identity.Name) Console.WriteLine("Authentication type: {0}", user.Identity.AuthenticationType) Console.WriteLine("Is in Administrators group: {0}", user.IsInRole(WindowsBuiltInRole.Administrator)) Console.WriteLine("Is in Users group: {0}", user.IsInRole(WindowsBuiltInRole.User)) Try Console.WriteLine() Console.WriteLine("{0}", DeclAdminCheck()) Catch e As Exception If (TypeOf e Is SecurityException) And (CType(e, SecurityException).PermissionType Is GetType(PrincipalPermission)) Then Console.WriteLine("Declarative check for Administrators group failed!") Else Console.WriteLine("Exception occurred: {0}", e) End If End Try Try Console.WriteLine() Console.WriteLine("{0}", DeclUserCheck()) Catch e As Exception If (TypeOf e Is SecurityException) And (CType(e, SecurityException).PermissionType Is GetType(PrincipalPermission)) Then Console.WriteLine("Declarative check for Users group failed!") Else Console.WriteLine("Exception occurred: {0}", e) End If End Try Console.WriteLine() Console.Write("Press Enter to exit...") Console.Read() End Sub 'Main Private Shared Function DeclAdminCheck() As String Return "Declarative check for Administrators group passed!" End Function 'DeclAdminCheck Private Shared Function DeclUserCheck() As String Return "Declarative check for Users group passed!" End Function 'DeclUserCheck End Class 'IdentityCheck End Namespace 'SecuritySamples