4. LDAP クライアントをセキュア LDAP サービスに接続する

この記事の手順に沿って、LDAP クライアントをセキュア LDAP サービスに接続します。

重要:

  • ベンダーのドキュメントを確認する
    この記事で紹介する LDAP クライアントのセキュア LDAP サービスへの接続手順は変更される可能性があるため、あくまで参考用としてご利用ください。クライアントをセキュア LDAP サービスに接続する最新の手順については、このヘルプセンター記事のほか、ご利用のベンダーのドキュメントをご確認ください。
  • 始める前に
    手順を開始する前に、セキュア LDAP サービスへのクライアントの追加アクセス権限の設定クライアント証明書とキーのダウンロードアクセス認証情報の生成(省略可)が完了していることを確認してください。
  • 接続テスト
    これらの手順を開始する前に、必要に応じて ldapsearchADSIldp.exe といった平易なツールを使用して簡易的な接続テストを実施できます。これらのツールは、LDAP クライアントをサービスに接続しようとしてエラーが発生した場合のトラブルシューティングにも利用できます。テスト手順については、セキュア LDAP の接続テストをご覧ください。
  • 設定手順を完了する方法
    この記事の手順に沿って LDAP クライアントを接続したら、Google 管理コンソールでサービスのステータスを [オン] に切り替えて LDAP クライアントの設定を完了する必要があります。手順については、5. LDAP クライアントをオンにするをご覧ください。

この記事の内容

この記事は、以下の項目で構成されています。

以下の手順では、ダウンロードしたクライアント キーのファイルを ldap-client.key、証明書のファイルを ldap-client.crt と仮定します。

基本的な設定手順

ここでは、LDAP クライアントをセキュア LDAP サービスに接続するための一般的な手順について説明します。ご利用の LDAP クライアントが以下の手順に記載されていない場合は、該当するアプリケーションのドキュメントを参照してください。

注: Atlassian Jira や SSSD など、一部の LDAP クライアントの中にはユーザー認証中にそのユーザーに関する詳細情報を得るためにユーザー検索を実施するものがあります。このような LDAP クライアントでユーザー認証が正しく機能するようにするには、[ユーザー認証情報の確認] が有効になっているすべての組織部門で [ユーザー情報の読み取り] をオンにする必要があります(手順については、アクセス権限を設定するをご覧ください)。

LDAP クライアントをセキュア LDAP サービスに接続するには:

  1. Cloud Directory を使用して、LDAP クライアントを LDAP サーバーとして設定します。
  2. LDAP クライアントに証明書をアップロードします。


    セキュア LDAP サービスは、TLS クライアント証明書を主要な認証メカニズムとして使用します。証明書を LDAP クライアントにアップロードする手順を開始するには、LDAP クライアントの認証設定またはディレクトリ設定を開いて、下の表に記載された詳細情報を入力します。

    注: TLS 証明書をアップロードする方法とアップロード先の詳細については、ベンダーのドキュメントを参照してください。

基本的な接続情報については、次の表をご確認ください。

ホスト名

ldap.google.com

ポート

StartTLS を有効にした LDAP の場合は 389
LDAPS(SSL、TLS 対応)の場合は 636

ベース DN

DN 形式のドメイン。以下に例を示します。

example.comexample.com の場合は dc=example,dc=com

ユーザー名とパスワード

証明書による認証に加えて、一部の LDAP クライアントではユーザー名とパスワードを入力する必要があります。ユーザー名とパスワードの欄が必須でない場合は、この手順をスキップできます。

Google 管理コンソールでユーザー名とパスワードを生成します。手順については、アクセス認証情報を生成するをご覧ください。

クライアント証明書とキーファイル

Google 管理コンソールからダウンロードした証明書とキーファイルを使用します。LDAP クライアントがクライアント証明書で認証する方法をサポートしていない場合は、stunnel をプロキシとして使用するをご覧ください。

重要: Apache Directory Studio など一部の LDAP クライアントでは、デジタル証明書のアップロードをサポートしていません。この場合の対応方法については、stunnel をプロキシとして使用するをご覧ください。

特定の LDAP クライアントの設定手順

Java アプリケーションの設定手順

