liveBook · Manning

Trust relationship

As explained in GitHub Actions in Action: Continuous integration and delivery for DevOps

A trust relationship is a configured mutual authorization between an identity provider and a cloud resource or service that permits federated authentication.

A trust relationship authorizes a GitHub repository to federate with a cloud provider. During workflow execution, the provider evaluates repository and execution context, then exchanges a short-lived OIDC token for cloud credentials. section 9.3.3

Configure the relationship through three workflow stages:

  • Create a narrowly scoped relationship between the cloud provider and the repository. section 9.3.3
  • Grant workflow- or job-level write permission to id-token so the OIDC handshake can complete. section 9.3.3
  • Use the cloud provider’s official action to exchange the OIDC JWT for a cloud access token. section 9.3.3

AWS deployment workflow

A workflow grants id-token and contents permissions, assumes an AWS role through the provider action, and uploads index.html to an S3 bucket.

How GitHub Actions in Action: Continuous integration and delivery for DevOps covers it

How deep it goes
Explains setup stages and permission requirements, but defers provider-specific trust configuration details.
Examples
Uses Azure login, AWS role assumption with S3 upload, and GCP workload identity examples.
What it assumes
Assumes a GitHub repository and cloud provider while establishing OIDC permissions and token exchange requirements.
What you can do after
Operate/configure OIDC-enabled deployment workflows with provider authentication actions and narrowly scoped repository access.
How it connects
Connects OpenID Connect, federated authentication, GitHub Actions permissions, cloud access tokens, and deployment roles.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of GitHub Actions in Action: Continuous integration and delivery for DevOps. The section links point to the parts of the book it draws on.