docs(oidc): actualiza documentacion con valores reales de configuracion DEV/PROD

This commit is contained in:
Evert Daniel Romero Garrido
2026-04-15 13:51:45 -06:00
parent cbae04ab3f
commit 3e215f866f
+27 -12
View File
@@ -55,7 +55,24 @@ El proceso es como mostrar una credencial de invitado en la entrada de un edific
--- ---
## 3. Pre-requisitos ## 3. Configuración aplicada (resumen de esta sesión)
Los siguientes recursos OIDC ya fueron configurados manualmente en la consola AWS durante abril de 2026:
| Cuenta | OIDC Provider | Rol IAM | Permisos |
|--------|---------------|---------|----------|
| **DEV** (`668889063715`) | `api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc` | `BitbucketProyectosaccCICDRoleDev` | `AdministratorAccess` (temporal) |
| **PROD** (`523761210517`) | `api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc` | `BitbucketProyectosaccCICDRoleProd` | `AdministratorAccess` (temporal) |
**Audience configurada:** `sts.amazonaws.com`
**Repository UUID usado en trust policies:** `{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}`
> **Nota de seguridad:** `AdministratorAccess` fue adjunta solo como punto de partida para desbloquear el pipeline. En una iteración posterior debe reemplazarse por la política mínima de `docs/iam-policy-ci-cd-proyectosacc.json`.
---
## 4. Pre-requisitos
Antes de empezar, asegúrate de tener: Antes de empezar, asegúrate de tener:
@@ -63,9 +80,9 @@ Antes de empezar, asegúrate de tener:
- DEV: `668889063715` - DEV: `668889063715`
- PROD: `523761210517` - PROD: `523761210517`
2. **Permiso para crear** `iam:CreateOpenIDConnectProvider` y `iam:CreateRole`. 2. **Permiso para crear** `iam:CreateOpenIDConnectProvider` y `iam:CreateRole`.
3. El **Repository UUID** de `ccsoft1/proyectosacc`. Lo encuentras en: 3. El **Repository UUID** de `ccsoft1/proyectosacc`:
- Bitbucket > Repository settings > OpenID Connect > **Repository UUID** - `{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}` (incluye las llaves `{}`)
- Formato: `{1de489be-ce6a-42a0-a8c8-eadbf1174ac7}` (incluye las llaves `{}`) - Lo encuentras en: Bitbucket > Repository settings > OpenID Connect > **Repository UUID**
--- ---
@@ -81,9 +98,9 @@ Antes de empezar, asegúrate de tener:
cd proyectosacc/terraform cd proyectosacc/terraform
``` ```
2. Edita `terraform/oidc-bitbucket.tf` y reemplaza el placeholder: 2. Verifica que `terraform/oidc-bitbucket.tf` tenga el UUID correcto:
```hcl ```hcl
bitbucket_repo_uuid = "{1de489be-ce6a-42a0-a8c8-eadbf1174ac7}" bitbucket_repo_uuid = "{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}"
``` ```
3. Configura tus credenciales de admin para la cuenta **DEV**: 3. Configura tus credenciales de admin para la cuenta **DEV**:
@@ -129,7 +146,7 @@ Repite esto en **DEV** y **PROD**:
5. En **Conditions**, agrega una condición personalizada (avanzado) o edita el trust policy después de crearlo. 5. En **Conditions**, agrega una condición personalizada (avanzado) o edita el trust policy después de crearlo.
6. Nombre del rol: `BitbucketProyectosaccCICDRoleDev` 6. Nombre del rol: `BitbucketProyectosaccCICDRoleDev`
7. Adjunta la política `AdministratorAccess` (solo como punto de partida). 7. Adjunta la política `AdministratorAccess` (solo como punto de partida).
8. Edita el **Trust Policy** para que quede así: 8. Edita el **Trust Policy** para que quede exactamente así:
```json ```json
{ {
@@ -146,7 +163,7 @@ Repite esto en **DEV** y **PROD**:
"api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:aud": "sts.amazonaws.com" "api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:aud": "sts.amazonaws.com"
}, },
"StringLike": { "StringLike": {
"api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:sub": "{REPO_UUID}:*" "api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:sub": "{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}:*"
} }
} }
} }
@@ -154,8 +171,6 @@ Repite esto en **DEV** y **PROD**:
} }
``` ```
Reemplaza `{REPO_UUID}` por el UUID real del repositorio.
#### Paso 3: Crear el Rol IAM para PROD #### Paso 3: Crear el Rol IAM para PROD
Repite exactamente el paso 2 pero en la cuenta PROD (`523761210517`) y con el nombre: Repite exactamente el paso 2 pero en la cuenta PROD (`523761210517`) y con el nombre:
@@ -227,7 +242,7 @@ echo "$BITBUCKET_STEP_OIDC_TOKEN" | cut -d'.' -f2 | base64 -d 2>/dev/null | pyth
Deberías ver algo como: Deberías ver algo como:
```json ```json
{ {
"sub": "{1de489be-ce6a-42a0-a8c8-eadbf1174ac7}:{759de0c6-eaee-4eaa-b7a6-c507eec759a7}", "sub": "{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}:{759de0c6-eaee-4eaa-b7a6-c507eec759a7}",
"aud": "sts.amazonaws.com", "aud": "sts.amazonaws.com",
"iss": "https://api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc", "iss": "https://api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc",
... ...
@@ -302,7 +317,7 @@ oidc: true
"api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:sub": "{REPO_UUID}:*" "api.bitbucket.org/2.0/workspaces/ccsoft1/pipelines-config/identity/oidc:sub": "{REPO_UUID}:*"
} }
``` ```
3. Si aún no conoces el `REPO_UUID`, puedes poner `"*"` temporalmente **solo para pruebas** (menos seguro). 3. El UUID configurado es `{3ceb5bec-0805-4bfb-b891-aaf5626ad7a5}`. Si el pipeline sigue fallando, verifica que el `sub` claim del token real coincida con este UUID. Solo en casos de emergencia puedes poner `"*"` temporalmente **solo para pruebas** (menos seguro).
--- ---