Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

LDAP の使用

Caché は、LDAP (Lightweight Directory Access Protocol) を使用した認証および承認をサポートします。LDAP システムには、Caché が情報を取得するユーザ情報の一元管理リポジトリがあります。例えば Windows の場合、Active Directory を使用するドメイン・コントローラが LDAP サーバになります。つまり、このタイプの Windows ドメインで実行する Caché インスタンスは、その認証に LDAP を使用できます。インスタンスで LDAP 認証が使用されている場合、LDAP 承認を使用するオプションもあります。

この章では、以下の項目について説明します。

アウトバウンド LDAP 接続の保護に関する注意

この章では、Caché 接続時の認証および承認のための LDAP の使用について説明します。Caché から LDAP サーバへアウトバウンド接続を確立しようとし、その接続を保護する必要がある場合、Caché ではこのための TLS がサポートされています。これは InitOpens in a new tab メソッド向けコンテンツの、%SYS.LDAPOpens in a new tab のクラス・ドキュメントで説明します。

Cach での LDAP 使用の概要

Caché サービスまたはアプリケーションを構成して、認証 (およびオプションの承認) に既存の LDAP サーバを使用する手順は以下のとおりです。

  1. 登録されている LDAP プロパティを使用するように LDAP サーバを構成します

  2. [LDAP オプション] ページで、LDAP サーバを使用するように Caché を構成します。ここで、Caché ユーザのプロパティの値を設定するために使用する LDAP ユーザのプロパティ名を指定します。

  3. LDAP を使用できるように Caché を設定します。この設定では、Caché のインスタンス全体で LDAP を有効にして、関連するサービスやアプリケーションに対して LDAP を有効にします。

Note:

この章では、認証と承認の両方に対する LDAP の使用について主に説明します。OS ベースの認証と LDAP 認証の併用に関する詳細は、"LDAP 認証と OS ベースの認証の併用" のセクションを参照してください。

LDAP 認証を使用する Caché のインスタンスに対して認証を試行するプロセスは以下のようになります。

  1. ユーザは、ユーザ名とパスワードの入力を要求されます。この認証を試行するユーザは “ターゲット・ユーザ” と呼ばれます。

  2. LDAP username to use for searches および LDAP username password に指定された値を使用して、Caché から LDAP サーバへの接続が確立されます。LDAP データベースを検索して Caché で情報を取得する特権を持つユーザは “検索ユーザ” と呼ばれます。

  3. 接続が確立されると、LDAP Unique search attribute を使用してLDAP データベース内のユーザが検索されます

  4. LDAP データベース内にターゲット・ユーザが見つかると、そのユーザに関連付けられた属性 (ユーザの初期ロールおよびネームスペースなど) が取得されます。

  5. その後で、Caché は LDAP データベースに対してユーザの認証を試行します。このとき、手順 1 で入力したユーザ名とパスワードが使用されます。

  6. 認証に成功すると、ユーザは、そのロールおよび公開されている利用可能なリソースに関連付けられた特権に基づいて Caché と対話できるようになります。管理ポータルに表示されるユーザのプロパティは読み取り専用です。Caché から編集することはできません (これらの情報はすべて Caché の外部から取得されるため)。

Caché で LDAP を使用する際の注意事項

Caché で LDAP を使用する際には、以下の点に注意してください。

  • 認証および承認の要件がより複雑な場合、代行認証を使用して、LDAP サーバによる認証を行うことも可能です。そのためには、ZAUTHENTICATE ルーチンのカスタム認証コードの中で %SYS.LDAPOpens in a new tab クラスを呼び出す必要があります。このようなアクションを実行するサンプル・コードは、SAMPLES ネームスペースの LDAP.mac ルーチンを参照してください。代行認証および ZAUTHENTICATE ルーチンの詳細は、“代行認証” の章を参照してください。

  • Caché は LDAP バージョン 3 プロトコルをサポートします。それ以前の LDAP プロトコルはサポートしません。

  • UNIX® の認証で Caché の LDAP API を使用していて、詳細なデバッグ情報が必要な場合、OpenLDAP パッケージの一部である ldapsearch プログラムを使用できます。認証に関する問題を修正すると、Caché LDAP API も修正されます。ldapsearch プログラムは、LDAP 接続の他の問題のデバッグにも役に立つ場合があります。

  • 別のメカニズムを通して認証情報を収集した後で LDAP への認証を行うまたは Caché 認証を使用する必要がある場合は、これらの認証情報を使用して $SYSTEM.Security.Login を呼び出してユーザを認証します。

