BYOC : AWS Bedrock
GitGuardian s'authentifie auprès de votre compte AWS via la fédération OpenID Connect (OIDC) — aucun credential AWS de longue durée n'est stocké. Quand un appel LLM est nécessaire, GitGuardian :
- Signe un JWT token de courte durée identifiant votre workspace GitGuardian
- Appelle AWS STS
AssumeRoleWithWebIdentitypour échanger le JWT contre des credentials AWS temporaires - Utilise ces credentials pour invoquer des modèles sur votre endpoint Bedrock
Ce mécanisme est utilisé pour les déploiements SaaS et Self-Hosted.
Prérequis
- Rôle Owner ou Manager sur votre workspace GitGuardian
- Permissions AWS IAM pour créer des OIDC providers, rôles et policies dans votre compte AWS
- Accès aux modèles Amazon Bedrock activé dans la région AWS cible (voir documentation AWS)
Étape 1 : ajouter GitGuardian comme OIDC provider dans AWS
- Ouvrez la IAM Console → Identity providers
- Cliquez sur Add provider
- Sélectionnez OpenID Connect
- Configurez le provider :
| Champ | SaaS | Self-Hosted |
|---|---|---|
| Provider URL | https://api.gitguardian.com | https://<your-gitguardian-url>/exposed |
| Audience | sts.amazonaws.com | sts.amazonaws.com |
- Cliquez sur Add provider
Étape 2 : créer un rôle IAM
- Dans la IAM Console → Roles, cliquez sur Create role
- Sélectionnez Web Identity comme type d'entité de confiance
- Choisissez l'OIDC provider que vous venez de créer
- Sélectionnez
sts.amazonaws.comcomme Audience
Trust policy
Ajoutez une condition sur le claim sub pour restreindre l'assomption de rôle à votre workspace GitGuardian spécifique :
- Cliquez sur Add condition :
- Key :
<oidc-provider>:sub(par exempleapi.gitguardian.com:sub) - Condition :
StringEquals - Value :
gitguardian-account-id:<your-gitguardian-account-id>
- Key :
Votre account ID est visible dans l'URL de votre tableau de bord GitGuardian : https://dashboard.gitguardian.com/workspace/<your-account-id>/
La trust policy résultante devrait ressembler à ceci :
Pour les utilisateurs SaaS :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRoleWithWebIdentity",
"Principal": {
"Federated": "arn:aws:iam::<your-aws-account-id>:oidc-provider/api.gitguardian.com"
},
"Condition": {
"StringEquals": {
"api.gitguardian.com:sub": "gitguardian-account-id:<your-gitguardian-account-id>",
"api.gitguardian.com:aud": "sts.amazonaws.com"
}
}
}
]
}
Pour les utilisateurs Self-Hosted :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRoleWithWebIdentity",
"Principal": {
"Federated": "arn:aws:iam::<your-aws-account-id>:oidc-provider/<your-gitguardian-url>/exposed"
},
"Condition": {
"StringEquals": {
"<your-gitguardian-url>/exposed:sub": "gitguardian-account-id:<your-gitguardian-account-id>",
"<your-gitguardian-url>/exposed:aud": "sts.amazonaws.com"
}
}
}
]
}
Permission policy
- Cliquez sur Next
- Attachez une policy accordant l'accès
invokeBedrock. Vous pouvez utiliser la policy AWS managéeAmazonBedrockFullAccess, ou créer une policy personnalisée plus restrictive :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream"
],
"Resource": [
"arn:aws:bedrock:*::foundation-model/anthropic.*",
"arn:aws:bedrock:*:*:inference-profile/us.anthropic.*"
]
}
]
}
GitGuardian utilise les cross-region inference profiles pour invoquer les modèles car la plupart des modèles modernes le requièrent. Incluez l'ARN du inference profile correspondant à la région AWS de votre Bedrock : us.anthropic.*, eu.anthropic.*.
- Cliquez sur Next
- Nommez le rôle (par exemple
GitGuardianBedrockAccess) et cliquez sur Create Role
Étape 3 : configurer l'intégration dans GitGuardian
- Dans la plateforme GitGuardian, naviguez vers Settings → Workspace → AI
- Cliquez sur le bouton Edit
- Sélectionnez Custom AWS Bedrock comme provider
- Saisissez :
- AWS Account ID : votre identifiant de compte AWS
- Role ARN : l'ARN du rôle créé à l'étape 2 (par exemple
arn:aws:iam::123456789012:role/GitGuardianBedrockAccess) - Region : la région AWS où vous avez l'accès aux modèles Bedrock activé (par exemple
us-west-2)
- Cliquez sur Install — GitGuardian effectuera une vérification de connectivité pour valider la configuration
C'est tout ! GitGuardian utilisera maintenant votre compte AWS Bedrock pour les fonctionnalités LLM.