IBM Cloud Docs
API キーについて

API キーについて

アプリケーション・プログラミング・インターフェース・キー (API キー) は、呼び出し側のアプリケーションまたはユーザーを識別するために API に渡される固有コードです。 API キーは、API の使用方法を追跡および制御する (例えば、API の悪用または不正利用を防止する) ために使用されます。 API キーは、多くの場合、認証のための固有 ID と秘密トークンの両方として機能し、そのキーに関連付けられている ID に固有の一連のアクセス権限が割り当てられます。

API キーを表示するには、IBM Cloud コンソールで 管理 > アクセス (IAM) > API キーに移動します。

ユーザーの IBM Cloud API キー

IBM Cloud® API キーはユーザーの ID と関連付けられ、ユーザーが作成する各 API キーには、そのユーザーに割り当てられているのと同じアクセス権限があります。 対象ユーザーに割り当てられているアクセス権限は、そのユーザーがメンバーとなっている複数のアカウントのポリシーに基づいて設定することができます。 そのため、ユーザーの API キーを使用してトークンを生成したり、API キーが作成されたアカウントの外部にある、ユーザーがアクセス権限を持つリソースにアクセスしたりできます。

ユーザー API キーは直接使用したり、トークンを生成するために使用したりできます。 ユーザーは複数のアカウントのメンバーになることができ、複数のアカウントの多数のリソースにアクセスすることができ、また API キーを使用してユーザーの身元が判別されるため、それはユーザーがアクセスできる任意のアカウント内のほとんどすべてのリソースへのアクセス権限を取得する機能を提供できます。 このため、ユーザー API キーはユーザー名とパスワードと同様に扱う必要があり、決して共有しないようにしてください。

ユーザーの IBM Cloud API キーを作成し、機能 ID と関連付けることができます。 機能 ID は、プログラム、アプリケーション、サービスを表わすために作成されるユーザー ID です。 機能 ID をアカウントに招待して、特定のリソースやアプリケーションとの対話など、特定の目的に限定したアクセス権限を割り当てることができます。 機能 ID には、その ID が作成された特定の機能に必要な、単一アカウント内の最小レベルのアクセス権限のみを付与する必要があります。

サービスで他のサービスやアプリケーションと対話するためにユーザー API キーが必要な場合には、機能 ID ユーザー API キーを使用します。 機能 ID と関連付けられている API キーを使用することによって、対象サービスで必要となるアクセス権限のみを提供できます。 サービスと実ユーザー ID API キーを共有すると、そのサービスでは、複数のアカウントでユーザーがアクセスできる任意のリソースにアクセスできるようになります。 実ユーザー ID API キーを共有しないことを強くお勧めします。

API キーが関連付けられているユーザーと Identity サービスの管理者のみが、API キーを削除できます。 IBM Cloud API キーをコマンド・ライン・インターフェース (CLI) で使用したり、ログイン自動化の一部でユーザー ID として使用したりできます。 また、クラシック・インフラストラクチャー API にアクセスするために IBM Cloud API キーを使用することもできます。

ユーザー ID に関連付けられた API キーの使用について詳しくは、ユーザー API キーの管理を参照してください。

その他のタイプの API キー

IBM Cloud API キーに加えて、その他のいくつかのタイプの API キーを使用できる場合があります。

  • サービス ID の API キー
  • クラシック・インフラストラクチャー API キー
  • サービス固有の API キー

また、作成するサービス ID に関連付けられた API キーを使用することもできます。 サービス ID は、IBM Cloud の内部または外部のアプリケーションを IBM Cloud サービスに接続するために使用されます。 サービス ID API キーは、特定のサービス ID に割り当てられているすべてのアクセス権限を継承します。 サービス ID に関連付けられた API キーの作成について詳しくは、サービス ID の API キーの管理を参照してください。

クラシック・インフラストラクチャー API キーは、クラシック・インフラストラクチャー・サービスの API を呼び出すために使用されます。 クラシック・インフラストラクチャー API キーは一度に 1 つしか作成できません。 「API キー」ページまたは「ユーザーの詳細」ページから、自分のクラシック・インフラストラクチャー API キーを作成できます。

クラシック・インフラストラクチャー API にアクセスするために IBM Cloud API キーを使用することもできます。

IBM Cloud の一部のサービスでは、サービスを操作するときに、サービス ID に関連付けられている自動生成 API キーである API キーを利用できます。 例えば、リソース一覧ページでWatsonサービスの製品詳細を表示している場合、サービス資格情報ページでそのサービスに固有の API キーとシークレットを含む資格情報を作成できます。

API キーの処理

自分のユーザー ID に関連付けられている IBM Cloud API キー、またはアカウント内の他のユーザーのために管理するためのアクセス権限を持っている API キーを管理するには、IBM Cloud コンソールで管理 > アクセス (IAM) > API キーに移動します。

IBM Cloud の「API キー」ページで、自分の IBM Cloud API キーを作成、編集、および削除できるほか、ユーザー階層で自分の子孫に相当するユーザーのすべてのクラシック・インフラストラクチャー API キーを管理できます。 つまり、自分がアカウントに招待したすべてのユーザーや、アカウントに招待された子ユーザーなどの API キーを管理できます。 さらに、アカウント所有者であるか、または、アカウントの他のユーザーの API キーを管理するために必要なアクセス権限を持っているユーザーである場合は、**「表示」**フィルターを使用して、それらの API キーをリスト表示して管理できます。

API キーを管理するために必要なアクセス権限

デフォルトでは、必ず、自分の API キーを作成し、必要に応じてそれらを更新および削除するアクセス権限を持っています。 また、自分のクラシック・インフラストラクチャー API キーと、クラシック・インフラストラクチャーのユーザー階層で自分の子孫に相当するユーザー (自分が招待したユーザーや、自分がアカウントに招待した人が招待したユーザーなど) のクラシック・インフラストラクチャー API キーも管理できます。

IAM アカウントの「API キーの作成の制限 (Restrict API key creation)」設定が有効になっている場合、このアカウントに属するすべてのユーザー (アカウント所有者を含む) は、明示的なアクセス権限が割り当てられている場合を除き、API キーの作成操作がブロックされます。 詳しくは、ユーザーによる API キーの作成操作の制限を参照してください。

アカウント所有者である場合、または必要なアクセス権限を持つユーザーの場合、「API キー」ページで**「表示」**のフィルターを使用して他のユーザーの API キーやサービス ID の API キーにアクセスできます。 割り当てられているアクセス権限に応じて、API キーを編集したり削除したりできます。 表示されるフィルター・オプションは、自分に表示権限と管理権限がある API キーのタイプに対するものだけです。

APIキーページでのAPIキー管理に必要なアクセス権
フィルター・オプション 表示される API キー 必要なアクセス権限 許可されるアクション
自分の IBM Cloud API キー 自分の IBM Cloud API キー アクセス権限不要 表示、作成、編集、削除
すべてのユーザーの IBM Cloud API キー アカウントのすべてのユーザーによって作成されたすべての IBM Cloud API キー IAM Identity サービスに対する管理者役割 表示、編集、および削除
すべてのサービス ID API キー アカウントのサービス ID のために作成されたすべての API キー IAM Identity サービスに対する管理者役割 表示、編集、および削除
クラシック・インフラストラクチャー API キー 自分のクラシック・インフラストラクチャー API キーおよびユーザー階層で自分の子孫に相当するユーザーのクラシック・インフラストラクチャー API キー アクセス権限は不要、ただし、ユーザー階層で自分が祖先であること 詳細表示および削除