You've already forked linux-packaging-mono
Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
parent
a569aebcfd
commit
e79aa3c0ed
@@ -0,0 +1,198 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <copyright file="ADMembershipUser.cs" company="Microsoft">
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// </copyright>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
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;
|
||||
|
||||
[Serializable]
|
||||
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.
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user