目次 APIトークンの設定 API操作権限の絞り込み まとめ 本ブログ記事では、Okta Workforce Identity Cloud (以降、Okta WIC) でのAPIの使い方について解説します。 APIとは、Application Programming Interfaceの略称です。 APIを使うことで、外部のアプリケーションからOkta WICを設定したり削除したり、Okta WICの情報を参照したりすることができます。 「Okta Admin Consoleでできる」ことが、「APIでもできる」ということです。 厳密には、Okta Admin ConsoleとAPIで「どちらかではできないけど、どちらかではできる」という多少の機能差はありますが、だいたい同じことができます。 PostmanというAPIクライアントソフトを使うことで、APIを利用するアプリケーションを作らずとも、APIの動作確認を行うことができますので、本ブログ記事では、このPostmanを利用したいと思います。 APIの利用方法は大きく2つあります。 (1) Okta WICから発行したトークンを使う。 (2) OAuth 2.0 を使う。 本ブログ記事では、比較的簡単な(1)のトークンを使ったAPIの利用方法について、解説します。 以降の解説は、以下のブログ記事の内容を実施済み (理解済み) の前提で進めていきます。 ・はじめてのOkta Workforce Identity Cloud (WIC) トライアル環境の構築 ・はじめてのOkta Workforce Identity Cloud (WIC) [第1回] ユーザーと認証器の関係を紐解く ・はじめてのOkta Workforce Identity Cloud (WIC) [第2回] 多要素認証を紐解く APIトークンの設定 APIトークン発行までの設定の流れを解説します。 送信元IPアドレスを制限する APIはOkta WICの管理者の操作ができるので、攻撃の対象になりやすいです。 APIトークンを使ったAPI操作には、主に攻撃から防御する目的で、送信元IPアドレスを制限する機能がありますので、是非とも設定しておくことを推奨します。 (2024年8月に、この機能が全てのOrgで使えるようになりました。ちなみに左記のURLに「SSWS API Tokens」との記載がありますが、SSWSは「Single Sign-On Web System」の略です。) 「セキュリティ」→「ネットワーク」→「ゾーンを追加」で「IPゾーン」を選択します。 本ブログ記事では、「現在Okta WICのAdmin Consoleを操作しているパソコンからのみ、APIを発行する」という前提で、「自身のパソコンのIPアドレスだけ許可する」という設定にしようと思います。 表示された画面で、「ゾーン名」を指定し、「ゲートウェイIP」では「現在のIPアドレスを追加」の横に表示されたご自身の端末のグローバルIPアドレスをクリックし、「保存」をクリックします。 APIトークンを生成する では、APIトークンを生成してみましょう。 「セキュリティ」→「API」→「トークン」タブで、「トークンの作成」をクリックします。 表示された画面の上段のフォームには、任意のトークン名 (ここでは「API_Token_001」としました) を設定し、下段では「次のゾーン内:」を選んで、先ほど作成したIPゾーンを選択して、「トークンの作成」をクリックします。 トークン値が表示されますので、右端のアイコンをクリックしてトークンをコピーし、安全な場所に一時的に保存しておいてください。 ※この画面を閉じると、このトークン値は二度と表示されません。 コピーし損ねた場合には、このトークンは一旦削除して、もう一度上記の手順を繰り返してください。 「OK, got it」をクリックします。 APIトークンの作成は以上です。簡単ですね。 Postmanを設定する Okta WICのAPI動作を確認するために、APIクライアントとなるPostmanを設定しましょう。 まずは下記LinkからPostmanをダウンロードしてインストールしてください。 https://www.postman.com/downloads/ 以降、Windowsの場合を例に取ります。 インストールしたPostmanアプリの左上にある3本線のアイコンをクリック→「File」→「Import」を選択します。 現れた画面で、下記Linkをそのままコピーし、フォームにペーストしてください。 https://developer.okta.com/docs/api/postman/example.oktapreview.com.environment 右上の「No Environment」と書かれた部分をドロップダウンして表示された「{yourOktaDomain}」を選択します。 (先ほどのImportによって、この「{yourOktaDomain}」が追加されたのです。) 右上の四角いアイコンをクリックして表示された画面で、「Edit」をクリックします。 下記3箇所の「Initial value」と「Current value」の両方に同じ値を入れて、「Save」をクリックしてください。 (1)url ←Okta WICのURLです。「-admin」は削除した状態のURLを設定してください。 (2)apikey ←Okta WICで生成したAPIトークンです。 (3)userId ←すでに存在するユーザー名を一つ指定してください(必須ではありません)。 (1)と(2)は必須ですが、(3)は後の動作確認に使うだけなので、必須ではありません。 本ブログ記事のOkta WIC環境では「asaku.akawa@atko.email」が登録済みですので、(3)にはそのユーザーを指定しました。 次にChrome等のWebブラウザを開いて、下記Linkにアクセスしてください。 Import a Postman Collectionhttps://developer.okta.com/docs/reference/postman-collections/ このサイトから、PostmanでテストしてみたいOkta WICのAPI群を一括でインポートできます。 本ブログ記事では、「Groups」と「Users」だけインポートしようと思います。 Web画面をスクロールダウンして、「Groups」を見つけて「Run in Postman」をクリックします。 「Postman for Windows」をクリックします。 「Users」も見つけて、「Groups」と同様の操作を行ってください。 .