Docs Menu

SCRAM

Salted Challenge Response Authentication Mechanism(SCRAM)は、チャレンジ レスポンス メカニズムを使用してユーザーを認証する認証メカニズムのファミリーです。SHA-256アルゴリズムを使用してパスワードをハッシュする SCRAM-SHA-256 は、 MongoDB Serverバージョン 4.0 以降のデフォルトの認証メカニズムです。 代わりに SHA-1アルゴリズムを使用する SCRAM-SHA-1 が、4.0 より前のバージョンのMongoDB Serverのデフォルトの認証メカニズムです。

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 を使用して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ドキュメントを参照してください。