sp_password (Transact-SQL)

適用対象:SQL Server

Microsoft SQL Server ログインのパスワードを追加または変更します。

重要

この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 代わりに ALTER LOGIN を使用してください。

Transact-SQL 構文表記規則

構文

  
sp_password [ [ @old = ] 'old_password' , ]  
     { [ @new =] 'new_password' }  
     [ , [ @loginame = ] 'login' ]  

引数

[ @old = ] 'old_password' 古いパスワードです。 old_passwordは sysname で、既定値は NULL です。

[ @new = ] 'new_password' 新しいパスワードです。 new_passwordは sysname で、既定値はありません。 名前付きパラメーターを使用しない場合は、old_passwordを指定する必要があります。

重要

NULL パスワードは使用しないでください。 強力なパスワードを使用してください。 詳細については、「 Strong Passwords」を参照してください。

[ @loginame = ] 'login' パスワードの変更の影響を受けるログインの名前を指定します。 login のデータ型は sysname で、既定値は NULL です。 ログインは既に存在している必要があり、sysadmin または securityadmin 固定サーバー ロールのメンバーのみが指定できます。

リターン コードの値

0 (成功) または 1 (失敗)

解説

sp_passwordは ALTER LOGIN を呼び出します。 このステートメントでは、追加のオプションがサポートされています。 パスワードの変更については、ALTER LOGIN (Transact-SQL) を参照してください

sp_passwordは、ユーザー定義トランザクション内では実行できません。

アクセス許可

ALTER ANY LOGIN 権限が必要です。 古いパスワードを指定しないでパスワードをリセットする場合、または変更されるログインに CONTROL SERVER 権限がある場合は、CONTROL SERVER 権限も必要です。

プリンシパルは、独自のパスワードを変更できます。

A. 古いパスワードを知らずにログインのパスワードを変更する

次の例では、ALTER LOGIN を使って、Victoria ログイン用のパスワードを B3r1000d#2-36 に変更します。 可能であればこの方法の使用をお勧めします。 このコマンドを実行しているユーザーには、CONTROL Standard Edition RVER 権限が必要です。

ALTER LOGIN Victoria WITH PASSWORD = 'B3r1000d#2-36';  
GO  

B. パスワードの変更

次の例は、ログインVictoriaB3r1000d#2-36V1cteAmanti55imEALTER LOGINパスワードを変更する方法を示しています。 可能であればこの方法の使用をお勧めします。 ユーザー Victoria は、追加の権限を取得しなくてもこのコマンドを実行できます。 他のユーザーには ALTER ANY LOGIN 権限が必要です。

ALTER LOGIN Victoria WITH   
     PASSWORD = 'V1cteAmanti55imE'   
     OLD_PASSWORD = 'B3r1000d#2-36';  
GO  

参照

セキュリティ ストアド プロシージャ (Transact-SQL)
ALTER LOGIN (Transact-SQL)
CREATE LOGIN (Transact-SQL)
sp_addlogin (Transact-SQL)
sp_adduser (Transact-SQL)
sp_grantlogin (Transact-SQL)
sp_revokelogin (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)