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
- LinkClickEvent.cs
- SQLDecimalStorage.cs
- COM2ColorConverter.cs
- OleDbException.cs
- Policy.cs
- SqlDataSourceEnumerator.cs
- RootProfilePropertySettingsCollection.cs
- PropertyValueUIItem.cs
- DNS.cs
- RectAnimationClockResource.cs
- SqlDataSourceRefreshSchemaForm.cs
- StylusPointProperties.cs
- CustomAttribute.cs
- RadialGradientBrush.cs
- QueryableDataSourceEditData.cs
- SmiMetaData.cs
- PageThemeParser.cs
- SharedHttpTransportManager.cs
- ModulesEntry.cs
- FormViewUpdateEventArgs.cs
- TemplateBindingExtension.cs
- SecurityRuntime.cs
- CornerRadius.cs
- StateMachine.cs
- XmlDataSource.cs
- EntityDataSourceContextCreatedEventArgs.cs
- PersonalizationDictionary.cs
- AppDomainProtocolHandler.cs
- LineGeometry.cs
- BmpBitmapDecoder.cs
- BasicViewGenerator.cs
- StringConverter.cs
- ToolStripSettings.cs
- UiaCoreApi.cs
- SettingsPropertyIsReadOnlyException.cs
- ConfigurationSectionGroupCollection.cs
- LockCookie.cs
- BooleanAnimationUsingKeyFrames.cs
- SchemaManager.cs
- SHA256.cs
- CatalogPartCollection.cs
- GridViewSortEventArgs.cs
- BrowserTree.cs
- NewArrayExpression.cs
- AuthenticationSection.cs
- SqlLiftWhereClauses.cs
- ExtentKey.cs
- ConstNode.cs
- XmlElementList.cs
- shaper.cs
- PingOptions.cs
- ButtonColumn.cs
- EdmProviderManifest.cs
- XmlSignatureManifest.cs
- UnsafeNativeMethods.cs
- UserNamePasswordValidationMode.cs
- OleDbErrorCollection.cs
- dsa.cs
- RestrictedTransactionalPackage.cs
- CriticalExceptions.cs
- RadioButton.cs
- ColorContext.cs
- mansign.cs
- log.cs
- X509CertificateCollection.cs
- StrokeNode.cs
- List.cs
- ThemeInfoAttribute.cs
- CroppedBitmap.cs
- CompositeCollection.cs
- QueryAsyncResult.cs
- TypeConverterValueSerializer.cs
- ObjectParameterCollection.cs
- XmlNamespaceMappingCollection.cs
- AnimationClock.cs
- Calendar.cs
- ModulesEntry.cs
- DesignerDataParameter.cs
- FrameworkElementFactory.cs
- InputLanguageManager.cs
- SocketPermission.cs
- MdImport.cs
- ComProxy.cs
- ThreadStateException.cs
- ReferenceEqualityComparer.cs
- TypeDelegator.cs
- CodeCommentStatementCollection.cs
- DecimalStorage.cs
- RenamedEventArgs.cs
- BoolExpr.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- SignatureResourcePool.cs
- DataGridRelationshipRow.cs
- DependencyPropertyKey.cs
- TokenBasedSetEnumerator.cs
- ConstraintStruct.cs
- ResourceReferenceKeyNotFoundException.cs
- CallbackHandler.cs
- ChangePasswordAutoFormat.cs
- SplashScreen.cs