ActiveDirectoryMembershipProvider.CreateUser Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.
- 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.
De CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) methode wordt aangeroepen voordat het ActiveDirectoryMembershipProvider exemplaar wordt geïnitialiseerd.
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.