APIキーの種類
W&B では、ユーザーとサービスアカウントの両方に APIキーを発行します。APIキーを検索して管理する
組織管理者、チーム管理者、メンバーは、APIキー タブからキーを管理できます。- Multi-tenant Cloud
- 専用クラウド と セルフマネージド
- 右上のプロフィールアイコンをクリックし、組織を選択します。
-
https://wandb.ai/account-settings/[ORGANIZATION]/api-keysにアクセスします。[ORGANIZATION]は組織名に置き換えてください。 APIキー タブには、表示権限のあるキーが一覧表示されます。
Multi-tenant Cloud では、組織ロールが billing admin のユーザーは APIキー タブを表示できません。専用クラウド と セルフマネージド では、このタブは billing ロールによる制限を受けません。
ロール別のキーの表示範囲
APIキー タブに表示されるキーは、ロールによって異なります。APIキーの表を確認する
表には、各キーに関する次の列が表示されます。- キー名: キーの作成時に付けた説明的な名前。
- キー ID: 識別に使用されるキーの先頭部分。
- 所有者: キーを所有するユーザーまたはサービスアカウント。
- 最終使用日時: キーが最後にリクエストの認証に使用された日時。
- 作成日時: キーが作成された日時。
セキュリティ上の理由から、表にはキー ID のみが表示されます。W&B では、完全なシークレットキーは作成時に一度だけ表示されます。キーの完全なシークレットが手元にない場合は、キーをローテーションしてください。
APIキーを作成する
- APIキー タブに移動します。
- New key をクリックします。
- キーにわかりやすい名前を付けます。
- Create をクリックします。
- キーをすぐにコピーし、安全な場所に保管します。
APIキーの名前を変更する
キーの用途がわかる名前に変更しておくと、後で見慣れないキーを特定しやすくなります。名前を変更してもキーのシークレットは変わらず、そのキーを使用しているものが中断されることもありません。- 表でキーを検索します。
- キーの行の末尾にあるアクションメニューをクリックし、Edit をクリックします。
- 新しい名前を入力し、保存します。
APIキーを削除する
不要になったキーは削除してください。キーが漏洩した可能性がある場合は、直ちに削除してください。 1 つのキーを削除するには、表でキーを見つけ、その行の末尾にあるアクションメニューをクリックし、Delete をクリックして削除を確認します。 複数のキーを一度に削除するには:- 削除する各キーの横にあるチェックボックスを選択します。
- Delete をクリックします。ボタンには選択したキーの数が表示されます。
- 削除を確認します。
APIキーをローテーションする
セキュリティポリシーに沿ったスケジュールでキーをローテーションし、キーが漏洩した可能性がある場合は直ちにローテーションしてください。キーを使用するワークロードを継続して実行する必要がある場合は、キーを削除するのではなくローテーションしてください。 W&B には、単一のローテーション操作はありません。キーのシークレット全体は作成時にのみ表示されるため、キーを置き換えることでローテーションします。- 新しいAPIキーを作成します。置き換えるキーと区別できる名前を付けます。
- 古いキーを使用するすべてのスクリプト、ジョブ、保存済みシークレットを更新します。保存オプションについては、APIキーを安全に保存および処理するを参照してください。
- ワークロードが新しいキーで認証されることを確認します。
- 古いキーを削除します。
メンバーによるAPIキーの使用を制限する
組織管理者は、W&B Appの組織設定からAPIキーの作成と使用を制限できます。これらの制限により、組織のリソースにアクセスできるキーと、新しいキーを作成できるユーザーを限定できます。以下のセクションでは、利用できる制限について説明します。制限内容はデプロイメントタイプによって異なります。組織スコープの APIキーを強制する
Enterprise 組織向けの Multi-tenant Cloud で利用できます。この設定は W&B が組織ごとに有効化します。表示されない場合は、W&B のアカウントチームにお問い合わせください。 強制すると、組織 APIキーと、その組織内のサービスアカウントに属するキーのみが組織のリソースにアクセスできます。メンバーが複数の組織にまたがって使用している個人用 APIキーはこの組織に対して使用できなくなるため、他所から漏洩したキーによってデータにアクセスされることを防げます。 組織スコープの APIキーを強制するには、次の手順を実行します。- 組織管理者としてサインインします。
- 組織の設定を開き、左側のナビゲーションで Authentication を選択します。
- Enforce organization-scoped API keys の横にある Enforce をクリックします。
- 確認のために組織名を入力し、Enforce Organization-Scoped API Keys をクリックします。
APIキーの作成を無効にする
専用クラウド および セルフマネージド v0.84.0 以降で利用できます。 有効にすると、ユーザーおよびチームサービスアカウントは新しいAPIキーを作成できなくなります。組織サービスアカウントは引き続きキーを作成でき、既存のキーもそのまま使用できるため、この設定をオンにしても実行中のジョブが中断されることはありません。管理されたプロセスを通じて組織がキーを発行しており、メンバーが独自にキーを作成することを防ぎたい場合に使用してください。 APIキーの作成を無効にするには、次の手順を実行します。- 組織管理者としてサインインします。
- 組織のダッシュボードを開き、左側のナビゲーションで Privacy を選択します。
- Access Control セクションで、APIキーの作成を無効にする をオンにします。
GORILLA_DISABLE_TEAM_SERVICE_ACCOUNT_CREATION を参照してください。この環境変数を使用すると、専用クラウドおよびセルフマネージド v0.83.0 以降で、新しいチームスコープのサービスアカウントが作成されないようにできます。
利用可能性
APIキーで利用できる機能はデプロイメントタイプによって異なり、Multi-tenant Cloud ではサブスクリプションによっても異なります。次の表に、各機能を利用できる環境を示します。APIキーを安全に保管・管理する
APIキーを使うとW&Bアカウントにアクセスできるため、パスワードと同様に厳重に保護する必要があります。以下のセクションでは、推奨される保管方法、避けるべき運用、コードにキーを渡す方法、新しいキーに必要なSDKバージョン要件について説明します。推奨される保管方法
次のいずれかの方法を使用して、APIキーを安全に保管してください。- シークレットマネージャー: AWS Secrets Manager、HashiCorp Vault、Azure Key Vault、Google Secret Manager などの専用のシークレット管理システムを使用してください。
- パスワードマネージャー: 信頼できるパスワードマネージャーアプリを使用してください。
- OS レベルのキーチェーン: macOS Keychain、Windows Credential Manager、または Linux Secret Service にキーを保存します。本番環境での使用は推奨されません。
避けるべきこと
次のような行為は APIキーの漏えいにつながるおそれがあるため、避けてください。- APIキーを Git などのバージョン管理システムにコミットしないでください。
- APIキーを平文の設定ファイルに保存しないでください。
- APIキーをコマンドライン引数として渡さないでください。
psのような OS コマンドの出力に表示されるためです。 - APIキーをメール、チャット、その他の暗号化されていないチャネルで共有しないでください。
- APIキーをソースコードにハードコードしないでください。
環境変数
コード内でAPIキーを使用する場合は、環境変数経由で渡します。SDKのバージョン互換性
新しいAPIキーを使用する場合は、お使いのSDKバージョンがそのAPIキーをサポートしていることを確認してください。新しいAPIキーは、従来のキーより長くなっています。古いバージョンのwandbまたはweave SDKで認証すると、APIキーの長さに関するエラーが発生することがあります。
解決策: より新しいバージョンのSDKに更新してください。
-
wandbSDK v0.22.3+ -
weaveSDK v0.52.17+
WANDB_API_KEY環境変数でAPIキーを設定してください。