LDAP 承認の使用法

LDAP を使用した認証の実行に加え、Caché では LDAP 承認がサポートされます。Caché で LDAP 承認を実行する場合、LDAP グループを使用することをお勧めします。

LDAP グループは、LDAP または Active Directory サーバを使用してユーザへ特権を割り当てる方法です。グループの名前は、ローカル LDAP サーバ上のスキーマにより指定されます。通常、ローカル LDAP 管理者がその名前を定義します (ただし、Caché では、以下で説明する事前定義された名前構造が使用されます)。各グループには、一意に識別できる識別名 (DN) があります。さらに、LDAP グループに各ユーザを割り当てることができ、次にそのグループにより、Caché のロール、ルーチン、およびネームスペースへのユーザのアクセスが決定されます(LDAP サーバ上でこれらグループを定義する際、それらはディストリビューション・グループとしてではなく、セキュリティ・グループとして作成される必要があります)。

Caché´ では、事前定義されたグループ名の構造が 3 つサポートされています。これらの構造はそれぞれ、グループの接頭語を使用します。接頭語は intersystems-Role-intersystems-Namespace-、および intersystems-Routine- であり、intersystems-Role-role-nameintersystems-Namespace-namespace-name、および intersystems-Routine-routine-name の形式でグループ名を一致させます。また、これらの名前により、それぞれ初期ロール、初期ネームスペース、および初期ルーチンのグループが指定されます。この機能を使用するには、名前がこの構造に従っている必要があります (名前では、大文字と小文字が区別されません)。

Note:

ユーザは 1 つのルーチン・グループと 1 つ のネームスペース・グループにのみ属することができます。

例えば、ユーザが以下のようにグループを定義したとします。

CN=intersystems-Role-Admin,OU=Groups,OU=Brasilia,DC=mysite,DC=com
CN=intersystems-Role-%Operator,OU=Groups,OU=Brasilia,DC=mysite,DC=com
CN=intersystems-Namespace-USER,OU=Groups,OU=Brasilia,DC=mysite,DC=com
CN=intersystems-Routine-INTEGRIT,OU=Groups,OU=Brasilia,DC=mysite,DC=com 

この場合、ログイン後、ユーザは Admin および %Operator ロールを取得し、既定のネームスペースは USER、既定のルーチンは INTEGRIT になります。

ユーザがこの形式の名前を持つどのグループにも属していない場合、Caché によりユーザのその属性の値が "" に設定されます。したがって、ユーザが intersystems-Routine- をグループ名の最初の部分として定義するグループのメンバでない場合、Caché によりそのユーザの起動ルーチンが "" に設定されます (また、Caché によりユーザはプログラマ・モードで配置されます)。ユーザのロールを指定するグループにユーザが割り当てられているが、ユーザがログインしているインスタンスでそのロールが定義されていない場合、ユーザはそのインスタンスでそのロールを持たないことになります。

例えば、ユーザが以下のグループに属しているとします。

intersystems-Role-Admin
intersystems-Role-Application1
intersystems-Role-Application2

Application2 ロールが、ユーザがログインするシステムで定義されていない場合、Caché では Admin および Application1 ロールのみが割り当てられます。

Note:

ロール、ルーチン、およびネームスペース定義の管理には、ユーザ定義の属性ではなく、LDAP グループの使用をお勧めしますが、Caché ではユーザ定義の属性の使用がサポートされます

ログインに必要なロールの設定

