View a markdown version of this page

Utilisez le secret - Amazon Data Firehose

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisez le secret

Nous vous recommandons de les utiliser AWS Secrets Manager pour stocker vos informations d'identification ou vos clés afin de vous connecter à des destinations de streaming telles qu'Amazon Redshift, le point de terminaison HTTP, Snowflake, Splunk, Coralogix, Datadog, Dynatrace, Elastic, Honeycomb,, MongoDB Cloud et New Relic. LogicMonitor Logz.io

Vous pouvez configurer l'authentification avec Secrets Manager pour ces destinations via la console AWS de gestion au moment de la création du flux Firehose. Pour de plus amples informations, veuillez consulter Configurer les paramètres de destination. Vous pouvez également utiliser les opérations d'UpdateDestinationAPI CreateDeliveryStream et pour configurer l'authentification avec Secrets Manager.

Firehose met en cache les secrets à l'aide d'un cryptage et les utilise pour chaque connexion vers des destinations. Il actualise le cache toutes les 10 minutes pour s'assurer que les informations d'identification les plus récentes sont utilisées.

Vous pouvez choisir de désactiver la fonction de récupération de secrets depuis Secrets Manager à tout moment pendant le cycle de vie du flux. Si vous ne souhaitez pas utiliser Secrets Manager pour récupérer des secrets, vous pouvez utiliser la clé username/password ou API à la place.

Note

Bien que cette fonctionnalité ne soit pas facturée dans Firehose, l'accès et la maintenance de Secrets Manager vous sont facturés. Pour plus d’informations, consultez la page de tarification d’AWS Secrets Manager.

Accordez l'accès à Firehose pour récupérer le secret

Pour que Firehose puisse récupérer un secret AWS Secrets Manager, vous devez fournir à Firehose les autorisations nécessaires pour accéder au secret et à la clé qui chiffre votre secret.

Lors AWS Secrets Manager de l'utilisation pour stocker et récupérer des secrets, il existe différentes options de configuration en fonction de l'endroit où le secret est stocké et de la manière dont il est crypté.

  • Si le secret est stocké dans le même AWS compte que votre rôle IAM et qu'il est chiffré avec la clé AWS gérée par défaut (aws/secretsmanager), le rôle IAM assumé par Firehose n'a besoin que d'une secretsmanager:GetSecretValue autorisation sur le secret.

    // secret role policy { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": "Secret ARN" } ] }

    Pour plus d'informations sur les politiques IAM, consultez la section Exemples de politiques d'autorisations pour AWS Secrets Manager.

  • Si le secret est stocké dans le même compte que le rôle mais chiffré à l'aide d'une clé gérée par le client (CMK), le rôle a besoin à la fois d'kms:Decryptautorisations secretsmanager:GetSecretValue et d'autorisations. La politique CMK doit également autoriser l'exécution du rôle IAM. kms:Decrypt

  • Si le secret est stocké dans un AWS compte différent de celui de votre rôle et qu'il est chiffré avec la clé AWS gérée par défaut, cette configuration n'est pas possible car Secrets Manager n'autorise pas l'accès entre comptes lorsque le secret est chiffré avec une clé AWS gérée.

  • Si le secret est stocké dans un autre compte et chiffré avec une CMK, le rôle IAM a besoin d'une secretsmanager:GetSecretValue autorisation sur le secret et d'une kms:Decrypt autorisation sur la CMK. La politique de ressources du secret et la politique CMK de l'autre compte doivent également accorder au rôle IAM les autorisations nécessaires. Pour plus d'informations, consultez la section Cross-account Accès.