ASTERIA WarpとMicrosoft Active Directory連携_LDAPAuthコンポーネント& LDAPSearchコンポーネント

LDAPコンポーネントでASTERIA WarpMicrosoft Active Directoryを連携し、ユーザー認証&ユーザー検索フローを作成しました。

LDAPSearchコンポーネントにより、ADユーザー検索フロー

※LDAPAuthコンポーネントで認証を行うため、JNDIコネクションが必要で先にコネクションを作成する

コネクション作成

・コネクション作成をフローサービス管理コンソールで行う

・「設定」→「コネクション」→「JNDI」→「新規」をクリック

・「接続名」に任意の名前を入力する

・「ProviderURL」にldap://serverのホスト名/dc=ドメイン名を設定する

・「Initial Factory」にcom.sun.jndi.ldap.LdapCtxFactoryを設定する

・「パラメーター」設定の「パラメーター名」と「パラメーター値」に以下の3つのパラメーターを設定

 java.naming.security.authentication = simple (ユーザー名とパスワードで認証を行う場合の設定)

 java.naming.security.principal  = testuser  (ADのユーザー名)

 java.naming.security.credentials =  password

・「作成」をクリック

フローの説明

LDAPAuthコンポーネント

LDAPAuthコンポーネントをクリックし、「基本」設定の「コネクション名」に対象のコネクションを選択

 例:LDAPtestを選択

・「プリンシパル」と「パスワード」はコネクション作成に設定したprincipalcredentialsに該当するのでデフォルトのままでOK

LDAPSearchコンポーネント

「基本」設定

・「検索文字列」にRFC-4515形式のクエリを入力

 例:cn=testuser 又は (cn=testuser)

 例:(&(objectCategory=person)(cn=testuser))又は(&(objectCategory=user)(cn=testuser)) ユーザーの中からtestuserを検索

・「検索の起点」にベースDNを指定する 例:cn=Users

 ※実際の検索の起点はAggregateBaseDNになる

 ※AggregateBaseDNLDAPAuthコンポーネントのベースDNこのコンポーネントのベースDN

 例:LDAPAuthコンポーネントのベースDNDC=example,DC=local

      この(LDAPSearch)コンポーネントのベースDN=cn=Users

 ※この場合検索の起点はcn=Users,DC=example,DC=local になる

・「検索スコープ」に「1階層下まで」を選択

・その他のプロパティをデフォルトのままに設定

・フィールド名を定義する

 ※LDAPレコードの属性名と同じ名前のフィールドを定義する必要がある

 ※LDAPレコードのメールの属性名はmailであり、フィールド名をmailとして定義する必要がある

  電話番号の場合フィールド名をtelephoneNumberとして定義する必要がある

 ※コンポーネントで「メール」、「電話番号」を定義すると値が出てこない

上記の設定でフローを実行すると、以下のようにtestuserの情報が検索できる