ActiveDirectoryMembershipProvider.CreateUser Methode

Definitie

Hiermee voegt u een nieuwe gebruiker toe aan het Active Directory gegevensarchief.

public:
 override System::Web::Security::MembershipUser ^ CreateUser(System::String ^ username, System::String ^ password, System::String ^ email, System::String ^ passwordQuestion, System::String ^ passwordAnswer, bool isApproved, System::Object ^ providerUserKey, [Runtime::InteropServices::Out] System::Web::Security::MembershipCreateStatus % status);
public override System.Web.Security.MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out System.Web.Security.MembershipCreateStatus status);
override this.CreateUser : string * string * string * string * string * bool * obj * MembershipCreateStatus -> System.Web.Security.MembershipUser
Public Overrides Function CreateUser (username As String, password As String, email As String, passwordQuestion As String, passwordAnswer As String, isApproved As Boolean, providerUserKey As Object, ByRef status As MembershipCreateStatus) As MembershipUser

Parameters

username
String

De gebruikersnaam voor de nieuwe gebruiker.

password
String

Het wachtwoord voor de nieuwe gebruiker.

email
String

Het e-mailadres van de nieuwe gebruiker.

passwordQuestion
String

De wachtwoordvraag voor de nieuwe gebruiker.

passwordAnswer
String

Het wachtwoordantwoord voor de nieuwe gebruiker.

isApproved
Boolean

Of de nieuwe gebruiker al dan niet is goedgekeurd om te worden gevalideerd.

providerUserKey
Object

De unieke id van de lidmaatschapsgegevensbron voor de gebruiker. Deze parameter moet zijn null wanneer u de ActiveDirectoryMembershipProvider klasse gebruikt.

status
MembershipCreateStatus

Wanneer deze methode wordt geretourneerd, bevat een van de MembershipCreateStatus opsommingswaarden die aangeven of de gebruiker is gemaakt.

Retouren

Een ActiveDirectoryMembershipUser exemplaar met de informatie voor de zojuist gemaakte gebruiker of null als de gebruiker niet is gemaakt.

Uitzonderingen

De providerUserKey parameter is niet null.

De beheerder heeft de velden wachtwoordvraag-en-antwoord niet toegewezen aan kenmerken van het Active Directory schema en de parameter passwordQuestion of passwordAnswer is niet null.

Het element machineKey (ASP.NET Settings Schema) geeft een automatisch gegenereerde sleutel voor computerversleuteling aan. U moet expliciet het kenmerk decryptionKey van het element machineKey (ASP.NET Settings Schema) instellen om wachtwoordantwoorden op te slaan met de ActiveDirectoryMembershipProvider.

– of –

Er ActiveDirectoryMembershipProvider kan geen beveiligde verbinding met de map tot stand worden gebracht bij het instellen van het wachtwoord voor de nieuwe gebruiker.

Er is een fout opgetreden bij het maken van de gebruiker.

Opmerkingen

De methode CreateUser wordt aangeroepen door de klasse Membership om een nieuwe gebruiker te maken in het Active Directory gegevensarchief.

Voor zowel Active Directory- als Active Directory ADAM-servers (Application Mode) vereist de klasse ActiveDirectoryMembershipProvider dat de instantieklasse in de map moet worden user. Alternatieve gebruikersklassen, zoals inetOrgPerson worden niet ondersteund.

Wanneer u een Active Directory-server gebruikt en de gebruikersnaam is toegewezen aan het kenmerk userPrincipalName, genereert de klasse ActiveDirectoryMembershipProvider automatisch een willekeurige gebruikersnaam van 20 tekens voor de parameter sAMAccountName namens u.

Parameters zijn standaard ingesteld op de volgende maximumlengten.

Parameter Maximumlengte
username 64 tekens als u het userPrincipalName kenmerk gebruikt. Als u het sAMAccountName kenmerk gebruikt, is de algemene beperking 20 tekens of minder.
password 128 tekens.
email 256 tekens.
passwordQuestion 256 tekens.
passwordAnswer 128 tekens voor en na versleuteling.

De Comment eigenschap op het geretourneerde ActiveDirectoryMembershipUser exemplaar is beperkt tot 1024 tekens.

Als het directoryschema is gewijzigd door de maximaal toegestane lengten voor deze kenmerken te verminderen, hebben deze lengten voorrang.

Voordat u de gebruiker maakt, zorgt de klasse ervoor dat de ActiveDirectoryMembershipProvider gebruikersnaam uniek is. Als het ActiveDirectoryMembershipProvider exemplaar is geconfigureerd om unieke e-mailadressen te vereisen, zorgt dit er ook voor dat het e-mailadres uniek is.

In een Active Directory unieke gebruikersnaam wordt afgedwongen door een GC-zoekopdracht uit te voeren wanneer de gebruikersnaam is toegewezen aan userPrincipalName. Als sAMAccountName wordt gebruikt, dwingt de directory automatisch uniekheid van de sAMAccountName af in het Active Directory domein.

Een ADAM-server dwingt automatisch de uniekheid van de gebruikersnaam af van alle userPrincipalName toepassingspartities.

Uniekheid van het e-mailadres wordt afgedwongen door een substructuurzoekopdracht uit te voeren naar een dubbel e-mailadres dat begint bij de hoofdmap van de container waarin gebruikers worden gemaakt. Dit is de standaardgebruikerscontainer (indien verbonden met een Active Directory en er is geen container opgegeven in de verbindingsreeks) of de container die is opgegeven in de verbindingsreeks.

De klasse ActiveDirectoryMembershipProvider maakt de gebruiker rechtstreeks in de gebruikerscontainer die is opgegeven in de verbindingsreeks. Zie het ActiveDirectoryMembershipProvider klasonderwerp voor meer informatie over verbindingsreeksen.

Als u wachtwoorden wilt instellen op een Active Directory server, moet het kenmerk connectionProtection zijn ingesteld op SignAndSeal.

Wanneer een ADAM-server wordt gebruikt, kan het connectionProtection kenmerk worden ingesteld op None, maar alleen als u de ADAM-server expliciet configureert om wachtwoordwijzigingen via onbeveiligde verbindingen toe te staan.

Voorloop- en volgspaties worden afgekapt van alle tekenreeksparameterwaarden, behalve password.

Important

U kunt geen nieuwe gebruikers maken, tenzij de referenties die worden gebruikt om verbinding te maken met de Active Directory-server beschikken over domeinbeheerdersrechten (niet aanbevolen) of het 'onderliggende exemplaar maken', 'onderliggende instantie verwijderen' en 'wachtwoord instellen'-toegangsrechten. Het toegangsrecht voor het verwijderen van een onderliggend exemplaar is vereist omdat het maken van een gebruiker een proces met meerdere stappen is. Als een van de stappen van het maken van een gebruiker mislukt, wordt de klasse verwijderd van het ActiveDirectoryMembershipProvider gebruikersexemplaren in plaats van een gedeeltelijk samengesteld gebruikersexemplaren in de map te laten staan.

Van toepassing op

Zie ook