SqlConnection.ChangePassword Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zmienia hasło programu SQL Server.
Przeciążenia
| Nazwa | Opis |
|---|---|
| ChangePassword(String, SqlCredential, SecureString) |
Zmienia hasło programu SQL Server dla użytkownika wskazanego w obiekcie SqlCredential. |
| ChangePassword(String, String) |
Zmienia hasło programu SQL Server dla użytkownika wskazanego w parametrach połączenia z określonym nowym hasłem. |
ChangePassword(String, SqlCredential, SecureString)
Zmienia hasło programu SQL Server dla użytkownika wskazanego w obiekcie SqlCredential.
public:
static void ChangePassword(System::String ^ connectionString, System::Data::SqlClient::SqlCredential ^ credential, System::Security::SecureString ^ newSecurePassword);
public static void ChangePassword(string connectionString, System.Data.SqlClient.SqlCredential credential, System.Security.SecureString newSecurePassword);
static member ChangePassword : string * System.Data.SqlClient.SqlCredential * System.Security.SecureString -> unit
Public Shared Sub ChangePassword (connectionString As String, credential As SqlCredential, newSecurePassword As SecureString)
Parametry
- connectionString
- String
Parametry połączenia zawierające wystarczającą ilość informacji, aby nawiązać połączenie z serwerem. Parametry połączenia nie powinny używać żadnych z następujących słów kluczowych parametrów połączenia: Integrated Security = true, UserIdlub Password; lub ContextConnection = true.
- credential
- SqlCredential
Obiekt SqlCredential.
- newPasswordnewSecurePassword
- SecureString
Nowe hasło.
newPassword musi być tylko do odczytu. Hasło musi być również zgodne z wszelkimi zasadami zabezpieczeń haseł ustawionymi na serwerze (na przykład minimalną długość i wymagania dotyczące określonych znaków).
Wyjątki
Parametry połączenia zawierają dowolną kombinację UserId, Passwordlub Integrated Security=true.
-lub-
Parametry połączenia zawierają Context Connection=true.
-lub-
newSecurePassword (lub newPassword) jest większy niż 128 znaków.
-lub-
newSecurePassword (lub newPassword) nie jest tylko do odczytu.
-lub-
newSecurePassword (lub newPassword) jest pustym ciągiem.
Jeden z parametrów (connectionString, credentiallub newSecurePassword) ma wartość null.
Zobacz też
Dotyczy
ChangePassword(String, String)
Zmienia hasło programu SQL Server dla użytkownika wskazanego w parametrach połączenia z określonym nowym hasłem.
public:
static void ChangePassword(System::String ^ connectionString, System::String ^ newPassword);
public static void ChangePassword(string connectionString, string newPassword);
static member ChangePassword : string * string -> unit
Public Shared Sub ChangePassword (connectionString As String, newPassword As String)
Parametry
- connectionString
- String
Parametry połączenia zawierające wystarczającą ilość informacji, aby nawiązać połączenie z żądanym serwerem. Parametry połączenia muszą zawierać identyfikator użytkownika i bieżące hasło.
- newPassword
- String
Nowe hasło do ustawienia. To hasło musi być zgodne z wszelkimi zasadami zabezpieczeń haseł ustawionymi na serwerze, w tym minimalną długością, wymaganiami dotyczącymi określonych znaków itd.
Wyjątki
Parametry połączenia obejmują opcję używania zintegrowanych zabezpieczeń.
Lub
newPassword przekracza 128 znaków.
Parametr connectionString lub newPassword ma wartość null.
Uwagi
W przypadku korzystania z programu SQL Server w systemie Windows Server możesz skorzystać z funkcji, która umożliwia aplikacji klienckiej podanie bieżącego i nowego hasła w celu zmiany istniejącego hasła. Aplikacje mogą implementować funkcje, takie jak monitowanie użytkownika o nowe hasło podczas początkowego logowania, jeśli stary wygasł, i tę operację można ukończyć bez interwencji administratora.
Ostrzeżenie
Firma Microsoft nie zaleca bezpośredniego podawania nazwy użytkownika i hasła, ponieważ jest to niezabezpieczony wzorzec. Jeśli to możliwe, należy użyć bezpieczniejszych przepływów uwierzytelniania, takich jak tożsamości zarządzane dla zasobów platformy Azurelub uwierzytelniania systemu Windows dla programu SQL Server.
Metoda ChangePassword zmienia hasło programu SQL Server dla użytkownika wskazanego w podanym parametrze connectionString na wartość podaną w parametrze newPassword. Jeśli parametry połączenia zawierają opcję zintegrowanych zabezpieczeń (czyli "Zintegrowane zabezpieczenia=True" lub równoważne), zgłaszany jest wyjątek.
Aby określić, że hasło wygasło, wywołanie metody Open zgłasza SqlException. Aby wskazać, że hasło zawarte w parametrach połączenia musi zostać zresetowane, właściwość Number dla wyjątku zawiera wartość stanu 18487 lub 18488. Pierwsza wartość (18487) wskazuje, że hasło wygasło, a drugi (18488) wskazuje, że hasło musi zostać zresetowane przed zalogowaniem.
Ta metoda otwiera własne połączenie z serwerem, żąda zmiany hasła i zamyka połączenie natychmiast po zakończeniu. To połączenie nie jest pobierane ani zwracane do puli połączeń programu SQL Server.
Zobacz też
- parametrów połączenia
(ADO.NET) - nawiązywanie połączenia ze źródłem danych (ADO.NET)
- Używanie dostawcy danych programu .NET Framework dla programu SQL Server
- ADO.NET — omówienie