Creazione di una configurazione personalizzata del motore delle credenziali

Dopo aver creato il progetto e il lavoro IBM Cloud® Code Engine, è possibile creare la configurazione del motore delle credenziali personalizzato. La configurazione del motore fa riferimento al progetto Code Engine e al lavoro specifico Code Engine nel progetto che si desidera utilizzare per un segreto di credenziale personalizzato.

Le credenziali personalizzate hanno diverse limitazioni. Potete leggerli nella pagina Problemi noti e limitazioni.

Prima di iniziare

Assicuratevi di aver completato questi prerequisiti:

  • Creare un progetto e un lavoro Code Engine.
  • Creare un segreto delle credenziali IAM che consenta l'accesso di Code Engine a Secrets Manager. Le credenziali e l'autorizzazione IAM consentono a Code Engine di restituire le informazioni a Secrets Manager e di effettuare gli aggiornamenti necessari a Secrets Manager in base al segreto delle credenziali personalizzate. Il segreto delle credenziali IAM deve:
    • Impostare una politica di rotazione automatica.
    • Essere associati a un ID servizio o a un gruppo di accesso con le seguenti autorizzazioni:
      • secrets-manager.secret-task.update sul gruppo segreto in cui è stata creata la credenziale personalizzata.
      • Se applicabile, secrets-manager.secret.read su qualsiasi gruppo di segreti che contiene i segreti di riferimento necessari al lavoro Code Engine per completare le sue azioni.
    • In alternativa, configurare un profilo di fiducia per l'autenticazione. Per i dettagli sulla configurazione, fare riferimento alla documentazione di Code Engine.
  • Creare un'autorizzazione di servizio IAM tra Secrets Manager come origine e il progetto Code Engine come destinazione.

Creazione della configurazione personalizzata del motore delle credenziali nella console

Passare alla schermata Credenziali personalizzate all'interno della navigazione Motori segreti, quindi creare la configurazione delle credenziali personalizzate inserendo le informazioni pertinenti nella console.

  1. Nella pagina Motori segreti, fare clic sulla scheda Credenziali personalizzate.

  2. Fare clic su Aggiungi configurazione

    1. Fornire un nome di configurazione.
    2. Selezionare la regione in cui è stato creato il progetto Code Engine.
    3. Selezionare il progetto e il lavoro creato per questo segreto di credenziali personalizzato. Se il progetto e il lavoro sono in un altro account, inserire l'ID del progetto e il nome del lavoro.
    4. Durante la creazione della configurazione viene richiesto di creare un'autorizzazione di servizio IAM tra Secrets Manager come Sorgente e Code Engine come Destinazione, se non è stata precedentemente creata.
    5. Selezionare facoltativamente il segreto delle credenziali IAM precedentemente creato o crearne uno nel contesto.
  3. Fai clic su Aggiungi.

Creare la configurazione personalizzata del motore delle credenziali utilizzando l'API

È possibile creare una configurazione personalizzata del motore delle credenziali in modo programmatico, chiamando l'API Secrets Manager. Quando si chiama l'API, sostituire le variabili api_key_ref e code_engine e il token IAM con i valori specifici dell'istanza Secrets Manager. È possibile fornire facoltativamente un parametro task_timeout per personalizzare il timeout dell'attività.

curl -X POST
    -H "Authorization: Bearer {IAM_token}" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d '{
      "name": "my_config",
      "config_type": "custom_credentials_configuration",
      "api_key_ref": "a2f9c2e4-a3a8-c508-2bed-fcb7c26843ca",
      "code_engine": {
        "job_name": "code-engine-job-name",
        "project_id": "12345678-5120-4a18-832a-4ba122496633",
        "region": "us-south"
      },
      "task_timeout": "50m"
    }'
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations"

Creazione della configurazione personalizzata del motore delle credenziali da CLI

Prima di iniziare, seguire la documentazione della CLI per impostare l'endpoint API.

Per creare una configurazione personalizzata del motore delle credenziali utilizzando il plug-in Secrets Manager CLI, eseguire il comando ibmcloud secrets-manager configuration-create il comando. È possibile utilizzare il flag --configuration-task-timeout per personalizzare il timeout del task.

ibmcloud secrets-manager configuration-create --config-type=custom_credentials_configuration --name=my-custom-credentials-config --custom-credentials-apikey-ref IAM_credentials_secret_ID --custom-credentials-code-engine '{"project_id":"12345678-5120-4a18-832a-4ba122496633", "region":"us-south", "job_name":"code-engine-job-name"}'

Creare la configurazione personalizzata del motore delle credenziali utilizzando Terraform

È possibile creare una configurazione personalizzata del motore delle credenziali utilizzando Terraform per Secrets Manager.

resource "ibm_sm_custom_credentials_configuration" "sm_custom_credentials_configuration_instance" {
	instance_id = ibm_resource_instance.sm_instance.guid
	region = "us-south"
	name = "example-custom-credentials-config"
	api_key_ref = ibm_sm_iam_credentials_secret.my_secret_for_custom_credentials.secret_id
	code_engine {
	    project_id = ibm_code_engine_project.my_code_engine_project.project_id
	    job_name = "my_code_engine_job"
	    region = "us-south"
	}
	task_timeout = "10m"
}

Passi successivi

Una volta creata la configurazione del motore delle credenziali personalizzato, è possibile creare un segreto delle credenziali personalizzato.