LDAP 機能を提供する Java ベースのアプリケーションは、多くの場合、アプリケーションのキーストアにクライアント証明書をインストールすることによって、クライアント証明書で認証するように設定できます。構成ファイルの内容はアプリケーションによって若干異なりますが、手順はほぼ同じです。セットアップを行うには、OpenSSL と Java Runtime Environment がインストールされている必要があります。

  1. 証明書とキーを Java キーストア形式に変換します。この操作中に、何度かパスワードを入力することになります。安全なパスワードを選び、入力を求められたら毎回同じパスワードを使用してください。以下の説明では、クライアント キーファイルの名前は ldap-client.key であると仮定します。

    macOS または Linux の場合は、次のコマンドを使用します。

    $  openssl pkcs12 -export -out java-application-ldap.pkcs12 -in ldap-client.crt -inkey ldap-client.key

    Windows の場合は、次のコマンドを使用します。

    $  certutil -mergepfx ldap-client.crt java-application-ldap.pkcs12

    重要: 2 つのファイル(<証明書ファイル>.crt と <証明書ファイル>.key)を同じディレクトリに配置する必要があります。また、key と crt の両方が同じ名前を持っていることを確認してください(拡張子のみが異なる)。この例では、ldap-client.crt と ldap-client.key という名前を使用します。
     

  2. 証明書をキーストアに読み込みます。

    $  keytool -v -importkeystore -srckeystore java-application-ldap.pkcs12 -srcstoretype PKCS12 -destkeystore java-application-ldap.jks -deststoretype JKS
     
  3. Java プロパティの設定方法は、アプリケーションによって異なります。多くの場合、起動に使用する「java」コマンドラインの -D オプションで設定できます。利用するアプリケーションの Java プロパティを次のように設定します。

    javax.net.ssl.keyStore = /<パス>/java-application-ldap.jks
    javax.net.ssl.keyStorePassword = <上の手順で選択したパスワード>

     
  4. 基本的な設定手順の情報を使用して、アプリケーションの LDAP 接続を設定します。

     

(省略可)stunnel をプロキシとして使用する

クライアントで LDAP の認証方法としてクライアント証明書を使えない場合は、stunnel をプロキシとして使用します。

LDAP サーバーにクライアント証明書を提供するように stunnel を設定し、stunnel に接続するようにクライアントを設定します。アプリケーションと同じサーバー上で stunnel を実行し、LDAP ディレクトリがそのサーバー外に公開されないようにローカルでのみリッスンすることをおすすめします。

手順は次のとおりです。

  1. stunnel をインストールします。たとえば、Ubuntu では次のように入力します。

    $  sudo apt-get install stunnel4
     
  2. 構成ファイル /etc/stunnel/google-ldap.conf を作成し、次の内容を記述します(ldap-client.crt が証明書、ldap-client.key がキーであると仮定します)。

    [ldap]
    client = yes
    accept = 127.0.0.1:1636
    connect = ldap.google.com:636
    cert = ldap-client.crt
    key =
    ldap-client.key
     
  3. stunnel を有効にするには、/etc/default/stunnel4 を編集して ENABLED=1 に設定します。
  4. stunnel を再起動します。

    $  sudo /etc/init.d/stunnel4 restart
     
  5. ldap://127.0.0.1:1636 を参照するようにアプリケーションを設定します。

    「1636」の代わりに別の未使用ポートを指定することもできます。その場合は、上述の構成ファイルの accept 行も変更してください。クライアントと stunnel はローカルで通信するため、両者の間では StartTLS / SSL / TLS を有効にせずに平文の LDAP を使用する必要があります。

注: 別のサーバーで stunnel を実行する場合は、必要なアプリケーションのみが stunnel サーバーにアクセスできるようにファイアウォールを設定する必要があります。TLS でリッスンするように stunnel を設定し、アプリケーションと stunnel サーバーの間でデータを暗号化することもできます。その場合の設定方法は、使用環境によって異なります。

次の手順

LDAP クライアントをセキュア LDAP サービスに接続したら、LDAP クライアントのサービスのステータスを [オン] に切り替える必要があります。

次の手順については、5. LDAP クライアントをオンに切り替えるをご覧ください。

注: LDAP クライアントをサービスに接続する際にエラーが発生した場合は、必要に応じて ldapsearchADSIldp.exe などのシンプルなツールを使用して問題の解決に当たることができます。手順については、接続テストとトラブルシューティングをご覧ください。

関連記事

この情報は役に立ちましたか?

改善できる点がありましたらお聞かせください。
8640343193599397736
true
ヘルプセンターを検索
true
true
true
true
true
73010
検索
検索をクリア
検索を終了
メインメニュー
false
false
false
false