SCRAM
Overview
Salted Challenge Response Authentication Mechanism(SCRAM)は、チャレンジ レスポンス メカニズムを使用してユーザーを認証する認証メカニズムのファミリーです。 SCRAM-SHA-256 は、SHA-256 アルゴリズムを使用してパスワードをハッシュするコマンドであり、 MongoDB Serverバージョン4.0 以降のデフォルトの認証メカニズムです。代わりに1 SHA- アルゴリズムを使用する SCRAM-SHA- が、1 より前のバージョンのMongoDB Serverのデフォルトの認証メカニズムです。4.0
SCRAM を使用して、 MongoDB Atlas、 MongoDB Enterprise Advanced、 MongoDB Community Edition を認証できます。
Tip
SCRAM メカニズム
SCRAM ファミリーの認証メカニズムの詳細については、 Wikipedia の RFC5802 および Salted Challenge Response 認証メカニズムを参照してください。
MongoDBの SCRAM実装の詳細については、 MongoDB Serverマニュアルの「 SCRAM 」を参照してください。
コード プレースホルダー
このページのコード例では、次のプレースホルダーを使用します。
+srv
: MongoDB Atlasクラスターに接続している場合にのみ、このオプションを接続文字列のプレフィックスに含めます。+srv
オプションの詳細については、 MongoDB Serverマニュアルの「 接続文字列形式 」を参照してください。<db_username>
: 認証するユーザーのMongoDBユーザー名。<db_password>
: 認証するユーザーのMongoDBパスワード。<hostname>
: MongoDBデプロイのネットワーク アドレス。<port>
: MongoDBデプロイのポート番号。このパラメーターを省略すると、ドライバーはデフォルトのポート番号(27017
)を使用します。 MongoDB Atlasクラスターに接続する場合、ポート番号は必要ありません。<authenticationDb>
: ユーザーの認証データが含まれるMongoDBデータベース 。このパラメータを省略すると、ドライバーはデフォルト値のadmin
を使用します。
このページのコード例を使用するには、これらのプレースホルダーを独自の値に置き換えます。
アプリケーションでの SCRAM 認証の使用
SCRAM を使用してMongoDBユーザーを認証するには、 MongoDBの認証情報を指定しますが、認証メカニズムは指定しない でください。 MongoDBの認証情報は、接続文字列内または MongoCredential
オブジェクトを使用して指定できます。対応する構文を確認するには、 Connection String タブまたは MongoCredentialタブを選択します。
var mongoClient = new MongoClient( "mongodb[+srv]://<db_username>:<db_password>@<hostname>[:<port>]/?" + "authSource=<authenticationDb>");
var credential = MongoCredential .CreateCredential("<authenticationDb>", "<db_username>", "<db_password>"); var settings = MongoClientSettings.FromConnectionString("<connection string>"); settings.Credential = credential; var mongoClient = new MongoClient(settings);
API ドキュメント
このページで説明するメソッドやタイプの詳細については、次のAPIドキュメントを参照してください。