ActiveDirectoryMembershipProvider.CreateUser Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.
- 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ě.
Metoda CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) je volána před inicializována ActiveDirectoryMembershipProvider instance.
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.