開発者が 1 つ以上の Verify 機能を使用するアプリケーションを構築する場合、アプリケーションには適切な Verify API を呼び出す資格がなければなりません。 社内アプリケーションを APIアクセスで APIクライアントとして登録し、一意のクライアントIDとシークレットを割り当ててください。
始める前に
- このタスクを完了するには管理者権限が必要です。
- IBM® Verify 管理者として管理コンソールにログインしてください。
このタスクについて
「APIアクセス 」で追加するすべてのAPIクライアントには、クライアントIDとクライアントシークレットが割り当てられます。これらはアプリケーション開発者に提供する必要があります。 開発者は、これらの資格情報をセキュアに保管する必要があります。
認証 Verify サービスの公開されているすべてのランタイムインターフェースは、 OAuth のアクセストークンによって保護されています。 呼び出し側アプリケーションは、テナント内の許可サービスで OAuth アクセス・トークンを交換するために OAuth クライアント ID と秘密鍵を実行時に提供する必要があります。 その後、このアクセストークンを使用して、対象 Verify のAPIを呼び出します。 すべての API 呼び出しでトークンを提供する必要があります。
また、IP フィルターを実装することで、トークンの発行および使用を特定の IP アドレス範囲に制限したり、特定の IP アドレス範囲を除外したりすることもできます。
APIの操作、レスポンス、および制約の詳細については、 https://docs.verify.ibm.com/verify/page/api-documentation のAPIドキュメントをご覧ください。
手順
- を選択します
- API クライアントを追加します。
- 「APIクライアントを追加」 を選択します。
- 付与する資格のチェック・ボックスを選択します。
「 Permission name 」チェックボックスをオンにすると、APIクライアントにすべての権限が付与されます。
- 「次へ」 を選択します。
- 制限を設定する。
注: APIクライアントの管理を特定のユーザーグループに限定する機能については、 CI-102537 よりリクエストが可能です。 この機能のご利用をご希望の場合は、 IBM の営業担当者、または IBM の担当者に連絡し、本機能の有効化を希望する旨をお伝えください。 サポートチケットを作成する権限をお持ちの場合は、パブリックプレビューの番号を記載して作成してください。 IBM Verify 無料トライアル期間中は、サポートチケットを作成することはできません。
この手順は、制限可能なタイプの権限のいずれかを選択した場合に利用可能です。
manageGroupMembers
manageGroups
manageUsers
manageUserGroups
readGroups
readGroupMembers
readUserGroups
readUserGroupMembership
readUsers
resetPasswordAnyUser
updateAnyGroupMember
これらの権限を特定のグループに限定するには、チェックボックスを選択してください。
注: 以下の権限のいずれかが選択されている場合、グループ制限は使用できません。
manageAllUserGroups
manageStandardGroupMembers
manageUsersInStandardGroups
manageStandardGroups
manageUsersStandardGroups
readStandardGroupMembers
readStandardGroupMembership
readStandardGroups
updateAnyUser
プライマリAPIクライアントに権限 manageAPIClients がある場合、バックエンド APIClients APIを使用して作成されたセカンダリAPIクライアントに対して、作成、取得、更新、削除の操作を実行できます。 その他の権限を選択した場合は、APIクライアントに渡される権限を制限することができます。 manageAPIClients「前のステップの選択内容を使用」 を選択すると、を除くすべての選択された権利が引き継がれます。 [選択] バックエンドAPIクライアントに渡す対象の権限を指定するには、権限のサブセットを選択してください。
- 「次へ」 を選択します。
- 「 API 認証情報 」セクションで、アプリケーションが API を通じてテナントに接続できるように、以下の情報を指定してください:
表 1. API 認証情報の設定
| フィールド |
説明 |
| クライアント ID |
API クライアントの固有 ID。 この情報は自動的に生成され、API クライアントの保存後に「API クライアント」リストに表示されます。 |
| クライアント秘密鍵 |
API クライアントの ID を確認するために、クライアント ID と共に使用されます。 この秘密鍵は、アプリケーションおよび許可サーバーのみが知っている必要があります。 この情報は、API クライアントの保存後に自動的に生成されます。 |
| クライアント認証方式 |
Verifyは、以下のクライアント認証方式をサポートします。
- Default(既定の選択)
- Client secret basic
- Client secret POST
- Private key JWT
|
| 秘密鍵JWT認証では、以下のフィールドが利用可能です。 |
|
| クライアント・アサーション JTI の検証 (Validate client assertion JTI) |
このオプションは、秘密鍵 JWT クライアント認証方式が選択されている場合にのみ表示されます。 クライアント・アサーション JWT 内の JTI が単一使用に対して検証されるかどうかを示します。 |
| 許可された署名検証鍵 (Allowed signature verification keys) |
このオプションは、秘密鍵 JWT クライアント認証方式が選択されている場合にのみ表示されます。 クライアント・アサーション JWT の検証に使用できる署名検証鍵 ID。 |
| JWKS URI |
このオプションは、秘密鍵 JWT クライアント認証方式が選択されている場合にのみ表示されます。 依拠当事者が JSON Web Key Set (JWKS) 形式で公開鍵を公開する URI。 この URI は、JWT 署名の検証または暗号化に使用されます。 システムは、到達不能または応答しない JWKS URI を拒否できます。 JWKSサイズが大きすぎる場合、システムはJWKS URIを拒否できます。 依拠当事者が JWKS URI を公開しない場合は、X509 証明書の形式で公開鍵をシステムに追加できます。 「証明書の管理」 を参照してください。 パブリック証明書に関連付けられている「フレンドリー名」は、JWT の鍵 ID (kid) ヘッダーの値です。 |
- 「次へ」 を選択します。
- オプション: 設定済みのスコープのみを許可するには、このチェックボックスを選択してください。
フローの終わりにクライアントに付与されるスコープは、このセクションで指定されるスコープに制限されます。 付与するスコープの名前と説明を入力します。 スコープ名は、依拠当事者/クライアントによって要求される OAuth2/OIDC スコープを指します。 選択して、さらにスコープを付与してください。
- 「次へ」 を選択します。
- (任意): APIクライアントIDとシークレットを安全に配布するためにIPフィルタを実装する場合は、 「IPフィルタ 」セクションで以下の情報を指定してください:
表 2. IPフィルタの設定
| フィールド |
説明 |
| IP フィルターの有効化 (Enable IP filtering) |
IP フィルターが有効か無効かを示します。
|
|
|
フィルターのタイプ (リストが許可リストであるか拒否リストであるか) を示します。
「IP フィルターの有効化 (Enable IP filtering)」が有効にされている場合は必須です。
|
| IP フィルター |
IP フィルターのリスト。
「IP フィルターの有効化 (Enable IP filtering)」が有効にされている場合は必須です。
IP フィルターは、単一の IP アドレス、 IP 範囲、または IP サブネット・マスクのいずれかの形式です。 IPv4 と IPv6 の両方がサポートされています。 例: 192.0.2.55、192.0.2.55-192.0.2.61、192.0.2.55/24、2001:db8::1、2001:db8::1-2001:db8::ff、2001:db8:1234::/48
|
- 「次へ」 を選択します。
- (任意): APIクライアントに関連付けるプロパティと値を追加します。
- 「次へ」 を選択します。
- 構成を完了するために、API クライアントの以下の情報を指定します。
- 名前
注: 使用できるのは英数字および以下の特殊文字のみです:
- 説明
- API クライアントの目的を簡単に識別するための説明。
- 有効
API クライアントが有効か無効かを示します。 デフォルト設定では、有効になっています。
権限が与えられたAPIクライアントは、アクセス権限のあるAPIを呼び出すことができます。
このチェック・ボックスがクリアされている場合、無効になっている API クライアントは、アクセスする資格がある API も含め、どの API も呼び出すことができません。
注:
- この設定が有効になるまでに最大で 1 分かかる場合があります。
- API クライアントに既存の有効なアクセス・トークンがある場合、引き続き API を呼び出すことができます。 アクセス・トークンには、制限された有効期間があります。 トークンは 2 時間で期限が切れます。 アクセス・トークンの期限が切れると、API クライアントは API を呼び出せなくなります。
- タグ
- APIクライアントの検索性を高めるために、最大20個のタグを追加できます。 タグはスペースを含まず、100文字未満でなければなりません。また、数字、小文字のアルファベット、および以下の特殊文字を含めることができます。
- : (コロン)
- - (ハイフン)
- _ (下線)
- . (ピリオド)
- =(等号)
- @ (アットマーク)
- / (スラッシュ)
- 「APIクライアントの作成」 を選択します。
クライアント ID およびクライアント秘密鍵および Kubernetes 秘密が生成されます。
次の手順
API クライアントが Verify APIを呼び出すことができるドメインを追加します。 「ドメインの管理」 を参照してください。