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
- CodeMethodReturnStatement.cs
- AttributeData.cs
- TextStore.cs
- NetTcpSecurity.cs
- NullableIntAverageAggregationOperator.cs
- DataGridViewHeaderCell.cs
- ProjectionPathBuilder.cs
- odbcmetadatafactory.cs
- SafeNativeMemoryHandle.cs
- RequestResizeEvent.cs
- PageCatalogPartDesigner.cs
- FloaterParaClient.cs
- ExceptionUtil.cs
- Mapping.cs
- DataGridState.cs
- dataobject.cs
- BreakRecordTable.cs
- WmlPageAdapter.cs
- Calendar.cs
- CellTreeNodeVisitors.cs
- ContentPresenter.cs
- VersionedStream.cs
- QilLoop.cs
- EntityExpressionVisitor.cs
- JsonByteArrayDataContract.cs
- TopClause.cs
- DoubleKeyFrameCollection.cs
- ArrangedElement.cs
- PageSettings.cs
- GlyphInfoList.cs
- COM2ICategorizePropertiesHandler.cs
- DataGrid.cs
- HttpFormatExtensions.cs
- XmlSchemaComplexContent.cs
- WrappedKeySecurityTokenParameters.cs
- AutoGeneratedFieldProperties.cs
- DataGridViewTextBoxCell.cs
- DataControlField.cs
- BamlTreeUpdater.cs
- CalendarTable.cs
- RecordsAffectedEventArgs.cs
- ShapingEngine.cs
- AstNode.cs
- formatter.cs
- AlternationConverter.cs
- TextParagraphView.cs
- FormViewUpdateEventArgs.cs
- elementinformation.cs
- RTTypeWrapper.cs
- MobileComponentEditorPage.cs
- NumberFormatter.cs
- HtmlMeta.cs
- CustomAttribute.cs
- HighlightComponent.cs
- PeerApplication.cs
- NavigateEvent.cs
- OlePropertyStructs.cs
- XmlDataSource.cs
- XmlSortKey.cs
- XsltConvert.cs
- HMACMD5.cs
- BaseHashHelper.cs
- MappedMetaModel.cs
- QuotedStringFormatReader.cs
- GenericIdentity.cs
- TableCellAutomationPeer.cs
- storepermissionattribute.cs
- MessagePropertyDescriptionCollection.cs
- Mutex.cs
- XmlMemberMapping.cs
- BitmapVisualManager.cs
- ReachDocumentReferenceCollectionSerializerAsync.cs
- DescendentsWalker.cs
- ToolstripProfessionalRenderer.cs
- InputMethodStateTypeInfo.cs
- WS2007HttpBindingElement.cs
- StateWorkerRequest.cs
- SubordinateTransaction.cs
- RtfToXamlReader.cs
- WaveHeader.cs
- BlurBitmapEffect.cs
- SingleConverter.cs
- ComponentCollection.cs
- HttpCachePolicyElement.cs
- XsltArgumentList.cs
- EntityParameterCollection.cs
- UrlAuthFailedErrorFormatter.cs
- DurableDispatcherAddressingFault.cs
- GroupPartitionExpr.cs
- ColumnReorderedEventArgs.cs
- nulltextcontainer.cs
- DbConnectionInternal.cs
- ExpressionLexer.cs
- PropertyMappingExceptionEventArgs.cs
- DetailsViewDeletedEventArgs.cs
- Reference.cs
- ChannelFactory.cs
- MetadataFile.cs
- SmiContextFactory.cs
- DbFunctionCommandTree.cs