Bitbucket Cloud の使用を開始する
Bitbucket Cloud を初めてお使いですか? 新規ユーザー用のガイドをご利用ください。
Bitbucket Pipelines OpenID Connect プロバイダー (OIDC IDP) を使用して、パイプラインが AWS、GCP、ボールトなどのリソース サーバーにアクセスできるようになります。つまり、Bitbucket に認証情報を格納することなく、ユーザーとそのチームがリソース サーバーにアクセスできます。
OpenID Connect は、OAuth 2.0 プロトコルを元にした単純な ID レイヤーです。クライアントは次を実行できます。
Bitbucket Pipelines によって実行される認証に基づいて、エンド ユーザーの身元を確認します。
相互にやり取り可能で、REST のような方法でユーザーの基本的なプロファイル情報を取得します。
OIDC を有効にするには、リソース サーバーの外部 OpenID Connect プロバイダーとして Pipelines を設定する必要があります。次のセクションでは、Bitbucket Pipelines で OpenID Connect を設定して、さまざまなリソース サーバー内のセットアップに関する詳細情報へのリンクを提供します。
OpenID Connect を統合するには、リポジトリで Pipelines を使用している必要があります。
Pipelines とリソース サーバーで OpenID Connect を使用するには、Bitbucket Pipelines YAML ファイルで oidc を「true」に設定する必要があります。
1
2
3
4
5
6
7
8
9
image: amazon/aws-cli
pipelines:
default:
- step:
oidc: true
max-time: 5
script:
- aws sts assume-role-with-web-identity --role-arn arn:aws:iam::XXXXXX:role/projectx-build --role-session-name build-session --web-identity-token "$BITBUCKET_STEP_OIDC_TOKEN" --duration-seconds 1000
Bitbucket Pipelines を外部 OIDC IDP として設定するには、ワークスペース、リポジトリ、デプロイ環境の UUID を取得する必要があります。
ODIC プロバイダーに関連付けるリポジトリの左側のナビゲーション サイドバーで、[リポジトリ設定] を選択します。
左側のサイドバーで、[Pipelines] 下の [OpenID Connect] を選択します。
ID プロバイダーの URL と 対象者をコピーします。それらをアクセスできる場所に保管してください。Pipelines を外部 OpenID Connect プロバイダー (OIDC IDP) として設定するために必要な手順を完了して、クラウド環境でビルドを実行する前に、作成したロールを引き受けるようにビルドをセットアップする際に必要です。
[一意の識別子] 見出しの下に表示されるペイロードの例では、OpenID Connect を設定したり、リソース サーバー側でアクセス ポリシーを設定したりするのに必要なさまざまな要求を提供しています。
例では、値が「xxxxx」と表示されている要求は、パイプラインと現在使用している環境固有のものです。
UUID - UUID は、使いやすくするために「ペイロードの例」の下に表示されます。これは、OIDC のリソース サーバー側を設定するときにコピー & ペーストする必要があるためです。
デプロイ環境 - Bitbucket Cloud でこのビルドに関連付けたデプロイ環境です。表示するドロップダウン、OIDC を統合する環境の順に選択します。
OpenID Connect と Bitbucket Pipelines を統合したら、リソース サーバー側でさまざまなアクセス ポリシーを設定できます。以下は、AWS、GCP、ボールトなど、主にリソース サーバー側で設定されているアクセス ポリシーの一覧です。
リポジトリごとのアクセス制限
環境ごとのアクセス制限
Bitbucket Pipelines IP 範囲のみへのアクセス制限
ステップ時間の制限 - このアクセス ポリシーは、特定のリソース サーバーに依存しません。次の手順をご参照ください。
Bitbucket Pipelines では、ステップの最大期間を明示的に設定できます。不要なビルド時間を使用しないようにしたり、ビルドを正常に完了するための所要時間を特定したりするために、ステップ時間を設定することをお勧めします。
この手順では、bitbucket-pipelines.yml を編集して、ビルドとワークフローに最適な「max-time」値を更新して、ステップの最大継続時間を設定します。次の例では、ステップの最大継続時間を 5 分に再設定しています。
1
2
3
4
5
6
7
8
9
image: amazon/aws-cli
pipelines:
default:
- step:
oidc: true
max-time: 5
script:
- aws sts assume-role-with-web-identity --role-arn arn:aws:iam::XXXXXX:role/projectx-build --role-session-name build-session --web-identity-token "$BITBUCKET_STEP_OIDC_TOKEN" --duration-seconds 1000
既定では、ステップの開始時に遅延が発生した場合に備えて、5 分間がバッファーとして追加されます。
bitbucket-pipelines.yml の設定に関する詳細については、Configure bitbucket-pipelines.yml support doc をご参照ください。
この内容はお役に立ちましたか?