LDAP 認証または OS ベースの LDAP 認証を使用している場合 (特に、組織に複数の Caché インスタンスがある場合)、各インスタンスには接続の際に必要になるロールを設定することを強くお勧めします。

  1. インスタンスごとに、ログインに必要なロールを作成します。この作業は、“ロール” の章の “ロールの作成” の手順に従って実行します。

  2. インスタンスごとに、新しく作成したロールを [システムセキュリティ設定] ページの [このシステムに接続するのに必要なロール] フィールド ([システム管理][セキュリティ][システム・セキュリティ][システムワイドセキュリティパラメータ]) に入力します。

  3. 新しく作成したロールの名前が含まれている intersystems-Role-rolename 形式の名前の LDAP グループを追加します。

このメカニズムにより、ユーザが十分な特権を持っていないインスタンスにはアクセスできないようにします。このようにしていないと、あるインスタンスに対して各種のロールを持っているユーザは、意図していないインスタンスに対して同じロールを持つ可能性があります。

Important:

[このシステムに接続するのに必要なロール] フィールドを空のままにすると、十分な汎用の特権を持つユーザは、OS ベースの LDAP 認証を使用するシステムに接続してアクセスできます (そのユーザに、ログインするための十分なロールが割り当てられている場合)。

例えば、2 つのシステム TESTPRODUCTION があるとします。それらのプロダクションのセキュリティを個別に確保するには、TEST に対して TESTACCESS というロールを作成し、PRODUCTION に対して PRODUCTIONACCESS というロールを作成します。TEST では、[このシステムに接続するのに必要なロール] フィールドの値に TESTACCESS を設定します。PRODUCTION では、このフィールドの値に PRODUCTIONACCESS を設定します。その後で、TEST システムへのアクセスのみをユーザに許可する場合は、そのユーザに TESTACCESS ロールのみを割り当てて、PRODUCTIONACCESS ロールは割り当てないようにします。両方のシステムにアクセスできるユーザには、PRODUCTIONACCESS ロールと TESTACCESS ロールの両方を割り当てます。

入れ子になったグループの使用

Active Directory で、LDAP グループ は入れ子になったグループと呼ばれるものをサポートします。入れ子になったグループは、2 番目のグループのメンバであるグループです。つまり、入れ子になったグループのメンバであるすべてのユーザは、2 番目のグループのメンバでもあります。例えば、ABC と DEF と呼ばれる 2 つの LDAP グループが定義されているとします。ABC グループを DEF グループのメンバにすることができます。つまり、ユーザが ABC グループのメンバである場合、そのユーザは明示的に DEF グループに割り当てられることなく、このグループのメンバにもなります。

Note:

ローカル LDAP データベースの構造およびサイズにより、入れ子になったグループの使用によってユーザのログイン時間が遅くなることがあります。そのため、LDAP サーバを使用するための Caché の構成時に、[入れ子になったグループでロール、ルーチン、ネームスペースを検索する] を選択すると、パフォーマンスに影響することがあります。これを選択すると、入れ子になったグループが返され、ログインが遅くなり、選択しなければ、入れ子になったグループは返されず、ログインは速くなります。

LDAP サーバを使用するための Caché の構成

このセクションでは、以下のトピックについて説明します。

Caché における LDAP の構成情報の指定

Cachéで LDAP 認証を使用するには、まず LDAP サーバとやり取りするように Caché を構成します。これには、以下の操作の実行に必要な情報が含まれます。

  • LDAP サーバに接続し、クエリを実行します。

  • 認証するユーザについて必要な情報を取得します。

この情報はすべて、管理ポータルの [LDAPオプション] ページ ([システム管理] > [セキュリティ] > [システム・セキュリティ] > [LDAPオプション]) で指定します。

