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
- DateTimeEditor.cs
- HtmlEncodedRawTextWriter.cs
- Classification.cs
- GeneralEndpointIdentity.cs
- ProfileEventArgs.cs
- PerformanceCounterPermissionEntryCollection.cs
- UIElementPropertyUndoUnit.cs
- ElementUtil.cs
- mediaeventshelper.cs
- DataGridViewColumnEventArgs.cs
- MsmqAuthenticationMode.cs
- RightsManagementPermission.cs
- IndexedString.cs
- TransactionException.cs
- DataComponentGenerator.cs
- TreeView.cs
- Mapping.cs
- WebPartConnectVerb.cs
- CreateUserWizardStep.cs
- ContentDesigner.cs
- CookieParameter.cs
- DefaultValueConverter.cs
- OledbConnectionStringbuilder.cs
- InternalControlCollection.cs
- StaticDataManager.cs
- ControlUtil.cs
- BmpBitmapDecoder.cs
- DataServiceExpressionVisitor.cs
- AssemblyName.cs
- SolidColorBrush.cs
- AsymmetricKeyExchangeFormatter.cs
- Trigger.cs
- Gdiplus.cs
- NamespaceQuery.cs
- EncoderBestFitFallback.cs
- ControlBuilder.cs
- DbParameterCollectionHelper.cs
- TypeTypeConverter.cs
- IntAverageAggregationOperator.cs
- FunctionImportElement.cs
- DataStreams.cs
- UnsafeNativeMethodsMilCoreApi.cs
- FileUpload.cs
- EditorPartCollection.cs
- GiveFeedbackEventArgs.cs
- MsmqIntegrationMessageProperty.cs
- EventHandlersStore.cs
- DataSourceControl.cs
- PenThreadWorker.cs
- LineServices.cs
- DesignerAdapterAttribute.cs
- mediaeventshelper.cs
- EndpointConfigContainer.cs
- ConfigurationProperty.cs
- SpeechRecognitionEngine.cs
- ADRole.cs
- TransportSecurityProtocol.cs
- sqlstateclientmanager.cs
- TemplateContainer.cs
- DataGridViewCellStyleBuilderDialog.cs
- ToolStripTemplateNode.cs
- SamlAuthorizationDecisionStatement.cs
- ConsumerConnectionPoint.cs
- StackOverflowException.cs
- SystemNetHelpers.cs
- InheritanceContextHelper.cs
- MergePropertyDescriptor.cs
- TableDetailsRow.cs
- TextRunProperties.cs
- _DisconnectOverlappedAsyncResult.cs
- Codec.cs
- NativeRightsManagementAPIsStructures.cs
- SmtpTransport.cs
- HTMLTextWriter.cs
- SpeechRecognizer.cs
- RegularExpressionValidator.cs
- Duration.cs
- InfiniteIntConverter.cs
- linebase.cs
- DataRowChangeEvent.cs
- HttpListenerException.cs
- MustUnderstandSoapException.cs
- Parser.cs
- AuthenticationService.cs
- CompiledRegexRunnerFactory.cs
- CornerRadius.cs
- SkinBuilder.cs
- AccessText.cs
- WasEndpointConfigContainer.cs
- UriParserTemplates.cs
- FolderBrowserDialogDesigner.cs
- BrowserCapabilitiesCodeGenerator.cs
- ReadOnlyCollection.cs
- PropVariant.cs
- ConfigurationStrings.cs
- SecUtil.cs
- ProxyWebPart.cs
- GroupDescription.cs
- MarshalByValueComponent.cs
- TypeConverter.cs