GenericPrincipal Class
Represents a generic principal.
Assembly: mscorlib (in mscorlib.dll)
System.Security.Claims::ClaimsPrincipal
System.Security.Principal::GenericPrincipal
System.Web.Security::PassportPrincipal
| Name | Description | |
|---|---|---|
![]() | GenericPrincipal(IIdentity^, array<String^>^) | Initializes a new instance of the GenericPrincipal class from a user identity and an array of role names to which the user represented by that identity belongs. |
| Name | Description | |
|---|---|---|
![]() | Claims | Gets a collection that contains all of the claims from all of the claims identities associated with this claims principal.(Inherited from ClaimsPrincipal.) |
![]() | CustomSerializationData | (Inherited from ClaimsPrincipal.) |
![]() | Identities | Gets a collection that contains all of the claims identities associated with this claims principal.(Inherited from ClaimsPrincipal.) |
![]() | Identity | Gets the GenericIdentity of the user represented by the current GenericPrincipal.(Overrides ClaimsPrincipal::Identity.) |
| Name | Description | |
|---|---|---|
![]() | AddIdentities(IEnumerable<ClaimsIdentity^>^) | Adds the specified claims identities to this claims principal.(Inherited from ClaimsPrincipal.) |
![]() | AddIdentity(ClaimsIdentity^) | Adds the specified claims identity to this claims principal.(Inherited from ClaimsPrincipal.) |
![]() | Clone() | Returns a copy of this instance.(Inherited from ClaimsPrincipal.) |
![]() | CreateClaimsIdentity(BinaryReader^) | Creates a new claims identity.(Inherited from ClaimsPrincipal.) |
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | FindAll(Predicate<Claim^>^) | Retrieves all of the claims that are matched by the specified predicate.(Inherited from ClaimsPrincipal.) |
![]() | FindAll(String^) | Retrieves all or the claims that have the specified claim type.(Inherited from ClaimsPrincipal.) |
![]() | FindFirst(Predicate<Claim^>^) | Retrieves the first claim that is matched by the specified predicate.(Inherited from ClaimsPrincipal.) |
![]() | FindFirst(String^) | Retrieves the first claim with the specified claim type.(Inherited from ClaimsPrincipal.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetObjectData(SerializationInfo^, StreamingContext) | Populates the SerializationInfo with data needed to serialize the current ClaimsPrincipal object.(Inherited from ClaimsPrincipal.) |
![]() | GetType() | |
![]() | HasClaim(Predicate<Claim^>^) | Determines whether any of the claims identities associated with this claims principal contains a claim that is matched by the specified predicate.(Inherited from ClaimsPrincipal.) |
![]() | HasClaim(String^, String^) | Determines whether any of the claims identities associated with this claims principal contains a claim with the specified claim type and value.(Inherited from ClaimsPrincipal.) |
![]() | IsInRole(String^) | Determines whether the current GenericPrincipal belongs to the specified role.(Overrides ClaimsPrincipal::IsInRole(String^).) |
![]() | MemberwiseClone() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
![]() | WriteTo(BinaryWriter^) | (Inherited from ClaimsPrincipal.) |
![]() | WriteTo(BinaryWriter^, array<Byte>^) | (Inherited from ClaimsPrincipal.) |
This class represents the roles of the current user.
The following example shows the use of members of the GenericPrincipal class.
using namespace System; using namespace System::Security::Principal; ref class GenericPrincipalMembers { public: [STAThread] static void Main() { // Retrieve a GenericPrincipal that is based on the current user's // WindowsIdentity. GenericPrincipal^ genericPrincipal = GetGenericPrincipal(); // Retrieve the generic identity of the GenericPrincipal object. GenericIdentity^ principalIdentity = dynamic_cast<GenericIdentity^>(genericPrincipal->Identity); // Display the identity name and authentication type. if ( principalIdentity->IsAuthenticated ) { Console::WriteLine( principalIdentity->Name ); Console::WriteLine( L"Type:{0}", principalIdentity->AuthenticationType ); } // Verify that the generic principal has been assigned the // NetworkUser role. if ( genericPrincipal->IsInRole( L"NetworkUser" ) ) { Console::WriteLine( L"User belongs to the NetworkUser role." ); } Console::WriteLine( L"The sample completed successfully; " L"press Enter to continue." ); Console::ReadLine(); } private: // Create a generic principal based on values from the current // WindowsIdentity. static GenericPrincipal^ GetGenericPrincipal() { // Use values from the current WindowsIdentity to construct // a set of GenericPrincipal roles. WindowsIdentity^ windowsIdentity = WindowsIdentity::GetCurrent(); array<String^>^roles = gcnew array<String^>(10); if ( windowsIdentity->IsAuthenticated ) { // Add custom NetworkUser role. roles[ 0 ] = L"NetworkUser"; } if ( windowsIdentity->IsGuest ) { // Add custom GuestUser role. roles[ 1 ] = L"GuestUser"; } if ( windowsIdentity->IsSystem ) { // Add custom SystemUser role. roles[ 2 ] = L"SystemUser"; } // Construct a GenericIdentity object based on the current Windows // identity name and authentication type. String^ authenticationType = windowsIdentity->AuthenticationType; String^ userName = windowsIdentity->Name; GenericIdentity^ genericIdentity = gcnew GenericIdentity( userName,authenticationType ); // Construct a GenericPrincipal object based on the generic identity // and custom roles for the user. GenericPrincipal^ genericPrincipal = gcnew GenericPrincipal( genericIdentity,roles ); return genericPrincipal; } }; int main() { GenericPrincipalMembers::Main(); }
Available since 10
.NET Framework
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.