このページが初めて表示されるときは、[LDAP認証を許可] フィールドのみが表示されます。このフィールドにチェックを付けると、Caché インスタンスと LDAP サーバの接続に関する構成情報のフィールドがすべて表示されます (既定では False です)。標準セットのフィールドと、カスタマイズするフィールドがあります。Caché が LDAP サーバに接続すると、その情報に関するさまざまなフィールドを参照します。エンド・ユーザも同様の動作を行えます。フィールドは以下のとおりです。

  • [LDAP サーバは Windows Active Directory サーバ]Windows のみ。LDAP サーバが Windows Active Directory サーバであるかどうかを指定します (既定では True です)。

  • [LDAPドメイン名]Windows のみ。LDAP サーバがあるドメインの名前を指定します。このフィールドは、Windows Active Directory サーバの場合のみ編集可能になります。このフィールドには、現在の LDAP サーバの DNS 名の IPアドレスに基づいた値が入力されています。

  • [LDAP ホスト名] — LDAP サーバが動作しているホストの名前 (複数可) を指定します。ホスト名の複雑さは、未修飾のホスト名から、ポート番号を持つ完全修飾ホスト名まで多岐にわたります。ホスト名の必要な形式は、その構成により異なります。このフィールドには、現在の LDAP サーバの DNS 名の IPアドレスに基づいた値が入力されています。

    複数のホスト名を指定する場合は、名前を空白で区切ります。LDAP サーバが特定のポートを使用するように構成されている場合、ホスト名に “:portname” を追加してそれを指定できます。一般的には、ポートは指定せず、以下のように、LDAP 機能で既定のポートを使用するようにします。

    ldapserver.example.com
    ldapserver.example.com ldapbackup.example.com
    
  • LDAP 検索情報 — オペレーティング・システムにより異なります。

    • [検索に使用するLDAPユーザ名]Windows のみ。初期接続を確立し、LDAP 検索の実行に使用するために LDAP サーバに提供されるユーザ名です。このユーザは “検索ユーザ” とも呼ばれます。

      検索ユーザには、LDAP データベース全体の読み取り許可が必要です。検索ユーザの LDAP データベースへのアクセスは遮られないようにすることが重要です。例えば、これを Windows 上で実現する場合、User cannot change passwordPassword never expires 属性を設定し、Account expires 属性の値を Never に設定します。

      LDAP データベースの検索の詳細は、“LDAP データベースの検索” を参照してください。

    • [検索に使用するLDAPDN]UNIX® のみ。初期接続を確立し、LDAP 検索の実行に使用するために LDAP サーバに提供されるユーザの識別名 (DN) です。このユーザは “検索ユーザ” とも呼ばれます。

      検索ユーザには、LDAP データベース全体の読み取り許可が必要です。検索ユーザの LDAP データベースへのアクセスは遮られないようにすることが重要です。例えば、ユーザのオペレーティング・システム・アカウントは、以下のように設定する必要があります。

      • ユーザがアカウントのパスワードを変更できない

      • パスワードの有効期限を無期限にする

      • アカウントの有効期限を無期限にする

      例えば、検索ユーザが “ldapsearchuser” の場合、識別名は以下のようになります。

      uid=ldapsearchuser,ou=People,dc=example,dc=com 
      

      LDAP データベースの検索の詳細は、“LDAP データベースの検索” を参照してください。

  • [LDAP ユーザ名のパスワード] — 最初の接続に使用するアカウントに関連付けられたパスワードを指定します。

  • [検索に使用するLDAPベースDN] — ディレクトリ・ツリーの中で検索を開始する位置を指定します。通常、DC=intersystems,DC=com などのドメイン・コンポーネントを使用して指定します。

  • [LDAPユニーク検索属性] — 各レコードの一意の識別要素を指定します。これにより、適切な検索が行われます。LDAP データベースの検索の詳細は、“LDAP データベースの検索” を参照してください。

  • [LDAP セッションに TLS/SSL 暗号化を使用する] — Caché サーバと LDAP サーバ間で渡されるデータが TLS/SSL 暗号化で保護されるか指定します (既定では False です)。

  • [TLS/SSL証明書ファイル]UNIX® のみ。必要に応じて、サーバ証明書の認証に使用される TLS/SSL 証明書 (PEM 形式) を含むファイルの場所を指定します。Windows の場合、“Windows での証明書ファイルの指定” を参照してください。

  • [ロール、ルーチン、ネームスペースで LDAP グループを使用する] — ユーザのロール、ルーチン、およびネームスペースが、ユーザのグループ・メンバシップから取得されるか指定します(既定では True です)。グループ・メンバシップから取得されない場合、ユーザの LDAP レコードの属性フィールドから取得されます。グループの使用を選択することで、他のフィールドを有効または無効にできます (詳細は後続の各フィールドを参照してください)。

    Note:

    承認には LDAP 属性 (登録されている LDAP プロパティを含む) ではなく、LDAP グループの使用をお勧めします。既存のコードがある、または登録されているプロパティを使用する必要がある場合、詳細は “登録されている LDAP プロパティ使用のための LDAP サーバの構成” セクションを参照してください。

  • [入れ子になったグループでロール、ルーチン、ネームスペースを検索する] (LDAP グループが選択されている場合にのみ有効で、Active Directory にのみ関連) — 検索でユーザの入れ子になったグループがすべて返されるかどうかを指定します。入れ子になったグループの詳細は、“入れ子になったグループの使用” セクションを参照してください。

  • [コメント属性を取得するためのユーザ属性] — 値がユーザの Comment プロパティのソースである属性を指定します。このプロパティについては、“ユーザ” の章の "ユーザのプロパティ" セクションで説明しています。

  • [フルネームを取得するためのユーザ属性] — 値がユーザの Full name プロパティのソースである属性を指定します。このプロパティについては、“ユーザ” の章の "ユーザのプロパティ" セクションで説明しています。

  • [デフォルトネームスペースを取得するためのユーザ属性] (LDAP グループが選択されている場合は無効) — 値がユーザの Startup namespace プロパティのソースである属性を指定します。Caché ユーザのこのプロパティについては、“ユーザ” の章の "ユーザのプロパティ" のセクションに説明があります。また、この LDAP プロパティについては、“登録されている LDAP プロパティ” のセクションに説明があります。

  • [デフォルトルーチンを取得するためのユーザ属性] (LDAP グループが選択されている場合は無効) — 値がユーザの Tag^Routine プロパティのソースである属性を指定します。Caché ユーザのこのプロパティについては、“ユーザ” の章の "ユーザのプロパティ" のセクションに説明があります。また、この LDAP プロパティについては、“登録されている LDAP プロパティ” のセクションに説明があります。

  • [ロール取得のためのユーザ属性] (LDAP グループが選択されている場合は無効) — その値によってユーザの割り当て先のロールを決定する属性を指定します。この属性は LDAP 複数値属性として指定し、作成する必要があります。Caché ユーザのロールの詳細は、ユーザの [ユーザ編集] ページの [ロール] タブを参照してください。この LDAP プロパティについては、“登録されている LDAP プロパティ” のセクションに説明があります。

  • [各ユーザに取得するLDAP属性] — 値がアプリケーション固有の変数のソースである属性を指定します。これにより、アプリケーション・コードで Security.UsersOpens in a new tab クラスの Get メソッドを使用してこの情報が返されます。

