GCP - Federation Abuse
OIDC - Зловживання Github Actions
GCP
Щоб надати доступ до Github Actions з репозиторію Github до сервісного облікового запису GCP, необхідно виконати наступні кроки:
Створіть сервісний обліковий запис для доступу з github actions з бажаними правами:
Створити новий пул ідентичності робочого навантаження:
Створіть новий пул ідентичності робочого навантаження OIDC постачальника, який довіряє github actions (за назвою org/repo в цьому сценарії):
Нарешті, дозвольте принципалу з постачальника використовувати сервісний принципал:
Зверніть увагу, що в попередньому члені ми вказуємо org-name/repo-name
як умови для доступу до облікового запису служби (інші параметри, які роблять його більш обмеженим, такі як гілка, також можуть бути використані).
Однак також можливо дозволити всім github доступ до облікового запису служби, створивши провайдера, як показано нижче, використовуючи підстановочний знак:
У цьому випадку будь-хто міг би отримати доступ до облікового запису служби з github actions, тому важливо завжди перевіряти, як визначено учасника. Це завжди має бути щось на зразок цього:
attribute.{custom_attribute}
:principalSet://iam.googleapis.com/projects/{project}/locations/{location}/workloadIdentityPools/{pool}/attribute.{custom_attribute}/{value}
Github
Не забудьте змінити ${providerId}
та ${saId}
на їх відповідні значення:
Last updated