定義
db.changeUserPassword(username, password)ユーザーのパスワードを更新します。ユーザーが定義されているデータベース、つまりユーザーを
createdしたデータベースでメソッドを実行します。重要
mongosh メソッド
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.データベースコマンドについては、
updateUserコマンドを参照してください。MongoDB API ドライバーについては、各言語の「MongoDB ドライバーのドキュメント」を参照してください。
Parameterタイプ説明usernamestring
パスワードを変更するユーザーの名前。
passwordstring
ユーザーのパスワード。値は次のいずれか:
クリアテキスト文字列のユーザーのパスワード
passwordPrompt()で、ユーザーのパスワードの入力を求めるpasswordPrompt()メソッドを様々なユーザー認証管理メソッドやコマンドと組み合わせて使用すると、メソッドやコマンドの呼び出しでパスワードを直接指定する代わりに、パスワードの入力を求めるプロンプトが表示されます。ただし、以前のバージョンのmongoシェルと同様に、パスワードを直接指定することもできます。
writeConcernドキュメント
任意。 操作の 書込み保証( write concern ) のレベル。 詳しくは、 書込み保証(write concern) の仕様を参照してください。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
重要
このコマンドは、MongoDB Atlas クラスターではサポートされていません。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
必要なアクセス権
データベース上の別のユーザーのパスワードを変更するには、そのデータベースの changePassword アクションが必要です。
動作
警告
By default, db.changeUserPassword() sends all specified data to the MongoDB instance in cleartext, even if using passwordPrompt(). Use TLS transport encryption to protect communications between clients and the server, including the password sent by db.changeUserPassword(). For instructions on enabling TLS transport encryption, see Configure MongoDB Instances for TLS/SSL Encryption.
MongoDB では、クリアテキストのパスワードはストアされません。パスワードが脆弱になるのは、クライアントとサーバー間の転送時と、TLS 転送暗号化が有効になっていない場合のみです。
例
次の操作では、products データベース内の accountUser という名前のユーザーのパスワードを SOh3TbYhx8ypJPxmt1oOfL に変更しています。
Tip
passwordPrompt() メソッドを様々なユーザー認証管理メソッドやコマンドと組み合わせて使用すると、メソッドやコマンドの呼び出しでパスワードを直接指定する代わりに、パスワードの入力を求めるプロンプトが表示されます。ただし、以前のバージョンの mongo シェルと同様に、パスワードを直接指定することもできます。
use products db.changeUserPassword("accountUser", passwordPrompt())
When prompted in mongosh for the password, enter the new password.
You can also pass the new password directly to db.changeUserPassword():
use products db.changeUserPassword("accountUser", "SOh3TbYhx8ypJPxmt1oOfL")