Windows での証明書ファイルの指定

Windows では、サーバ証明書の認証に使用される TLS/SSL 証明書 (PEM 形式) を含むファイルの場所を指定して、安全な LDAP 接続を確立するには、Microsoft Certificate ServicesOpens in a new tab を使用します。

Note:

証明書は、Certificates (Local Computer)\Trusted Root Certification Authorities の証明書ストアにインストールする必要があります。

LDAP データベースの検索

Caché が検索ユーザとして LDAP サーバへの接続を確立したら、次にターゲット・ユーザに関する情報を取得します。これを実行するために、Caché は、ログイン時に指定されたユーザ名を LDAP Unique search attribute に対する LDAP データベース内の値と照合して確認します (多くの場合、この属性名は Windows LDAP サーバでは “sAMAcccountName”、UNIX® LDAP サーバでは “uid” になります)。

LDAP Unique search attribute を使用してユーザを検索する場合のユーザ名の形式は、Caché インスタンスと LDAP サーバの両方のオペレーティング・システムに依存します。

  • Windows から Windows へ接続する場合は、単に “testuser” などのユーザ・ログイン名を使用できます。

  • その他の接続では、ユーザの完全 DN (識別名) を含める必要があります。UNIX® から Windows LDAP サーバに接続する場合は、大文字と小文字が区別されます。次に例を示します。

    • UNIX® から Windows に接続する場合、ユーザ名の形式は CN=testuser,OU=Users,OU=Cambridge のようになります。

    • あらゆるオペレーティング・システムから UNIX® に接続する場合、ユーザ名の形式は uid=testuser,ou=people のようになります。

