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
- ISFClipboardData.cs
- GB18030Encoding.cs
- SmtpNetworkElement.cs
- BaseEntityWrapper.cs
- XmlEntity.cs
- MailAddressCollection.cs
- View.cs
- NumericUpDownAcceleration.cs
- GlobalizationSection.cs
- WindowsBrush.cs
- TargetControlTypeAttribute.cs
- CookieHandler.cs
- BackStopAuthenticationModule.cs
- EncoderFallback.cs
- HttpCapabilitiesBase.cs
- SizeConverter.cs
- XPathNodePointer.cs
- SafeNativeMethods.cs
- HandleCollector.cs
- TypeToStringValueConverter.cs
- SoapInteropTypes.cs
- XamlToRtfWriter.cs
- ConfigurationManagerHelper.cs
- VisualProxy.cs
- DbParameterCollection.cs
- DataGridViewCellStyleConverter.cs
- AsyncResult.cs
- MetadataFile.cs
- ArgumentOutOfRangeException.cs
- FixedSOMGroup.cs
- ScrollBarRenderer.cs
- XmlSchemaParticle.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- XmlNodeChangedEventManager.cs
- SqlIdentifier.cs
- ClientProxyGenerator.cs
- XmlName.cs
- BamlLocalizableResource.cs
- EditorPart.cs
- Label.cs
- TabItemWrapperAutomationPeer.cs
- ReferentialConstraint.cs
- CodeGen.cs
- PassportAuthenticationEventArgs.cs
- QuaternionRotation3D.cs
- StagingAreaInputItem.cs
- DrawingImage.cs
- OleDbCommand.cs
- WeakReferenceKey.cs
- _NestedMultipleAsyncResult.cs
- ProcessHostServerConfig.cs
- StickyNote.cs
- PathFigureCollectionValueSerializer.cs
- WebRequestModuleElementCollection.cs
- HostedHttpRequestAsyncResult.cs
- XmlSchemas.cs
- InvalidProgramException.cs
- UIElementIsland.cs
- EntityUtil.cs
- SqlBuffer.cs
- DbConnectionInternal.cs
- DataMemberConverter.cs
- MemberHolder.cs
- DropDownList.cs
- latinshape.cs
- WorkItem.cs
- PerformanceCounterManager.cs
- WindowsTokenRoleProvider.cs
- MatrixAnimationUsingKeyFrames.cs
- DataSource.cs
- ConfigsHelper.cs
- BitmapSizeOptions.cs
- XmlDeclaration.cs
- XmlName.cs
- XpsFilter.cs
- PropertyGrid.cs
- ReservationCollection.cs
- XmlTypeAttribute.cs
- HMACRIPEMD160.cs
- SID.cs
- DataGridColumnHeadersPresenter.cs
- TailCallAnalyzer.cs
- ACE.cs
- COM2PropertyBuilderUITypeEditor.cs
- SystemResourceKey.cs
- RemotingAttributes.cs
- ResourcePool.cs
- EventLogPropertySelector.cs
- ValidateNames.cs
- ParseNumbers.cs
- DataTableReader.cs
- SystemSounds.cs
- FamilyMapCollection.cs
- HtmlControlDesigner.cs
- TrustLevelCollection.cs
- SymbolType.cs
- JapaneseLunisolarCalendar.cs
- InlinedAggregationOperator.cs
- DispatcherObject.cs
- WebPartExportVerb.cs