Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Security / ADMembershipUser.cs / 1 / ADMembershipUser.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Security { using System.Web; using System.Web.Configuration; using System.Security.Principal; using System.Security.Permissions; using System.Globalization; using System.Runtime.Serialization; using System.Diagnostics; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [Serializable] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class ActiveDirectoryMembershipUser : MembershipUser { internal bool emailModified = true; internal bool commentModified = true; internal bool isApprovedModified = true; // // private variables needed for the providerUserKey // (We need to store the provider user key here rather than the base class // to be able to do custom serialization) // private byte[] sidBinaryForm = null; [NonSerialized] private SecurityIdentifier sid = null; public override DateTime LastLoginDate { get { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastLoginDate")); } set { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastLoginDate")); } } public override DateTime LastActivityDate { get { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastActivityDate")); } set { throw new NotSupportedException(SR.GetString(SR.ADMembership_UserProperty_not_supported, "LastActivityDate")); } } public override string Email { get { return base.Email; } set { base.Email = value; emailModified = true; } } public override string Comment { get { return base.Comment; } set { base.Comment = value; commentModified = true; } } public override bool IsApproved { get { return base.IsApproved; } set { base.IsApproved = value; isApprovedModified = true; } } public override object ProviderUserKey { get { if (sid == null && sidBinaryForm != null) sid = new SecurityIdentifier(sidBinaryForm, 0); return sid; } } public ActiveDirectoryMembershipUser(string providerName, string name, object providerUserKey, string email, string passwordQuestion, string comment, bool isApproved, bool isLockedOut, DateTime creationDate, DateTime lastLoginDate, DateTime lastActivityDate, DateTime lastPasswordChangedDate, DateTime lastLockoutDate) :base(providerName, name, null, email, passwordQuestion, comment, isApproved, isLockedOut, creationDate, lastLoginDate, lastActivityDate, lastPasswordChangedDate, lastLockoutDate) { if ((providerUserKey != null) && !(providerUserKey is SecurityIdentifier)) throw new ArgumentException( SR.GetString( SR.ADMembership_InvalidProviderUserKey ), "providerUserKey" ); sid = (SecurityIdentifier) providerUserKey; if (sid != null) { // // store the sid in binary form for serialization // sidBinaryForm = new byte[sid.BinaryLength]; sid.GetBinaryForm(sidBinaryForm, 0); } } internal ActiveDirectoryMembershipUser(string providerName, string name, byte[] sidBinaryForm, object providerUserKey, string email, string passwordQuestion, string comment, bool isApproved, bool isLockedOut, DateTime creationDate, DateTime lastLoginDate, DateTime lastActivityDate, DateTime lastPasswordChangedDate, DateTime lastLockoutDate, bool valuesAreUpdated) :base(providerName, name, null, email, passwordQuestion, comment, isApproved, isLockedOut, creationDate, lastLoginDate, lastActivityDate, lastPasswordChangedDate, lastLockoutDate) { if (valuesAreUpdated) { emailModified = false; commentModified = false; isApprovedModified = false; } Debug.Assert(sidBinaryForm != null); this.sidBinaryForm = sidBinaryForm; Debug.Assert((providerUserKey != null) && (providerUserKey is SecurityIdentifier)); sid = (SecurityIdentifier) providerUserKey; } protected ActiveDirectoryMembershipUser() { } // Default CTor: Callable by derived class only. } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ItemList.cs
- MobileComponentEditorPage.cs
- ErrorProvider.cs
- ListViewInsertedEventArgs.cs
- WebPartTransformer.cs
- RuntimeCompatibilityAttribute.cs
- SerializationFieldInfo.cs
- StringAnimationBase.cs
- HandlerMappingMemo.cs
- HtmlListAdapter.cs
- ObjectToken.cs
- IPEndPointCollection.cs
- ConfigXmlAttribute.cs
- SchemaTypeEmitter.cs
- PlainXmlSerializer.cs
- TextTreeUndoUnit.cs
- StructuredCompositeActivityDesigner.cs
- PersonalizationProviderHelper.cs
- SpecialTypeDataContract.cs
- WebPartCloseVerb.cs
- LoginName.cs
- ManualWorkflowSchedulerService.cs
- XmlCharType.cs
- CryptoHelper.cs
- ImpersonationContext.cs
- MaxValueConverter.cs
- SpellerInterop.cs
- EntryWrittenEventArgs.cs
- QueueProcessor.cs
- EditorAttribute.cs
- CodeDomComponentSerializationService.cs
- AssociatedControlConverter.cs
- WasNotInstalledException.cs
- BinaryNode.cs
- ParagraphVisual.cs
- CodeCastExpression.cs
- InstanceView.cs
- ColorConverter.cs
- HttpListenerResponse.cs
- RemotingAttributes.cs
- BooleanSwitch.cs
- GraphicsPath.cs
- WsdlInspector.cs
- StreamUpdate.cs
- PrimarySelectionGlyph.cs
- TrackBarRenderer.cs
- RuntimeConfigurationRecord.cs
- SelectionProviderWrapper.cs
- TreeView.cs
- UIPropertyMetadata.cs
- httpapplicationstate.cs
- DataGridrowEditEndingEventArgs.cs
- RoleService.cs
- ProxySimple.cs
- ButtonBaseAutomationPeer.cs
- QueryCacheKey.cs
- TableLayoutPanelCellPosition.cs
- IgnoreSection.cs
- WsatExtendedInformation.cs
- TimeManager.cs
- Debug.cs
- DescendentsWalker.cs
- BlockUIContainer.cs
- ItemChangedEventArgs.cs
- FileIOPermission.cs
- ResourceWriter.cs
- XmlSchemaParticle.cs
- PropertyMappingExceptionEventArgs.cs
- FontUnit.cs
- ChangePassword.cs
- LazyTextWriterCreator.cs
- BlurEffect.cs
- WebPartAuthorizationEventArgs.cs
- PhysicalFontFamily.cs
- RegistrySecurity.cs
- OuterGlowBitmapEffect.cs
- WeakEventTable.cs
- UpdateCommand.cs
- HwndMouseInputProvider.cs
- JsonReader.cs
- OleDbParameter.cs
- CanExecuteRoutedEventArgs.cs
- XmlnsDefinitionAttribute.cs
- CommunicationException.cs
- ResourceDictionaryCollection.cs
- DataContractSerializerSection.cs
- SerializableAttribute.cs
- XNodeSchemaApplier.cs
- X509CertificateChain.cs
- TriggerBase.cs
- ScrollItemPatternIdentifiers.cs
- DockPatternIdentifiers.cs
- ElementsClipboardData.cs
- TransformPatternIdentifiers.cs
- XpsS0ValidatingLoader.cs
- Int32AnimationUsingKeyFrames.cs
- IUnknownConstantAttribute.cs
- URL.cs
- DatagramAdapter.cs
- MobileCategoryAttribute.cs