ワークスペース アクセス トークンを使用する

ワークスペース アクセス トークンはプレミアム機能です。Bitbucket Cloud Premium プランについて詳しくは、Bitbucket Cloud Premium をご覧ください。

ワークスペース アクセス トークンは、アクセスが制限された (作成中に指定) 単一目的のアクセス トークンです。これらのトークンは、開発中のスクリプト作成、CI/CD ツール、Bitbucket に接続されたアプリのテストに役立ちます。ワークスペース アクセス トークンは、ユーザーではなくワークスペースに紐付けられ、ワークスペース管理者によって管理されます。

次の例は、Bitbucket Cloud REST API と Git コマンド ライン インターフェイス (Git CLI) で Bitbucket Cloud ワークスペース アクセス トークンを使用する方法を示しています。

Bitbucket API でワークスペース アクセス トークンを使用する

Bitbucket Cloud 統合またはアプリ開発者は、ユーザー認証に OAuth を使用することをお勧めします。OAuth サポートを備えた Bitbucket Cloud 統合またはアプリの作成方法の詳細については、アトラシアン開発者 - Bitbucket Cloud をご覧ください。

次の例は、Bitbucket Cloud API での認証方法のガイドとして、curl コマンドで Bitbucket Cloud ワークスペース アクセス トークンを使用する方法を示しています。この例では、Get Repository API を使用して Bitbucket リポジトリでコミットをクエリしています。

Bitbucket Cloud に接続するには、ワークスペース アクセス トークンを HTTP 承認ヘッダー内のベアラー トークンとして送信します。次に例を示します。

1 2 3 4 curl --request GET \ --url 'https://api.bitbucket.org/2.0/repositories/{workspace}/{repository}' \ --header 'Authorization: Bearer <workspace_access_token>' \ --header 'Accept: application/json'

Git コマンド ライン インターフェイスでワークスペース アクセス トークンを使用する

ワークスペース アクセス トークンは、ビルド ツール、自動化スクリプト、CI/CD アプリなどの非インタラクティブなプログラムやスクリプトの Git コマンド ライン インターフェイスで使用する必要があります。Git を日常的に使用する場合は、Bitbucket とやり取りするコマンドを発行するたびにワークスペース アクセス トークンを手動で入力する手間を省くため、SSH キーまたは Git 認証情報マネージャーを使用して Bitbucket Cloud に接続することをお勧めします。Bitbucket の SSH キーのセットアップに関する詳細は、「Bitbucket Cloud の SSH キーをセットアップする」をご参照ください。

Git CLI で Bitbucket Cloud ワークスペース アクセス トークンを使用するには、次の権限を持つワークスペース アクセス トークンを作成します。

  • リポジトリ読み取り (repository)

  • リポジトリ書き込み (repository:write)

Git CLI でワークスペース アクセス トークンを使用するには、インタラクティブ プロンプトからワークスペース アクセス トークンを提供するか、URL にリポジトリ アクセス トークンを含めるかの 2 つのオプションがあります。

インタラクティブ パスワード プロンプトによるワークスペース アクセス トークン

この方法では、ワークスペース アクセス トークンが保護されずに URL に保存されるのを防ぎます。Git が Bitbucket Cloud とやり取り (git pullgit pushgit fetch など) するたびに、ワークスペース アクセス トークンの入力を要求します。また、リポジトリの Git ユーザーを設定する必要があります。

インタラクティブ プロンプトを介してワークスペース アクセス トークンを提供するには、次の手順に従います。

  1. 次のコマンドでリポジトリを複製します。

    1 git clone https://x-token-auth@bitbucket.org/{workspace}/{repository}.git

    ローカルデバイスにすでに複製されているリポジトリの場合は、次のコマンドでリモート URL をアップデートします。

    1 git remote set-url origin https://x-token-auth@bitbucket.org/{workspace}/{repository}.git
  2. 新たに複製されたリポジトリに移動します。

    1 cd {repository}/
  3. 次のように、リポジトリの Git ユーザーを設定します。

    1 git config user.email "{bot_email}"

    {bot_email} とは、ワークスペース アクセス トークンの作成時に生成されたワークスペース アクセス トークンのメールを指します (たとえば、52c16467c5f19101ff2061cc@bots.bitbucket.org)。

ワークスペース アクセス トークンのメールとは:

  • ワークスペース アクセス トークンの名前ではありません。

  • リポジトリの "ワークスペース アクセス トークン" ページで、アクセス トークンの名前を選択すると取得できます。

  • メールの送受信はできません。Git 操作をアクセス トークンに一致させるためだけに使用されます。

ワークスペース アクセス トークンを URL に含める

ワークスペース アクセス トークンをプレーン テキストとして保護しないで保存したり、Git リモート URL の一部として永続的に保存したりしないことをお勧めします。この方法は、ワークスペース アクセス トークンがビルド ツールの「秘密」変数として安全に保存されている場合に役立ちます。

インタラクティブ パスワード プロンプトなしでワークスペース アクセス トークンを使用するために、ワークスペース アクセス トークンを URL に含めることができます。次に例を示します。

  1. 次のコマンドでリポジトリを複製します。

    1 git clone https://x-token-auth:{workspace_access_token}@bitbucket.org/{workspace}/{repository}.git

    ローカルデバイスにすでに複製されているリポジトリの場合は、次のコマンドでリモート URL をアップデートします。

    1 git remote set-url origin https://x-token-auth:{workspace_access_token}@bitbucket.org/{workspace}/{repository}.git
  2. 新たに複製されたリポジトリに移動します。

    1 cd {repository}/
  3. 次のように、リポジトリの Git ユーザーを設定します。

    1 git config user.email "{botid}@bots.bitbucket.org"

    {botid} とは、ワークスペース アクセス トークンの作成時に生成されたワークスペース アクセス トークンの ID を指します。ワークスペース アクセス トークンの ID は、リポジトリ アクセス トークンの名前ではありません。

その他のヘルプ