Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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. } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DbConnectionStringBuilder.cs
- XmlIlGenerator.cs
- CustomAssemblyResolver.cs
- HtmlUtf8RawTextWriter.cs
- ObjectIDGenerator.cs
- DataGridViewUtilities.cs
- PrintPreviewGraphics.cs
- XmlMessageFormatter.cs
- UiaCoreTypesApi.cs
- selecteditemcollection.cs
- OleDbErrorCollection.cs
- DispatcherHookEventArgs.cs
- CommandDevice.cs
- MouseCaptureWithinProperty.cs
- PersonalizationStateInfoCollection.cs
- XPathParser.cs
- ArcSegment.cs
- XmlSchemaSimpleContentExtension.cs
- EmptyElement.cs
- InternalRelationshipCollection.cs
- AutomationProperty.cs
- WmpBitmapEncoder.cs
- Dynamic.cs
- RelatedView.cs
- WebZone.cs
- NamespaceQuery.cs
- PageThemeCodeDomTreeGenerator.cs
- DocumentPage.cs
- ObjectToIdCache.cs
- XmlJsonWriter.cs
- OleDbRowUpdatingEvent.cs
- ITextView.cs
- SHA1CryptoServiceProvider.cs
- ExecutedRoutedEventArgs.cs
- StrokeDescriptor.cs
- ActivityTypeCodeDomSerializer.cs
- ScriptControlDescriptor.cs
- EncoderParameters.cs
- HttpResponseInternalWrapper.cs
- QuaternionRotation3D.cs
- PropertyManager.cs
- IntPtr.cs
- TrackBarRenderer.cs
- WebPartZone.cs
- XmlSecureResolver.cs
- oledbconnectionstring.cs
- StoreAnnotationsMap.cs
- Camera.cs
- XsltLoader.cs
- HTMLTextWriter.cs
- BaseValidatorDesigner.cs
- LicenseManager.cs
- FrameworkTextComposition.cs
- PrimitiveXmlSerializers.cs
- ScriptingWebServicesSectionGroup.cs
- Label.cs
- Identifier.cs
- ExtensibleClassFactory.cs
- XmlSignificantWhitespace.cs
- Enumerable.cs
- CompilationUtil.cs
- ItemCheckEvent.cs
- WmlSelectionListAdapter.cs
- DockPattern.cs
- EntitySetDataBindingList.cs
- DependencyPropertyChangedEventArgs.cs
- TextShapeableCharacters.cs
- StringBuilder.cs
- ReplyChannel.cs
- AppliedDeviceFiltersDialog.cs
- LoginCancelEventArgs.cs
- PreProcessInputEventArgs.cs
- altserialization.cs
- WebHttpBehavior.cs
- IPAddressCollection.cs
- Help.cs
- CurrentTimeZone.cs
- TextFormatterContext.cs
- XmlSchemaDatatype.cs
- MiniMapControl.xaml.cs
- QualificationDataItem.cs
- Rectangle.cs
- UIElementParagraph.cs
- QuadraticBezierSegment.cs
- SqlClientFactory.cs
- EdmSchemaAttribute.cs
- JsonEnumDataContract.cs
- ToolStripDropDownButton.cs
- ListenerConstants.cs
- IgnoreSectionHandler.cs
- _Rfc2616CacheValidators.cs
- Int32Converter.cs
- BindingNavigator.cs
- precedingquery.cs
- ClientBuildManagerCallback.cs
- SyndicationItem.cs
- ExtendedProperty.cs
- AuthenticatingEventArgs.cs
- CultureInfo.cs
- Hex.cs