Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Principal / GenericPrincipal.cs / 1 / GenericPrincipal.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
//
// GenericPrincipal.cs
//
namespace System.Security.Principal
{
using System.Runtime.Remoting;
using System;
using System.Security.Util;
using System.Globalization;
[Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class GenericPrincipal : IPrincipal {
private IIdentity m_identity;
private string[] m_roles;
public GenericPrincipal (IIdentity identity, string[] roles) {
if (identity == null)
throw new ArgumentNullException("identity");
m_identity = identity;
if (roles != null) {
m_roles = new string[roles.Length];
for (int i = 0; i < roles.Length; ++i) {
m_roles[i] = roles[i];
}
}
else {
m_roles = null;
}
}
public virtual IIdentity Identity {
get {
return m_identity;
}
}
public virtual bool IsInRole (string role) {
if (role == null || m_roles == null)
return false;
for (int i = 0; i < m_roles.Length; ++i) {
if (m_roles[i] != null && String.Compare(m_roles[i], role, StringComparison.OrdinalIgnoreCase) == 0)
return true;
}
return false;
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ApplicationServicesHostFactory.cs
- LocalizableAttribute.cs
- CapabilitiesState.cs
- SingleKeyFrameCollection.cs
- AutomationPropertyInfo.cs
- DoubleLink.cs
- TextEditorTables.cs
- ContentOperations.cs
- BindingNavigator.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- ProcessHostConfigUtils.cs
- TraceUtils.cs
- QuerySafeNavigator.cs
- ParameterDataSourceExpression.cs
- XmlDownloadManager.cs
- DataGridColumnCollection.cs
- MembershipSection.cs
- StorageInfo.cs
- SessionStateItemCollection.cs
- DataTableExtensions.cs
- PrtCap_Base.cs
- DataGridViewComboBoxEditingControl.cs
- PageCodeDomTreeGenerator.cs
- SpeechDetectedEventArgs.cs
- XmlNodeChangedEventManager.cs
- MenuEventArgs.cs
- Lease.cs
- WebServiceTypeData.cs
- Enlistment.cs
- Vars.cs
- HandlerFactoryCache.cs
- ElementUtil.cs
- HtmlElement.cs
- Registry.cs
- GridViewColumnHeader.cs
- XmlSchema.cs
- MetadataResolver.cs
- EntityDescriptor.cs
- ExpressionBindingCollection.cs
- AliasGenerator.cs
- SetState.cs
- SHA512Managed.cs
- ApplicationDirectoryMembershipCondition.cs
- ReadWriteObjectLock.cs
- Stack.cs
- RtfControlWordInfo.cs
- RuntimeConfigurationRecord.cs
- ConnectionManagementElement.cs
- AgileSafeNativeMemoryHandle.cs
- RuntimeConfigLKG.cs
- GetPageCompletedEventArgs.cs
- ConnectionPoolManager.cs
- Rect.cs
- DateTimeStorage.cs
- FontEmbeddingManager.cs
- UTF8Encoding.cs
- ExpandoObject.cs
- SystemColors.cs
- ProviderException.cs
- AssociationType.cs
- NodeInfo.cs
- InputReport.cs
- Axis.cs
- StringToken.cs
- ProgressBar.cs
- CodeParameterDeclarationExpression.cs
- ConstructorNeedsTagAttribute.cs
- WebPartDisplayModeCancelEventArgs.cs
- GeneralTransform2DTo3DTo2D.cs
- MdiWindowListStrip.cs
- CodeIndexerExpression.cs
- MetadataCollection.cs
- ColorAnimation.cs
- ZipFileInfoCollection.cs
- SuspendDesigner.cs
- HwndSubclass.cs
- SerializationFieldInfo.cs
- CodeSnippetTypeMember.cs
- XamlTreeBuilderBamlRecordWriter.cs
- ComNativeDescriptor.cs
- ListBoxItemAutomationPeer.cs
- ViewStateModeByIdAttribute.cs
- WebServiceParameterData.cs
- WorkflowServiceHostFactory.cs
- GeometryValueSerializer.cs
- PathGeometry.cs
- SqlExpressionNullability.cs
- NegatedConstant.cs
- MimeWriter.cs
- PointCollection.cs
- Debugger.cs
- HttpResponseInternalBase.cs
- Native.cs
- BitmapDecoder.cs
- DataControlLinkButton.cs
- EncoderParameters.cs
- XmlEntity.cs
- EditorZoneBase.cs
- XmlILOptimizerVisitor.cs
- FlowNode.cs