[管理] メニューの [認証] セクションにある [LDAP] ページで、Lightweight Directory Access Protocol(LDAP)を介してユーザーを認証するように Looker を構成できます。このページでは、そのプロセスについて説明します。また、LDAP グループを Looker のロールと権限にリンクする手順も記載しています。
注意点:
- Looker の認証では、LDAP の「シンプル」な認証を使用します。匿名認証はサポートされていません。
- Looker が使用するユーザー エントリとあらゆるグループ エントリの読み取り権限が付与された単一の LDAP ユーザー アカウントを作成する必要があります。
- Looker は LDAP ディレクトリからのみ読み取りを行います(書き込みは不可)。
- Looker では、メールアドレスを使用して既存のアカウントを LDAP に移行できます。
- Looker API の使用は LDAP 認証とやり取りしません。
- LDAP サーバーにより IP トラフィックが制限されている場合は、LDAP サーバーの IP 許可リスト、または受信トラフィックのルールに、Looker の IP アドレスを追加してください。
- LDAP は 2 要素認証よりも優先されます。2 段階認証プロセスをすでに有効にしている場合、LDAP を有効にした後、2 段階認証プロセスのログイン画面はユーザーに表示されなくなります。
LDAP 認証を無効にする場合は注意が必要です。
LDAP を使用して Looker にログインしていて、LDAP 認証を無効にする場合は、まず次の手順の両方を行ってください。
- ログインするための他の認証情報があることを確認します。
- LDAP 設定ページで [代替ログイン] オプションを有効にします。
そうしない場合、ユーザー自身や他のユーザーが Looker からロックアウトされる可能性があります。
はじめに
Looker の [管理] セクションにある [LDAP 認証] ページに移動して、次の設定オプションを表示します。
接続を設定する
Looker では、クリアテキストの LADP と LDAP over TLS による転送と暗号化がサポートされています。TLS over TLS を使用することを強くおすすめします。StartTLS などの暗号化スキームはサポートされていません。
- [ホスト] と [ポート] の情報を入力します。
- LDAP over TLS を使用している場合は、[TLS] の横にあるチェックボックスをオンにします。
- LDAP over TLS を使用している場合、Looker はデフォルトでピア証明書の検証を適用します。ピア証明書の検証を無効にする必要がある場合は、[検証なし] をオンにします。
- [Test Connection] をクリックします。エラーが表示された場合は、修正してから先に進みます。
接続認証
Looker では、パスワードで保護された LDAP アカウントへのアクセスが必要です。LDAP アカウントには、ユーザー エントリと新しいロール エントリのセットに読み取りアクセス権が必要です。Looker LDAP アカウントには書き込みアクセス権(ディレクトリの他の部分へのアクセス権も)は必要ありません。また、アカウントが作成される名前空間は重要ではありません。
- パスワードを入力します。
- (省略可)LDAP プロバイダがページ分割された結果を提供しない場合は、[ページ分割なしを強制する] チェックボックスをオンにします。ユーザーの検索時に一致が見つからない場合、これが役立つ場合がありますが、このような問題の唯一の解決策ではありません。
- [認証のテスト] ボタンをクリックします。エラーが表示された場合は、認証情報が正しいことを確認してください。認証情報が有効であるにもかかわらずエラーが解決しない場合は、会社の LDAP 管理者にお問い合わせください。
ユーザー バインディングの設定
このセクションの詳細では、Looker がディレクトリ内のユーザーを検索し、認証用にバインドし、ユーザー情報を抽出する方法を指定します。
- すべてのユーザーの検索ツリーのベースとなるBase DN を設定します。
- (省略可)ユーザーオブジェクトクラスを指定します。これにより、Looker が検出して返す結果のタイプを制御します。これは、ベース DN がオブジェクト タイプ(ユーザー、グループ、プリンタなど)の組み合わせであり、1 つのタイプのエントリのみを返す場合に便利です。
- Login Attrs を設定します。これにより、ユーザーのサインインに使用する属性が定義されます。ユーザーごとに一意で、ユーザーがシステム内の ID として使い慣れているものである必要があります。たとえば、ユーザー ID や完全なメールアドレスを選択できます。複数の属性を追加すると、Looker は両方の属性を検索して適切なユーザーを見つけます。アカウントの重複につながる形式(姓名など)は使用しないでください。
- [Email Attr、First Name Attr および Last Name Attr を指定します。この情報により、ログイン時にこれらのフィールドをマッピングして情報を抽出する方法が Looker に指示されます。
- [ID Attr] を設定します。これは、Looker がユーザーの一意の ID として使用するフィールドを示します。これは通常、ログイン フィールドの 1 つになります。
- 必要に応じて、オプションのカスタム フィルタを入力します。これにより、LDAP 認証中にバインディングするユーザーを検索するときに適用される任意の LDAP フィルタを指定できます。これは、無効なユーザーや別の組織のユーザーなど、ユーザー レコードのセットを除外する場合に便利です。
例
この ldiff ユーザー エントリの例は、対応する Looker 設定を設定する方法を示しています。
Ldiff ユーザー エントリ
dn: cn=mward,ou=People,dc=example,dc=com
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
cn: mward
userpassword: normal
givenname: Marcus
telephonenumber: +1 408 555 5688
sn: Ward
mail: mward@example.com
ou: People
対応する Looker の設定
Base DN: ou=People,dc=looker,dc=com
User Object Class: person
Login Attrs: cn
Email Attr: mail
First Name Attr: givenname
Last Name Attr: sn
ID Attr: cn
LDAP ユーザー属性と Looker ユーザー属性のペアリング
必要に応じて、LDAP ユーザー属性のデータを使用して、ユーザーがログインするときに Looker のユーザー属性に値を自動的に入力できます。たとえば、データベースにユーザー固有の接続を行うように LDAP を構成した場合、LDAP ユーザー属性を Looker ユーザー属性と組み合わせて、Looker のデータベース接続をユーザー固有にすることができます。
LDAP 属性は、グループ属性ではなくユーザー属性である必要があります。
LDAP ユーザー属性と対応する Looker ユーザー属性をペアリングするには:
- [LDAP ユーザー属性] フィールドに LDAP ユーザー属性の名前を入力し、[Looker ユーザー属性] にペアに設定する Looker ユーザー属性の名前を入力します。
- ユーザーのサインインを許可するために LDAP 属性値を要求する場合は、[必須] をオンにします。
- [+] をクリックし、属性ペアを追加するためにこれらの手順を繰り返します。
テストユーザーの情報
- テストユーザーの認証情報を入力し、[ユーザー認証のテスト] ボタンをクリックします。Looker は完全な LDAP 認証シーケンスを試行し、その結果を表示します。成功すると、Looker はディレクトリからのユーザー情報と、認証プロセスに関するトレース情報を出力します。この情報は、構成の問題の解決に役立ちます。
- 認証が成功し、すべてのフィールドが正しくマッピングされていることを確認します。たとえば、
first_name
フィールドにlast_name
に属する値が含まれていないことを確認します。
グループとロール
Looker を構成して、外部管理の LDAP グループをミラーリングするグループを作成し、ミラーリングされた LDAP グループに基づいてユーザーに Looker ロールを割り当てることができます。LDAP グループのメンバーシップを変更すると、その変更が自動的に Looker のグループ構成に伝播されます。
LDAP グループをミラーリングすると、外部で定義された LDAP ディレクトリを使用して Looker グループとユーザーを管理できます。これにより、Looker などの複数の Software as a Service(SaaS)ツールのグループ メンバーシップを 1 か所で管理できます。
[LDAP グループのミラーリング] をオンにすると、Looker では、システムに導入された LDAP グループごとに 1 つの Looker グループが作成されます。これらの Looker グループは、Looker の [管理] セクションの [グループ] ページで確認できます。グループは、グループ メンバーへのロールの割り当て、コンテンツ アクセス制御の設定、ユーザー属性の割り当てに使用できます。
デフォルトのグループとロール
デフォルトでは、[LDAP グループのミラーリング] スイッチはオフになっています。この場合、新しい LDAP ユーザー用にデフォルトのグループを設定できます。[新しいユーザー グループ] と [新しいユーザー ロール] のフィールドに、新しい Looker ユーザーが Looker に初めてサインインするときに割り当てる Looker グループまたはロールの名前を入力します。
これらのグループとロールは、新しいユーザーの最初のログイン時に適用されます。このグループとロールは既存のユーザーには適用されません。ユーザーの最初のログイン後にユーザーから削除された場合は、再適用されません。
後でミラーリングされた LDAP グループを有効にすると、これらのデフォルトはユーザーの次回のログイン時に削除され、[LDAP グループのミラーリング] セクションで割り当てられたロールに置き換えられます。これらのデフォルトのオプションは使用できなくなり、割り当てられなくなります。また、ミラーリングされたグループ構成に完全に置き換えられます。
LDAP グループのミラーリングの有効化
Looker 内で LDAP グループをミラーリングする場合は、[LDAP グループのミラーリング] スイッチをオンにします。Looker に次の設定が表示されます。
Group Finder 戦略: プルダウンからオプションを選択して、ユーザーのグループを検索する方法を Looker に指示します。
Groups Have Member Attributes: より一般的なオプションです。グループ メンバーを検索する場合、Looker はユーザーが直接割り当てられているグループのみを返します。たとえば、ユーザーが Database-Admin グループのメンバーで、Database-Admin グループが Engineering グループのメンバーである場合、ユーザーには Database-Admin グループに関連付けられている権限のみが付与されます。
Groups Have Member Attributes(詳細な検索): このオプションを選択すると、グループを他のグループ(LDAP のネストされたグループとも呼ばれます)のメンバーにすることができます。つまり、ユーザーは複数のグループの権限を付与できます。たとえば、ユーザーがデータベース管理者グループのメンバーで、データベース管理者グループがエンジニアリング グループのメンバーである場合、ユーザーにはこれらのグループの両方に関連付けられた権限が付与されます。 一部の LDAP サーバー(特に Microsoft Active Directory)では、呼び出し元がシャロー検索のように動作している場合でも、このタイプのディープ検索を自動的に実行できます。これは、ディープ検索の実行に使用できる別の方法です。
Base DN: 検索範囲を狭めることができます。このドキュメント ページの [ユーザー バインディングの設定] セクションで指定した [Base DN] と同じでもかまいません。
Groups Object Classes: この設定は省略可能です。ユーザー バインディングの設定セクションで説明したように、これにより、Looker が返す結果を特定のオブジェクト タイプまたはタイプセットに制限できます。
Group Member Attr: 各グループについて、メンバーであるオブジェクト(この場合はおそらく人)を決定する属性。
Group User Attr: ユーザーがグループ内のユーザーかどうかを判別するために、グループ エントリ内で値を検索する LDAP ユーザー属性の名前。デフォルトは dn
です(空白のままにすると dn
と同じになります)。この場合、LDAP では完全な識別名が使用されます。これは、LDAP 検索自体に存在する、大文字と小文字が区別される正確な文字列で、グループ エントリを検索します。
優先グループ名 / ロール / グループ DN: この一連のフィールドにより、Looker で対応する LDAP グループに割り当てられたカスタム グループ名と 1 つ以上のロールを割り当てることができます。
[グループ DN] フィールドに LDAP グループの DN を入力します。これには、完全な識別名が含まれている必要があります。これは、LDAP 検索自体に存在する、大文字と小文字が区別される正確な文字列です。LDAP グループに含まれる LDAP ユーザーは、Looker 内のミラーリングされたグループに追加されます。
[Custom Name] フィールドに、ミラーリングするグループのカスタム名を入力します。これは、Looker の [管理] セクションの [グループ] ページに表示される名前です。
[カスタム名] フィールドの右側にあるフィールドで、グループ内の各ユーザーに割り当てる 1 つ以上の Looker ロールを選択します。
追加のミラーリング対象のグループを構成するフィールドを追加するには、
+
をクリックします。複数のグループを構成していて、グループの構成を削除するには、そのグループのフィールド セットの横にあるX
をクリックします。
以前にこの画面で構成したミラーリング対象のグループを編集すると、グループの構成は変更されますが、グループ自体はそのまま残ります。たとえば、グループのカスタム名を変更すると、Looker の [グループ] ページでのグループの表示方法は変わりますが、割り当てられたロールやグループ メンバーは変更されません。グループ DN を変更するとグループ名とロールが維持されますが、新しい LDAP グループ DN を持つ外部 LDAP グループのメンバーであるユーザーに基づいて、グループのメンバーが再割り当てされます。
このページでグループを削除すると、そのグループは Looker にミラーリングされなくなり、そのメンバーには、グループを介してメンバーに割り当てられた Looker のロールがなくなります。
ミラーリング対象のグループに対して行われた編集は、そのグループのユーザーが次に Looker にサインインするときに適用されます。
高度なロール管理
[LDAP グループのミラーリング] スイッチを有効にしている場合、Looker によってこれらの設定が表示されます。このセクションのオプションは、Looker グループと Looker からミラーリングされたユーザーの構成時に Looker 管理者がどの程度の柔軟性があるかを決定します。
たとえば、Looker のグループとユーザーの構成を LDAP の構成と厳密に一致させる場合は、これらのオプションをオンにします。最初の 3 つのオプションをすべて有効にすると、Looker 管理者はミラーリングされたグループのメンバーシップを変更できず、LDAP のミラーリングされたグループを介したユーザーにのみロールを割り当てることができます。
Looker 内でグループをさらに柔軟にカスタマイズする場合は、これらのオプションをオフにします。Looker グループは引き続き LDAP 構成をミラーリングしますが、Looker のグループに LDAP ユーザーを追加することや、LDAP ユーザーに Looker のロールを直接割り当てるなど、Looker 内で追加のグループやユーザー管理機能を使用することができます。
新しい Looker インスタンス、またはミラーリングされたグループをまだ構成していないインスタンスの場合、これらのオプションはデフォルトで無効になっています。
ミラーリング対象のグループが設定されている既存の Looker インスタンスの場合、これらのオプションはデフォルトでオンになっています。
[高度なロール管理] には、次のオプションがあります。
個々の SAML ユーザーが直接ロールを受け取れないようにする: このオプションをオンにすると、Looker 管理者は Looker ロールを LDAP ユーザーに直接割り当てることができなくなります。LDAP ユーザーにロールを割り当てることができるのは、グループ メンバーシップのみです。LDAP ユーザーがビルトイン(ミラーリングされていない)Looker グループでメンバーシップを許可されている場合でも、ミラーリング対象の LDAP グループとビルトイン Looker グループの両方からロールを継承できます。以前に直接ロールが割り当てられた LADP ユーザーは、次回のサインイン時にそのロールが削除されます。
このオプションをオフにすると、Looker 管理者は、ユーザーが Looker でビルトイン に構成されたユーザーであるかのように、Looker のロールを LDAP ユーザーに直接割り当てることができます。
非 LDAP グループでの直接メンバーシップを防止する: このオプションをオンにすると、Looker 管理者は、ビルトイン Looker グループに直接 LDAP ユーザーを追加できなくなります。ミラーリングされた LDAP グループをビルトイン Looker グループのメンバーにできる場合、LDAP ユーザーは親の Looker グループでのメンバーシップを保持できます。以前に組み込みの Looker グループに割り当てられた LDAP ユーザーは、次回のサインイン時にそれらのグループから削除されます。
このオプションをオフにすると、Looker 管理者はビルトイン Looker グループに直接 LDAP ユーザーを追加できます。
非 LDAP グループからロールの継承を防止する: このオプションをオンにすると、ミラーリングされた LDAP グループのメンバーは、ビルトイン Looker グループからロールを継承できなくなります。以前に親 Looker グループからロールを継承していた LDAP ユーザーは、次回のサインイン時にそのロールを失います。
このオプションをオフにすると、ミラーリングされた LDAP グループ、またはビルトイン Looker グループのメンバーとして追加された LDAP ユーザーは、親 Looker グループに割り当てられたロールを継承します。
認証にはロールが必要: このオプションがオンの場合、LDAP ユーザーにロールが割り当てられている必要があります。ロールが割り当てられていない LDAP ユーザーは Looker にログインできません。
このオプションがオフの場合、ロールが割り当てられていない場合でも、LDAP ユーザーは Looker に対して認証を行うことができます。ロールが割り当てられていないユーザーは、Looker でデータを表示したり操作したりすることはできませんが、Looker にログインすることはできます。
LDAP グループのミラーリングの無効化
Looker 内での LDAP グループのミラーリングを停止するには、[LDAP グループのミラーリング] スイッチをオフにします。空の LDAP グループのミラーリングは削除されます。
空でない LDAP グループのミラーリングは、引き続きコンテンツ管理とロール作成で使用できます。ただし、LDAP グループのミラーリングにユーザーを追加または削除することはできません。
移行と統合のオプション
管理者と指定ユーザーの代替ログイン
- 管理者と
login_special_email
権限を持つユーザーに代替のメールベースのログインを許可します(この権限の設定の詳細については、ロールのドキュメントをご覧ください)。このオプションを有効にしていて、ユーザーが適切な権限を持っている場合、このオプションは Looker のログイン ページに表示されます。 - このオプションは、後で LDAP 構成の問題が発生した場合、または LDAP ディレクトリにない一部のユーザーをサポートする必要がある場合に、LDAP 設定時のフォールバックとして役立ちます。
- LDAP が有効になっている場合、通常のユーザーに対して Looker のメール / パスワードのログインは常に無効になります。
メールで統合する
- このオプションを使用すると、Looker はメールアドレスに基づいて、初めて LDAP を使用するユーザーを既存の Looker アカウントと統合できます。
- 一致するメールアドレスが Looker で見つからない場合は、ユーザーに新しいアカウントが作成されます。
設定を保存して適用
情報の入力が完了し、すべてのテストに合格したら、[上記の構成を確認しました。グローバルに適用したいと考えています] チェックボックスをオンにし、[設定を更新] をクリックして保存します。