実行時に新規プロファイル・リポジトリーを現行構成に動的に追加するには、以下の手順を使用します。
このタスクについて
注: この動的呼び出しが実行されると、メモリー内の構成のみが更新されます。構成ファイルは更新されません。動的に追加できるのは、LDAP リポジトリーまたはカスタム・リポジトリーのみです。
- イベント・タイプ
- DYNA_CONFIG_EVENT_ADD_REPOSITORY
- 構成データ
- DYNA_CONFIG_KEY_REPOS_CONFIG (必須) - [データ・オブジェクト]
- wimconfig.xsd ファイルに基づいてプロファイル・リポジトリー構成データ・オブジェクトを指定します。
次にサンプル・タスクを示します。
手順
- LDAP サーバーが正しくセットアップされており、稼働していることを確認します。また、LDAP リポジトリーに使用する基本項目が作成されていることを確認します。
- Virtual member manager が稼働していることを確認します。
- 新規 LDAP リポジトリーを追加します。 デフォルトの Virtual member manager LDAP アダプターを使用する例を以下に示します。
DataObject configProvider = SDOHelper.createConfigProviderDataObject();
DataObject reposDO = SDOHelper.createConfigRepositoryDataObject(configProvider,
CONFIG_DO_LDAP_REPOSITORY_TYPE);
reposDO.setString(CONFIG_PROP_ID, "NewLDAP");
reposDO.setString(CONFIG_PROP_LDAP_SERVER_TYPE, "IDS60");
reposDO.setBoolean(CONFIG_PROP_SUPPORT_PAGING, false);
reposDO.setBoolean(CONFIG_PROP_SUPPORT_SORTING, false);
DataObject baseEntry1 = SDOHelper.createConfigDataObject(reposDO,
WIM_CONFIG_NS_URI, CONFIG_DO_BASE_ENTRIES);
baseEntry1.set(CONFIG_PROP_NAME, "cn=realmusers,dc=yourco,dc=com");
DataObject baseEntry2 = SDOHelper.createConfigDataObject(reposDO,
WIM_CONFIG_NS_URI, CONFIG_DO_BASE_ENTRIES);
baseEntry2.set(CONFIG_PROP_NAME, "cn=realmgroups,dc=yourco,dc=com");
// ldap server config
DataObject ldapServerCfgDO = SDOHelper.createConfigDataObject(reposDO,
WIM_CONFIG_NS_URI, CONFIG_DO_LDAP_SERVER_CONFIGURATION);
DataObject ldapServerDO = SDOHelper.createConfigDataObject(ldapServerCfgDO,
WIM_CONFIG_NS_URI, CONFIG_DO_LDAP_SERVERS);
ldapServerDO.setString(CONFIG_PROP_BIND_DN, "cn=yourco");
ldapServerDO.setString(CONFIG_PROP_BIND_PASSWORD, "yourpassword");
ldapServerDO.setBoolean(CONFIG_PROP_SSL_ENABLED, false);
DataObject ldapConnectionDO = SDOHelper.createConfigDataObject(ldapServerDO,
WIM_CONFIG_NS_URI, CONFIG_DO_CONNECTIONS);
ldapConnectionDO.setString(CONFIG_PROP_HOST, "yourldap.server.yourco.com");
ldapConnectionDO.setString(CONFIG_PROP_PORT, "389");
Hashtable configData = new Hashtable();
configData.put(DYNA_CONFIG_KEY_REPOS_CONFIG, reposDO);
service.dynamicUpdateConfig(DYNA_CONFIG_EVENT_ADD_REPOSITORY, configData);