Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
Ruby ドライバー
/ /

Kerberos (GSSAPI)

ジェネリック セキュリティ サービスAPI (GSSAPI)認証メカニズムを使用すると、プリンシパル名を使用して Kerberos サービスに認証できます。 このメカニズムはMongoDB Enterprise Advancedに認証する場合にしか使用できません。

このページのコード例では、次のプレースホルダーを使用します。

  • <username>: LDAP username.

  • <hostname>: MongoDBデプロイのネットワーク アドレス 。

  • <port>: MongoDBデプロイのポート番号。このパラメーターを省略すると、ドライバーはデフォルトのポート番号(27017)を使用します。MongoDB Atlasクラスターに接続するときに、ポート番号を指定することは任意です。

  • <authentication_db>: ユーザーの LDAP 認証情報を含むMongoDBデータベース 。このパラメーターを省略すると、ドライバーはデフォルトのデータベース(admin)を使用します。

このページのコード例を使用するには、これらのプレースホルダーを独自の値に置き換えます。

Kerberos を使用するようにMongoDB Serverを構成する方法について詳しくは、MongoDB Server Kerberos のドキュメントを参照してください。

Rubyドライバーで Kerberos認証メカニズムを使用するには、mongo_kerberos ライブラリをインストールしてロードする必要があります。そのためには、Gemfile に次の行を追加します。

gem 'mongo', '~> 2'
gem 'mongo_kerberos', '~> 2'

次に、アプリケーションコードに次の行を追加します。

require 'mongo'
require 'mongo_kerberos'

注意

Kerberos認証を使用する場合は、ホストの完全修飾ドメイン名(FQDN)を指定する必要があります。

次のセクションでは、 Ruby MRI と JRuby で Kerberos認証を使用する方法について説明します。

Ruby MRI で Kerberos認証を使用している場合は、次の手順を実行する必要があります。

  • ドライバーで Kerberos セッションを確立します。ドライバーはこのセッションを使用して、サーバーにユーザーの ID を証明します。

  • ホスト システムが Kerberos認証用に構成されていることを確認する必要があります。Kerberos を使用するようにホスト システムを構成する方法の詳細については、Kerberos のドキュメント または オペレーティング システムのドキュメント を参照してください。

Kerberos セッションを確立するには、 Kinit ユーティリティを使用します。

JRuby で Kerberos認証を使用している場合は、MRI に対して上記で説明したプロセスを使用して、ドライバーへの Kerberos セッションを外部で確立できます。また、 java.security.auth.login.config システムプロパティに構成を保存して、キータブファイルへのパスを指定することもできます。また、Kerberos を使用するようにJavaランタイム環境も構成する必要があります。詳細については、 MongoDB Javaドライバー Kerberos のドキュメント を参照してください。

Kerberos認証を使用してMongoDBに接続するための対応する構文を確認するには、Connection String タブまたは Client Optionsタブを選択します。

client = Mongo::Client.new("mongodb://<username>@<hostname>[:<port>]/<authentication_db>?authMechanism=GSSAPI")
client = Mongo::Client.new(['<hostname>[:<port>]'],
auth_mech: :gssapi,
user: '<username>')

注意

接続文字列を使用してMongoDBに接続する場合は、ユーザー名に現れる特殊文字をパーセント エンコードしていることを確認してください。

このページで説明するメソッドやタイプの詳細については、次のAPIドキュメントを参照してください。

戻る

LDAP (PLAIN)

項目一覧