このAPIを使用すると、Active Directory内の任意のユーザーを見つけることができます。
リクエストURL(JSON)形式:
http://<hostname>:<port>/RestAPI/SearchUser
リクエストパラメータ:
パラメータ名 | 必須 | 概要 |
PRODUCT_NAME | はい | リクエストの送信元である製品名やモジュール名が監査に必要となります |
AuthToken | はい | 「Generate AuthToken API」を使用して取得された認証トークン |
domainName | はい | 検索を実行する必要があるドメイン |
range | はい | リクエストの応答で返されるユーザーの詳細の数 |
startIndex | はい | ユーザーの詳細結果の開始インデックス |
searchText | オプション | 検索に使用するテキスト |
refresh | オプション | Boolean型。「True」の場合、サーバーはADManager PlusでADの変更事項を更新およびアップデートし、更新された結果を送信します |
sortColumn | オプション | 検索結果の列のいずれかを使用して結果を並べ替えることができます |
ascending | オプション | デフォルトまたは'ascending'を指定した場合、結果は「昇順」で表示されます。「降順」が指定されている場合、結果は降順で表示されます |
select | オプション | 検索結果に表示するLDAP属性を指定します |
filter | オプション | LDAP属性を指定して、検索を絞り込みます |
domainList | オプション | ユーザーを検索するドメインを指定します
|
応答:
応答は、JSON形式のキーと値のペアです。
パラメータ名 | 概要 |
status | 検索操作のステータス。リクエストの正常終了時には「SUCCESS」 |
statusMessage | リクエストの処理中に問題またはエラーが発生した場合、適切なメッセージが含まれます |
Count | 指定した検索条件でのユーザー総数 |
UsersList | ユーザーの詳細のJSONArray。配列内の各JSONObjectは、検索結果のユーザーを表します。JSONObjectには、ユーザーの属性のキー・値ペア、およびその対応する値が含まれています |
サンプルリクエスト/応答
リクエスト:
http://Byron:8080/RestAPI/SearchUser?domainName=admanagerplus.com&AuthToken=a70d 9e6c-4167-4de4-a6a1-3b3aff50c82e&range=2&startIndex=1
応答:
{"count":1139,"status":"SUCCESS","statusMessage":"","UsersList":[{"DISPLAY_NAME":"john mat","FIRST_NAME":"john","MOBILE":"-","COUNTRY":"-","OBJECT_GUID":"{25AB1089-C67 3-4CC1-AF04-D3D8C8B3D39D}","LOGON_NAME":"john-3786@csez.admanagerplusin.com" ,"CITY":"-","INITIAL":"-","EMAIL_ADDRESS":"john.a@admanagerplus.com","LAST_NAME":" mat"},{"DISPLAY_NAME":"charlie M","FIRST_NAME":"charlie M","MOBILE":"-","COUNTRY":"-","OBJECT_GUID":"{3B030A75-2F7C-4400-82E5-B738D352 970A}","LOGON_NAME":"charlie-pt1394@csez.admanagerplusin.com","CITY":"-","INITIAL":"- ","EMAIL_ADDRESS":"charlie.m@admanagerplus.com","LAST_NAME":"-"}]}
filter/selectパラメータありのリクエスト:
http://byron:8080/RestAPI/SearchUser?domainName=admanagerplus.com&AuthToken=a70d9e6c-4167-4de4-a6a1-3b3aff50c82e&range=3&startIndex=1&filter=givenName:contains:john&select=givenName,sn
応答:
"UsersList": [
{
"LAST_NAME": "-",
"FIRST_NAME": "John"
},
{
"LAST_NAME": "mat",
"FIRST_NAME": "John"
},
{
"LAST_NAME": "charlie",
"FIRST_NAME": "john"
}
],
"count": 3,
"statusMessage": "",
"status": "SUCCESS"
}
注意点:
- デフォルトの管理者アカウントは、オペレーターにカウントされません。
- REST APIリクエストで使用する特殊文字や予約文字をすべてURLエンコードしていることを確認してください。リクエストを送信するクライアント(ブラウザ、Postman、サードパーティツール)はADManager Plusの管理下にないため、特殊文字、予約文字、安全でない文字のURLエンコーディングは、あくまでユーザーの責任で行ってください。
予約文字例 ; / ?@ = &
安全でない文字例 # % { }| \ ^ ~ [ ] ` "' - filter パラメータは次の形式で指定します: (
:: ( ::.
例:(givenName:contains:john)、(sn:contains:smith) - 特殊文字(,)と\は、値として指定する場合、バックスラッシュでエスケープする必要があります。例えば、「john\k(smith)」という値は、(givenName:equal:john\\k\(smith\))と指定する必要があります。
- LDAP属性や特殊キーは大文字と小文字を区別しますが、演算子や論理演算子は大文字と小文字を区別しません。
- 使用可能な演算子、論理演算子、特殊キーは以下の通りです。
- 演算子:equal, equalCaseSensitive, notEqual, greaterThan, greaterEqual, lessThan, lessEqual , endsWith, notEndsWith, startsWith, notStartsWith, contains, notContains, like, notLike
- 論理演算子:and, or
- 特殊キー:mustChangePwd, accountStatus
これらの特殊キーは、以下の表で示す適切な演算子や値を指定して検索する必要があります。特殊キー 演算子 値 mustChangePwd equal true, false accountStatus equal, notEqual enabled, disabled