Sdílet prostřednictvím


ActiveDirectoryMembershipProvider.CreateUser Metoda

Definice

Přidá nového uživatele do úložiště dat služby Active Directory.

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

Parametry

username
String

Uživatelské jméno nového uživatele.

password
String

Heslo pro nového uživatele.

email
String

E-mailová adresa nového uživatele.

passwordQuestion
String

Otázka s heslem pro nového uživatele

passwordAnswer
String

Odpověď na heslo pro nového uživatele

isApproved
Boolean

Určuje, jestli je nový uživatel schválen k ověření.

providerUserKey
Object

Jedinečný identifikátor ze zdroje dat členství pro uživatele. Tento parametr musí být null při použití ActiveDirectoryMembershipProvider třídy.

status
MembershipCreateStatus

Když se tato metoda vrátí, obsahuje jednu z hodnot výčtu MembershipCreateStatus označujících, zda byl uživatel úspěšně vytvořen.

Návraty

Instance ActiveDirectoryMembershipUser obsahující informace o nově vytvořeném uživateli nebo null pokud uživatel nebyl úspěšně vytvořen.

Výjimky

Parametr providerUserKey není null.

Správce nenamapoval pole pro otázky a odpovědi hesla na atributy schématu služby Active Directory a passwordQuestion parametr nebo passwordAnswer není null.

Element konfigurace machineKey Element (ASP.NET Settings Schema) označuje automaticky vygenerovaný šifrovací klíč počítače. Je nutné explicitně nastavit decryptionKey atribut elementu machineKey (ASP.NET Settings Schema) pro ukládání odpovědí na heslo s ActiveDirectoryMembershipProvider.

-nebo-

Při ActiveDirectoryMembershipProvider pokusu o nastavení hesla pro nového uživatele se nepodařilo navázat zabezpečené připojení k adresáři.

Při pokusu o vytvoření uživatele došlo k chybě.

Poznámky

Metoda CreateUser je volána Membership třídou k vytvoření nového uživatele v úložišti dat služby Active Directory.

Pro servery Active Directory i adam (Active Directory Application Mode) třída vyžaduje, ActiveDirectoryMembershipProvider aby třída instance v adresáři byla user. Alternativní třídy uživatelů, jako inetOrgPerson jsou, nejsou podporovány.

Při použití serveru služby Active Directory a uživatelské jméno je namapováno na userPrincipalName atribut, ActiveDirectoryMembershipProvider třída automaticky vygeneruje náhodné 20mísedné uživatelské jméno pro sAMAccountName parametr vaším jménem.

Parametry mají výchozí maximální délku.

Parametr Maximální délka
username 64 znaků, pokud používáte userPrincipalName atribut. Při použití atributu sAMAccountName je běžné omezení 20 znaků nebo méně.
password 128 znaků.
email 256 znaků.
passwordQuestion 256 znaků.
passwordAnswer 128 znaků před a po šifrování.

Vlastnost Comment vrácené ActiveDirectoryMembershipUser instance je omezena na 1024 znaků.

Pokud bylo schéma adresáře změněno snížením maximální povolené délky pro tyto atributy, budou mít přednost tyto délky.

Před vytvořením uživatele třída zajistí, ActiveDirectoryMembershipProvider aby uživatelské jméno bylo jedinečné. ActiveDirectoryMembershipProvider Pokud je instance nakonfigurovaná tak, aby vyžadovala jedinečné e-mailové adresy, zajistí také jedinečnou e-mailovou adresu.

Ve službě Active Directory se jedinečnost uživatelského jména vynucuje provedením hledání GC při mapování uživatelského jména na userPrincipalName. Pokud sAMAccountName se použije, adresář automaticky vynutí jedinečnost sAMAccountName v doméně služby Active Directory.

Server ADAM automaticky vynutí jedinečnost userPrincipalName uživatelského jména napříč všemi oddíly aplikace.

Jedinečnost e-mailové adresy se vynucuje vyhledáváním podstromu pro duplicitní e-mailovou adresu počínaje kořenem kontejneru, ve kterém jsou uživatelé vytvořeni. Jedná se buď o výchozí kontejner uživatele (pokud je připojený ke službě Active Directory a v připojovacím řetězci nebyl zadán žádný kontejner), nebo kontejner zadaný v připojovacím řetězci.

Třída ActiveDirectoryMembershipProvider vytvoří uživatele přímo v kontejneru uživatele zadaném v připojovacím řetězci. Další informace o připojovacích řetězcích najdete v ActiveDirectoryMembershipProvider tématu třídy.

Aby se hesla na serveru Služby Active Directory nastavily, connectionProtection musí být atribut nastaven na SignAndSealhodnotu .

Při použití serveru ADAM lze atribut nastavit na None, ale pouze v případě, že server ADAM explicitně nakonfigurujete tak, connectionProtection aby povoloval změny hesel přes nezabezpečená připojení.

Počáteční a koncové mezery jsou oříznuty ze všech hodnot parametrů řetězce s výjimkou password.

Důležité

Nové uživatele nelze vytvořit, pokud přihlašovací údaje použité k připojení k serveru služby Active Directory nemají oprávnění správce domény (nedoporučuje se) nebo přístupová práva "vytvořit podřízenou instanci", "odstranit podřízenou instanci" a "nastavit heslo". Přístupové právo "odstranit podřízenou instanci" je vyžadováno, protože vytvoření uživatele je proces s více kroky, a pokud některý krok vytvoření uživatele selže, třída odstraní instanci uživatele místo toho, ActiveDirectoryMembershipProvider aby v adresáři ponechá částečně vytvořenou instanci uživatele.

Platí pro

Viz také