Créer une action pour une politique « au lancement de l'opération de ressources »

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 2 minutes de lecture
  • Le déclencheur au lancement de l'opération de ressources s'active avant que le catalogue d'une opération de ressources ne soit chargé à partir du Portail de l'utilisateur dans le cloud. Une politique déclenchée par le déclencheur de lancement d’une opération de ressources peut exécuter un script ou remplacer une valeur demandée par l’utilisateur (valeurs de texte uniquement).

    Avant de commencer

    Procédure

    1. Dans le portail d’administration du cloud, accédez à Piloter > Politiques.
    2. Ouvrez une politique dans le cloud et définissez-la sur l’état Brouillon si nécessaire.
    3. Ouvrez la règle qui doit effectuer l’action, puis cliquez sur Nouveau dans la liste connexe Actions de règle de politique.
    4. Dans la fenêtre contextuelle, cliquez sur Créer pour le type d’action à effectuer, saisissez un nom d’action unique et significatif, puis remplissez le formulaire de l’action.
      Fenêtre contextuelle Créer une action
      Tableau 1. Paramètres de l'action « Exécuter un script »
      Champ Description
      Catégorie du script d’action Sélectionnez une catégorie.
      Nom du script d’action Spécifiez un nom unique et significatif pour le script.
      Script d'action Créez le script dans la zone de texte.

      Consultez Créer un script d’action de politique pour en savoir plus.

      Tableau 2. Paramètres de l’action « Remplacement de propriété »
      Champ Description
      Propriété Spécifiez le nom de la propriété (attribut) sur le formulaire de demande de l’utilisateur à remplacer.
      Valeur
      Saisissez une valeur qui remplace la valeur du champ Propriété . Vous ne pouvez remplacer que les valeurs de texte. Vous pouvez spécifier une valeur statique, une expression ou les deux. L’exemple d’action, nommé SetTheCostCenter, spécifie la valeur Marketing pour la propriété CostCenter .
      Figure 1. Configurer une action de remplacement de propriété
      Configurer une action de remplacement de propriété
      Remarque :

      Lorsqu’une règle de politique et une règle de formulaire remplacent une valeur, la valeur de la règle de formulaire est utilisée.

      Les expressions peuvent effectuer les actions suivantes (voir Utilisation d’expressions dans Mise en service et gouvernance du cloud pour plus de détails) :
      • Définissez les valeurs des données du formulaire à l’aide des expressions de définition. Par exemple : ${parameter.formData.CatalogAttributeType}
      • Affectez les valeurs de données de l’utilisateur à l’aide d’expressions de définition. Par exemple : ${parameter.userData.userId}

        Par exemple, la valeur suivante peut définir le nom de la pile sur Stack_Bob.Smith@company.com : Stack_${parameter.userData.userId}

      • Définir les valeurs de pile ou de table à l’aide d’expressions d’exécution.

        Par exemple : $(ci.sn_cmp_ip_pool[subnet=${parameter.formData.Subnet Id}]) prend le sous-réseau de la table Pools d’IP.

      • Associez un nombre aléatoire à un champ à l’aide d’expressions statiques. Utiliser : ${randomNumber}
      Est basé sur le script Sélectionnez la case à cocher pour afficher la zone de texte Script , puis spécifiez le script.

      Vous pouvez utiliser l’exemple d’extrait de script suivant pour remplacer un nom de pile. La section fonction (formData) du script modifie les valeurs des champs du formulaire. MyStack est le nom de la pile dans cet exemple.

      customScript : function( formData){
                     // Manipulation of form parameter is only supported here. 
                     // Change in any other attributes will be ignored
                     // data available for manipulation are
                     // Form Data - Ex. StackName can be accessed 
                     // through formData.StackName
                     // formData.StackName = "MyStack";
                     // User Data - Ex. User Id can be accessed 
                     // through this.parameters.userData
                     // if(this.parameter.userData.userId == 'servicenowuserId')
                        formData.StackName = "MyStack";
                        return formData;
                      },