DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
Skip to content
World desk5 min

Fn::GetStackOutput : référencer des outputs CloudFormation entre comptes AWS

Fn::GetStackOutput lit un output CloudFormation sans export explicite. Découvrez la syntaxe, la configuration IAM intercompte, les limites et les différences avec Fn::ImportValue.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Fn::GetStackOutput permet à une pile CloudFormation de lire un output d’une autre pile sans créer d’export explicite. Pour franchir une frontière de compte, indiquez avec RoleArn un rôle assumable dans le compte source; pour une pile située dans une autre région, précisez aussi Region. La référence est faible : CloudFormation récupère la valeur à la création ou à la mise à jour de la pile consommatrice, mais ne la synchronise pas automatiquement ensuite.

Quand utiliser Fn::GetStackOutput

La fonction convient au partage d’une valeur de sortie entre piles autonomes, y compris lorsque les piles se trouvent dans des comptes ou des régions différents. Elle fonctionne également dans un même compte et une même région. Contrairement à Fn::ImportValue, elle ne nécessite pas que la pile source déclare un export.

As an Amazon Associate I earn from qualifying purchases.

La référence est dite faible parce que CloudFormation ne protège pas automatiquement la relation entre producteur et consommateur. Si l’output source change ou disparaît après le déploiement, le consommateur n’est pas mis à jour automatiquement. Il faut organiser la stabilité de la valeur et le redéploiement des consommateurs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Écrire la référence dans le modèle

La forme complète YAML accepte quatre propriétés. StackName est le nom de la pile productrice et OutputName la clé de l’output dans son modèle. Region est facultative; sans elle, CloudFormation cible la région de la pile consommatrice. RoleArn est facultative et sert notamment à accéder à une pile d’un autre compte.

Fn::GetStackOutput:
  StackName: ProducerStack
  OutputName: VpcId
  Region: us-west-2
  RoleArn: arn:aws:iam::111111111111:role/GetStackOutputRole

Omettez Region si la pile source est dans la région du consommateur. Pour une référence sans frontière de compte, le rôle d’exécution courant est utilisé par défaut.

Forme courte et fonctions imbriquées

La forme courte !GetStackOutput est admise lorsque les paramètres n’emploient pas eux-mêmes d’autres fonctions courtes. Si un paramètre contient par exemple !Ref ou !Sub, utilisez la forme longue Fn::GetStackOutput et la représentation YAML correspondante : YAML ne permet pas d’imbriquer directement plusieurs tags de forme courte.

Configurer l’accès IAM entre comptes

Pour une pile source dans un autre compte, le rôle indiqué par RoleArn doit permettre la lecture CloudFormation, et sa politique de confiance doit laisser le rôle d’exécution du consommateur l’assumer. Ces contrôles sont distincts : autoriser cloudformation:DescribeStacks ne suffit pas si l’assomption du rôle est refusée.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Dans le compte source, créez ou choisissez le rôle dont l’ARN sera indiqué dans RoleArn.
  2. Dans sa politique d’autorisation, accordez cloudformation:DescribeStacks; lorsque c’est possible, limitez la ressource à l’ARN de la pile requise.
  3. Dans sa politique de confiance, autorisez le rôle d’exécution de la pile consommatrice à effectuer sts:AssumeRole.
  4. Dans le modèle consommateur, renseignez StackName, OutputName et RoleArn. Ajoutez Region si la pile source est dans une autre région.

Une référence intercompte et interrégion exige donc que les deux dimensions soient configurées : le rôle source pour le compte et la région exacte de la pile productrice pour l’emplacement.

Choisir entre Fn::GetStackOutput et Fn::ImportValue

Critère Export et Fn::ImportValue Fn::GetStackOutput
Même compte et même région Oui Oui
Référence entre comptes Non Oui
Référence entre régions Non Oui
Export explicite requis Oui Non
Type de référence Forte Faible
La pile source est-elle protégée contre la modification ou la suppression de l’output pendant son utilisation? Oui, tant qu’un import actif le référence Non
Résolution de la valeur Par import de la valeur exportée À la création ou à la mise à jour du consommateur

Choisissez Fn::ImportValue lorsque vous avez besoin d’une dépendance forte entre piles d’un même compte et d’une même région : les imports actifs empêchent de modifier ou de supprimer l’output exporté. Choisissez Fn::GetStackOutput pour franchir une frontière de compte ou de région, ou pour éviter la gestion d’exports, en prenant en charge vous-même la stabilité et le cycle de mise à jour des dépendances. Pour des composants regroupés dans un ensemble de piles gérées ensemble, les piles imbriquées constituent également une option documentée par AWS.

Emplacements pris en charge dans un modèle

La fonction peut être employée comme valeur directe d’une propriété de ressource et dans Fn::Join, Fn::If ou Fn::Select. Les valeurs servant à construire ses paramètres ne doivent pas dépendre d’une ressource.

La référence CloudFormation signale les placements suivants comme non pris en charge; ils peuvent produire une erreur InternalFailure :

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Dans une valeur de la carte de variables de Fn::Sub.
  • Dans Fn::Base64.
  • Comme valeur directe dans la section Outputs.
  • Dans Fn::Equals de la section Conditions.
  • Dans Fn::ImportValue.

Les limites de placement peuvent évoluer. Consultez la référence actuelle d’AWS pour Fn::GetStackOutput lors de la conception du modèle ou si CloudFormation renvoie InternalFailure.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Résoudre les échecs de référence et gérer les changements

Accès refusé

Vérifiez séparément que le rôle consommateur peut assumer le rôle source et que ce dernier autorise cloudformation:DescribeStacks. Une politique d’autorisation correcte sans politique de confiance appropriée ne permet pas l’accès.

Pile ou output introuvable

Confirmez le nom exact de la pile, la clé OutputName et la région indiquée. Une région source invalide ou non activée pour le compte qui la possède peut également faire échouer l’opération.

La valeur source a changé

CloudFormation résout la référence lors de la création ou de la mise à jour du consommateur. Une modification ultérieure de l’output source ne déclenche pas de mise à jour de ce consommateur. Protégez les piles et outputs source contre les changements accidentels, puis planifiez une mise à jour du consommateur quand la valeur change.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Combinaison de régions avec us-east-1

Pour certaines références entre us-east-1 et des régions opt-in, AWS recommande de mettre à jour la compatibilité du jeton avec le point de terminaison STS global. Si cette combinaison échoue, consultez la documentation AWS de Fn::GetStackOutput et suivez la recommandation applicable.

Utiliser la fonction avec AWS CDK

Le CDK expose cette fonction sous la forme Fn.getStackOutput(). Pour des références entre piles CDK qui traversent des comptes ou des régions, cette prise en charge native peut éviter des ressources personnalisées fondées sur des paramètres Systems Manager et l’ancien mécanisme crossRegionReferences. La configuration et les détails d’API varient selon la version du CDK; vérifiez la documentation correspondant à la version installée avant d’adapter un exemple. La référence de fonction et les limites de CloudFormation sont décrites dans la documentation AWS.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.