Workspace ONE関連のコンポーネントではAPIでいろいろとできることがありますが、Workspace ONE AccessでもAPIで出来ることがいくつかあります。
サポートされているAPIは以下で公開されています。
上記以外にもAPIで実施できることはあるようでして、以下のページでは上記に記載の無いAPI実行の手段が記載されています。
ただ、上記ページにも記載されている通りサポートされているのは「https://developer.vmware.com/apis/57」に記載されているものですので、ここに記載の無いものについては、使うことはできるものの利用は自己責任ということになると思います。
APIを使うことができれば何らかの運用操作を機械的に実施できる可能性が広がると思いますので、あくまで自己責任の範囲で利用することでよりWS1 Accessを使いこなせるのではないか、ということで今回はWS1 AccessのAPIを使い倒して設定を行ってみます。
大まかな流れは以下の通りです。
1.WS1 AccessをGUI操作してAPIの情報を取得
2.Postmanの設定
3.動作確認
3.1.ディレクトリ設定を取得
3.2.ディレクトリ設定の更新を実行
1.WS1 AccessをGUI操作してAPIの情報を取得
まずはWebブラウザを使用して管理コンソールをGUI操作することによって裏で動いているAPIなどの情報をかき集めます。今回の目的はディレクトリ設定をAPIで行うことなので、GUIでディレクトリ設定周りを見ていきます。
WebブラウザでWorkspace ONE Accessの管理コンソールにログインして[統合]>[ディレクトリ] をクリック後、対象のディレクトリ名のリンクをクリックします。
[同期設定]をクリックします。
ここで、裏で動いているAPI情報を取得するためにデベロッパーツールを開きます。Chromeの場合は[右上のオプション]>[その他のツール]>[デベロッパーツール]をクリックします。
[Application]タブを開き、左の[Cookies]を展開し、URLをクリックすると使用されているCookieを確認することができます。
Name列が「HZN」のものをクリックし「Cookie Value」の値を控えておきます。
デベロッパーツールの[Network]タブを開いておきます。
WS1 Accessの管理コンソールに戻って「ユーザー」タブをクリックするとデベロッパーツールにいくつか表示されるので、Name列が「syncprofile」のものをクリックします。
すると、開発者ツール右側の[Header]タブに何やらずらずらと表示されるので、以下の値をコピーしておきます。
Content-type: |
application/vnd.vmware.horizon.manager.connector.management.directory.sync.profile.users+json |
Accept:
|
application/vnd.vmware.horizon.manager.connector.management.directory.sync.profile.users+json |
Request URL: |
https://[WS1 Access
FQDN]/SAAS/jeasey/manager/api/connectormanagement/directoryconfigs/[Directory
ID]/syncprofile |
これで事前の情報収集は完了なので、次にAPI実行ツールの設定を行います。
2.Postmanの設定
APIを実行することのできるツールであるPostmanを使用します。
Postmanを起動し、URL欄に以下の値を入力します。
URL:前の手順で取得した「Request URL」の値
次に認証情報を設定します。Postmanの「Authorization」タブで以下のように設定します。
Type:Bearer Token
Token:Cookieから取得した「HZN」の値(画像内で言うと「eyJ0…」という文字列)
3.動作確認
3.1.ディレクトリ設定を取得
URL欄の左横のMethodの選択で「GET」を指定し「Send」をクリックします。
するとResponse欄に以下のような値が表示されます。
これはGUIの管理コンソール画面でいうと、ディレクトリ設定内の「ユーザー」タブの情報を取得して表示しています。
3.2.ディレクトリ設定の更新
続いて、先ほど取得した設定値を基に更新も実施してみます。
更新時は「Body」タブへの入力が必要になるので「Body」タブをクリック後、「raw」にチェックを入れます。
Bodyには以下のような形式で値を入力します。
以下画像の例では、青枠内は元々設定されていた「lab-user01」と「administrator」で、それに加えてオレンジ枠内の「user02」というアカウントを追加しようとしている様子です。
URL欄の左横のMethodの選択で「PUT」を指定して「Send」をクリックします。
するとResponse欄に以下のような値が表示されます。
GUIの方でもディレクトリ設定を開きなおしてみると、Postmanで追加した「user02」が追加されていることが確認できます。
今回はPostmanというツールを使用して手動で実行をしましたが、WS1 Accessを運用する中で何らかの操作を自動化したい場合、APIを活用することで対応できる可能性は広がるのではないかと思います。
コメント
コメントを投稿