Caché によりユーザが検索されると、属性情報が取得されます。Caché により、Caché LDAP 構成フィールド (“Caché における LDAP の構成情報の指定” で説明しています) 内の名前を持つすべての属性に関する情報が取得され、各属性に関連付けられたすべての値が取得されます。 Caché では、Caché LDAP 構成フィールド内でユーザに指定されたすべての属性に関連付けられているすべての値が取得されることに注意してください。サブセットのみを取得するように構成することはできません。

LDAP ベース認証の設定

LDAP と共に使用するように Caché を構成したら、次はインスタンスに関連するサービスやアプリケーションに対して LDAP を有効にします。手順は以下のとおりです。

  1. インスタンス全体の LDAP 認証を有効にします。

    1. 管理ポータルのホーム・ページで、[認証/CSP セッションオプション] ページ ([システム管理] > [セキュリティ] > [システム・セキュリティ] > [認証/CSP セッションオプション]) に移動し、[LDAP 認定を許可] を選択します。

    2. [認証オプション] ページには、[LDAP キャッシュ資格情報による認証を許可] を選択するオプションもあります。このオプションを選択し、Caché が LDAP サーバに接続できない場合、Caché は、ユーザを認証するために前回キャッシュした LDAP 資格情報のコピーを使用します。これは、LDAP サーバに接続できない場合や、LDAP サーバが利用できない場合に便利です。

      Note:

      前回のログイン後に LDAP サーバでユーザのパスワードを変更し、Caché が認証に LDAP 資格情報キャッシュを使用する場合、認証は古いパスワードのみで行われます。

    3. [保存] をクリックすると、変更内容が適用されます。

    インスタンスの LDAP 認証を有効にすると、関連サービスの [サービス編集] ページと、そのアプリケーションの [ウェブ・アプリケーション編集] ページに [LDAP] チェック・ボックスが表示されます。

  2. 必要に応じて、サービスとアプリケーションの LDAP 認証を有効にします。

LDAP 認証をサポートしているサービスは以下のとおりです。

  • %Service_Bindings

  • %Service_CSP

  • %Service_CacheDirect

  • %Service_CallIn

  • %Service_ComPort

  • %Service_Console

  • %Service_Login

  • %Service_Terminal

  • %Service_Telnet

これらのサービスは、アクセス・モードによっていくつかのカテゴリに分類されます。

  • ローカル・アクセス

    %Service_CallIn%Service_ComPort%Service_Console%Service_Login%Service_Terminal%Service_Telnet

    ローカル接続で LDAP 認証を使用するには、サービスの LDAP 認証を有効にします。

  • クライアント・サーバ・アクセス

    %Service_Bindings%Service_CacheDirect

    クライアント・サーバ接続で LDAP 認証を使用するには、サービスの LDAP 認証を有効にします。

  • Web アクセス

    %Service_CSP

    Web 接続で LDAP 認証を (CSP または Zen により) 使用するには、Web アプリケーションの LDAP 認証を有効にします。サービスの LDAP 認証を有効にすると、CSP ゲートウェイ自体が LDAP 認証を使用して認証を行えます。

認証後 — システムの状態

LDAP 認証を使用して最初に認証されるユーザは、“LDAP ユーザ” というタイプで [ユーザ] ページ ([システム管理] > [セキュリティ] > [ユーザ]) のユーザ・テーブルに表示されます。システム管理者が管理ポータル (またはその他の Caché のネイティブ機能) を使用して明示的にユーザを作成した場合、そのユーザのタイプは “Caché パスワード・ユーザ” になります。ユーザが LDAP 認証を使用してログインを試行し、認証が正常に行われる場合でも、そのユーザが既に (LDAP ユーザではなく) Caché ユーザとして存在することを Caché が検出すると、ログインは失敗します。

