この記事では、OktaテナントにAPI呼び出しを送信するためのPostmanアプリケーションの設定方法について説明します。
注:Postmanはサードパーティ製のツールです。Oktaはアプリケーションの変更について責任を負いません。また、サポートはアプリケーションの問題をトラブルシューティングできません。
- API
- Postman
- Okta Classic Engine
以下の手順に従ってPostmanを設定し、API呼び出しをOktaテナントに送信します。
- Okta管理者ダッシュボードにスーパー管理者としてログインします。
- 「OktaでのOAuth 2.0アプリの作成」の手順に従って、カスタムOIDC Webアプリケーションを構成します。
- このアプリケーションを作成する際に、アプリケーションのサインインリダイレクトURIとして
https://oauth.pstmn.io/v1/callbackを追加します。Postmanはこれをトークンのリクエストに含めます。
- このアプリケーションを作成する際に、アプリケーションのサインインリダイレクトURIとして
- OIDCアプリケーションの[Okta APIのスコープ]タブで構成したスコープが、必要なアクションの実行に十分であることを確認します。
- 詳細については、「OAuth 2.0のスコープ」を参照してください。
- トークンをリクエストするユーザーにアプリケーションが割り当てられていることを確認します。
- Postmanを開き、デフォルト設定を使用して新しいワークスペースを作成します。
- Okta Postmanコレクションをダウンロードして追加します。
-
「Postmanコレクションのインポート」に移動します。
-
目的のコレクションの[Run in Postman(Postmanで実行)]ボタンをクリックします。
-
新しいポップアップウィンドウが開き、使用されているPostmanアプリのバージョンを尋ねられます。
-
オプションを選択した後、選択に応じて次の2つのアクションが発生する場合があります。
-
WebバージョンのPostmanを使用している場合は、新しいタブでPostmanのWebサイトにリダイレクトされ、ログインプロンプトが表示されて、Webバージョンのアプリを使用できるようになります。
-
アプリバージョンのPostmanを使用している場合は、新しいダイアログボックスが開き、Postmanアプリを開くように求められます。
-
-
正しいバージョンにリダイレクトされると、目的のワークスペースを選択するためのプロンプトが表示されます。
-
目的のワークスペースを選択し、[インポート]ボタンをクリックすると、コレクションがワークスペースに追加されます。すべてのPostmanコレクションは、特別に作成されたワークスペースに追加する必要があります。
-
PostmanとOktaの統合を完了する
- Postmanで、[ワークスペース]タブを選択し、新しく作成したワークスペースを選択します。
- 左上の[インポート]をクリックします。
- [Import(インポート)]ダイアログボックスで、次のリンクを[Paste URL(URLを貼り付け)]ボックスに貼り付けます。
- リンクを貼り付けると、環境が自動的に作成されます。
- 右上隅にある環境を一覧表示するボックスをクリックし、リストから
[${theOktaDomain}]を選択します。Postmanがインストールされたばかりの場合、初期値は[No Environment(環境なし)]です。 - 右上隅の
[${theOktaDomain}]の横で、Postmanの環境のクイックルックボタンをクリックします。
[${theOktaDomain}]ダイアログボックスの右上隅にある[編集]をクリックします。- [Manage Environments(環境の管理)]タブで、次の属性を更新します。
- 環境の名前。
- [URL]変数を更新して、[Initial value(初期値)]と[Current value(現在の値)]の両方のフィールド(つまり、https://DomainName.okta.com)にOkta orgのURLが含まれるようにします。
[apikey]変数を削除します。- 次の変数を作成し、[Initial value(初期値)]と[Current value(現在の値)]の両方に次の情報を入力します。
CLIENT_ID- カスタムOIDCアプリケーションのクライアントIDCLIENT_SECRET- カスタムOIDCアプリケーションのクライアントシークレットAUTH_URL- https://{{subdomain}}.okta.com/oauth2/v1/authorize- {{subdomain}}はOkta orgのサブドメインに置き換えます
TOKEN_URL- https://{{subdomain}}.okta.com/oauth2/v1/token- {{subdomain}}はOkta orgのサブドメインに置き換えます
- 右上隅にある[保存]ボタンをクリックします。
アクセストークンを取得してリクエストを行う
Oktaでは、PKCE付き認証コード付与フローの使用を推奨しています。この付与タイプの詳細については、「PKCEフローを使用した認証コードの実装」を参照してください。
- すべてのユーザーのリストを取得するには、
/api/v1/usersエンドポイントへのGETリクエストのようなリクエストを選択します。 - [ヘッダー]タブで、認証パラメーターが存在する場合は削除します。
- [Authorization(認証)]タブをクリックし、[タイプ]ドロップダウンリストから[OAuth 2.0]を選択します。
- 右側のペインで、下にスクロールして[Configure New Token(新しいトークンの構成)]セクションに移動します。
- 最初のフィールドにトークンの名前を入力し、付与タイプとして[Authorization Code (With PKCE)(認証コード(PKCE付き))]を選択します。
- トークンリクエストの残りのフィールドを定義します。
- [Callback URL]:ユーザーの認証完了後にOktaがトークンを返すコールバック場所を定義します。このURLは、OktaのカスタムOIDCアプリで構成されたリダイレクトURIの1つと一致する必要があります。
- [Auth URL(認証URL)]:{{AUTH_URL}}
- [Access Token URL(アクセストークンURL)]:{{TOKEN_URL}}
- [Client ID(クライアントID)]:{{CLIENT_ID}}
- [Client Secret(クライアントシークレット)]:{{CLIENT_SECRET}}
- [Code Challenge Method(コードチャレンジ方式)]:デフォルトの[SHA-256]を選択したままにします。
- [Code Verifier(コード検証ツール)]:このフィールドを空のままにしておくと、Postmanが独自のフィールドを生成できます。
- [スコープ]:アクセスを必要とするエンドポイントでアクションを実行できるようにするスコープを含めます。複数のスコープはスペースで区切ります。アクセストークンに対して要求されるスコープは、アプリの付与コレクションに存在する必要があり、ユーザーはそれらのアクションを実行する権限を持っている必要があります。
- [State(状態)]:任意の英数字の値を指定します。認証サーバーは、ブラウザーをクライアントにリダイレクトするときにこの文字列を反映します。
- [クライアント認証]:[Send client credentials in body(本文でクライアント資格情報を送信する)]に設定します。
- [Get New Access Token(新しいアクセストークンを取得)]をクリックします。Okta orgへのサインインを求めるプロンプトが開きます。OIDCアプリ統合に割り当てられたユーザーとしてサインインします。
- 認証されると、アクセストークンと要求されたスコープが[Manage Access Tokens(アクセストークンの管理)]ウィンドウに表示されます。トークンは[Current Token(現在のトークン)]ドロップダウンリストにも表示されます。
- 注:このトークンの有効期間は1時間に固定されています。
- ウィンドウの上部にある[Use Token(トークンを使用)]をクリックして、このアクセストークンをリクエストで使用します。
- [送信]をクリックします。
結果ウィンドウには、リクエストの結果が表示されます。
