Code:
/ FX-1434 / FX-1434 / 1.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
- CallSiteOps.cs
- messageonlyhwndwrapper.cs
- HttpWriter.cs
- XmlMapping.cs
- OrderPreservingPipeliningSpoolingTask.cs
- KeyValuePairs.cs
- AliasedSlot.cs
- Baml2006ReaderFrame.cs
- BinHexDecoder.cs
- DbConnectionOptions.cs
- COSERVERINFO.cs
- XmlSchemaCollection.cs
- GridItemProviderWrapper.cs
- Point4DValueSerializer.cs
- SystemFonts.cs
- SoapSchemaMember.cs
- HttpModuleCollection.cs
- ToolStripDropDownItemDesigner.cs
- XmlSchemaSimpleTypeRestriction.cs
- ProcessInfo.cs
- XmlWriterTraceListener.cs
- FormatStringEditor.cs
- OdbcErrorCollection.cs
- _NegoStream.cs
- InstanceDataCollectionCollection.cs
- QueryOptionExpression.cs
- UInt64.cs
- XmlMtomReader.cs
- CodeValidator.cs
- LinkArea.cs
- ReadOnlyTernaryTree.cs
- XMLDiffLoader.cs
- KeyedCollection.cs
- WebResourceAttribute.cs
- BitmapVisualManager.cs
- TextWriterTraceListener.cs
- ActivityDesigner.cs
- safesecurityhelperavalon.cs
- ObjectDataSourceWizardForm.cs
- ClientBuildManagerCallback.cs
- XdrBuilder.cs
- WebPartChrome.cs
- CryptoStream.cs
- ConditionalWeakTable.cs
- Debugger.cs
- PolyQuadraticBezierSegment.cs
- DataGridRelationshipRow.cs
- ClientRolePrincipal.cs
- ConfigXmlCDataSection.cs
- BasicHttpSecurityMode.cs
- DataGridViewBindingCompleteEventArgs.cs
- WebServiceData.cs
- ResourcesChangeInfo.cs
- Vector3DIndependentAnimationStorage.cs
- TranslateTransform3D.cs
- ObjectListDesigner.cs
- ButtonRenderer.cs
- basenumberconverter.cs
- SqlProviderManifest.cs
- CodeSubDirectoriesCollection.cs
- SectionInput.cs
- ActivityExecutorDelegateInfo.cs
- DataGridViewColumnHeaderCell.cs
- XmlDataSource.cs
- SimpleMailWebEventProvider.cs
- GridItem.cs
- EditorPartDesigner.cs
- WebPartDisplayModeEventArgs.cs
- BorderGapMaskConverter.cs
- Scene3D.cs
- SyntaxCheck.cs
- GridItemProviderWrapper.cs
- TransformCryptoHandle.cs
- WSTrustFeb2005.cs
- DecimalKeyFrameCollection.cs
- TimeSpanStorage.cs
- CryptoConfig.cs
- ShutDownListener.cs
- CacheEntry.cs
- DataGrid.cs
- FigureParagraph.cs
- TableItemPattern.cs
- EncryptedType.cs
- ProxyAttribute.cs
- RepeaterItemEventArgs.cs
- ZipIOFileItemStream.cs
- XmlSignatureManifest.cs
- ArrayItemReference.cs
- SqlAggregateChecker.cs
- Exceptions.cs
- XPathNavigatorReader.cs
- SendingRequestEventArgs.cs
- TraceSection.cs
- EnumerationRangeValidationUtil.cs
- CatalogPart.cs
- AutomationPropertyInfo.cs
- ExpressionBindings.cs
- Variant.cs
- Pair.cs
- CorrelationKey.cs