Caché サーバに格納されている現在のユーザの LDAP 属性を確認するには、目的の属性を [LDAPオプション] ページ ([システム管理] > [セキュリティ] > [システム・セキュリティ] > [LDAPオプション]) の [各ユーザに取得するLDAP属性] フィールドに指定します。これにより、アプリケーションで Security.UsersOpens in a new tab クラスの Get メソッドを使用してこの情報が返されます。

登録されている LDAP プロパティ使用のための LDAP サーバの構成

Important:

LDAP 承認には、LDAP グループを使用することをお勧めします。

承認情報を保存するために LDAP スキーマで使用できるフィールド名が 3 つ登録されています。それぞれには、以下のような固有の目的があります。

  • intersystems-Namespace — ユーザの既定のネームスペースの名前 (LDAP OID 1.2.840.113556.1.8000.2448.2.1)。

  • intersystems-Routine — ユーザの既定のルーチンの名前 (LDAP OID 1.2.840.113556.1.8000.2448.2.2)。

  • intersystems-Roles — ユーザのログイン・ロールの名前 (LDAP OID 1.2.840.113556.1.8000.2448.2.3)。

これらの属性を使用するには、LDAP サーバで以下の手順を実行します。

  1. 属性を有効にして使用できるようにします。そのためには、LDAP スキーマの objectClass フィールドで、その値のリストに intersystemsAccount の値を付加してこのフィールドの値を変更します (intersystemsAccount には 1.2.840.113556.1.8000.2448.1.1 という LDAP OID が設定されています)。

  2. このフィールドを (必要なだけ) スキーマに追加します。

  3. LDAP データベースのエントリにそれらの値を生成します。

Note:

登録済みの LDAP スキーマ名を使用する必要はありません。実際、使用している LDAP スキーマにある既存の属性を使用できます。

例えば、UNIX® LDAP サーバでは、Caché での LDAP 認証使用に対してスキーマを定義するために、以下の定義で表すコンテンツを使用します。

# Attribute Type Definitions

attributetype ( 1.2.840.113556.1.8000.2448.2.1 NAME 'intersystems-Namespace'
        DESC 'InterSystems Namespace'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 SINGLE-VALUE )

attributetype ( 1.2.840.113556.1.8000.2448.2.2 NAME 'intersystems-Routine'
        DESC 'InterSystems Routine'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} SINGLE-VALUE )
 
attributetype ( 1.2.840.113556.1.8000.2448.2.3 NAME 'intersystems-Roles'
        DESC 'InterSystems Roles'
        EQUALITY caseIgnoreMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
 
# Object Class Definitions
 
objectclass ( 1.2.840.113556.1.8000.2448.1.1 NAME 'intersystemsAccount' SUP top AUXILIARY
        DESC 'Abstraction of an account with InterSystems attributes'
        MAY ( intersystems-Routine $ intersystems-Namespace $ intersystems-Roles ) )

このコンテンツは以下の 2 か所に配置します。

  • /etc/openldap/schema/ ディレクトリの intersystems.schema ファイルに配置します。

  • 他のコンテンツと共に、/etc/openldap/slapd.conf ファイルに組み込みます。

LDAP 認証と OS ベースの認証の併用

Caché は、オペレーティング・システム・ベースの認証をサポートするように構成することで、LDAP 経由の認証を実行できます。これは、オペレーティング・システム LDAP 認証と呼ばれています。これにより、ユーザは Caché に対する認証にオペレーティング・システムのログインからの資格情報を使用できるようになり、LDAP サーバから自動的に取得される Caché の適切なロールを持つようになります。オペレーティング・システム LDAP 認証は、UNIX®、Linux、および MacOS のターミナルと、Windows の Caché コンソールで使用できます。

FeedbackOpens in a new tab