PUBLIC
SECURITYワークロードアイデンティティ6 MIN READ

TERM 039

Workload Identity

アプリへ、長期鍵ではなく一時的な身元を与える

Workload Identityは、アプリ、CI/CD、コンテナなどの処理主体をIdentityとして認証し、短時間のCredentialでクラウド資源へアクセスさせる仕組みです。固定キーの配布を減らします。

01ATTEST実行元を証明
02EXCHANGE一時Credentialへ交換
03ACCESS権限内で利用
OVERVIEW

アプリや処理に一時的な身元と権限を与える仕組みの全体像。

CONTENTSこの記事の目次

QUICK OVERVIEW

30秒でつかむ

01TRUST

発行元への信頼

どのPlatformやIdPの証明を受け入れるか設定します。

02ATTRIBUTE

主体の条件

Repository、Branch、Namespace、Service Accountなどで対象を絞ります。

03SHORT LIVED

短時間のCredential

漏えい時の利用可能時間を長期Keyより短くします。

01 — DEFINITION

Workload Identityとは
何か

Workload Identityは、アプリ、CI/CD、コンテナなどの処理主体をIdentityとして認証し、短時間のCredentialでクラウド資源へアクセスさせる仕組みです。固定キーの配布を減らします。

02 — HOW IT WORKS

仕組みを
3段階で見る

細部へ入る前に、入力から結果までの役割を順番に捉えます。

INPUTPROCESSOUTPUT
01ATTEST

実行元を証明

Platformや外部IdPがWorkloadの属性を示す。

02EXCHANGE

一時Credentialへ交換

信頼設定と属性条件を確認して短時間のTokenを発行する。

03ACCESS

権限内で利用

IAM Roleに許されたResourceだけへアクセスする。

PROCESS

Workload Identityを理解するときの、最小の処理単位です。

03 — ESSENTIALS

押さえるべき
3つの要点

名前だけでなく、この3点の関係まで理解すると実装へつなげやすくなります。

01TRUST

発行元への信頼

どのPlatformやIdPの証明を受け入れるか設定します。

02ATTRIBUTE

主体の条件

Repository、Branch、Namespace、Service Accountなどで対象を絞ります。

03SHORT LIVED

短時間のCredential

漏えい時の利用可能時間を長期Keyより短くします。

04 — REAL WORLD EXAMPLE

GitHub ActionsからクラウドへDeployする

Repositoryへ長期サービスアカウントKeyを保存せず認証します。

SCENARIO / WORKLOAD IDENTITYSTEP BY STEP
  1. 01

    GitHubがJob情報入りOIDC Tokenを発行する

  2. 02

    クラウドがRepositoryとBranch条件を確認する

  3. 03

    Deploy権限だけの一時Tokenへ交換する

RESULT固定Keyの配布・Rotationを減らし、どのWorkflowが使ったか追跡できます。

05 — WATCH OUT

理解するときの
注意点

便利な仕組みほど、守備範囲と失敗の前提を明確にします。

01

信頼条件を広げすぎない

Organization全体ではなく、Repository、Branch、Environmentまで絞ります。

02

交換後のIAMも最小化する

認証方法が安全でも、得られるRoleが広ければ被害範囲は大きくなります。

IN ONE SENTENCE

Workload Identityとは?

アプリや処理に一時的な身元と権限を与える仕組み

KEEP EXPLORING

SECURITYIAM掲載中SECURITYOIDC掲載中SECURITYSecret Manager掲載中