Criação de uma configuração personalizada do mecanismo de credenciais
Depois de criar o projeto e o trabalho IBM Cloud® Code Engine, você pode criar a configuração personalizada do mecanismo de credenciais. A configuração do mecanismo faz referência ao seu projeto Code Engine e ao trabalho Code Engine específico no projeto que você deseja usar para um segredo de credencial personalizado.
As credenciais personalizadas têm várias limitações. Você pode ler sobre eles na página Problemas conhecidos e limitações.
Antes de Iniciar
Certifique-se de concluir esses pré-requisitos:
- Crie um projeto e um trabalho no site Code Engine.
- Crie um segredo de credenciais do IAM que permita o acesso de Code Engine a Secrets Manager. A credencial e a autorização do IAM permitem que o Code Engine retorne as
informações para o Secrets Manager e faça as atualizações necessárias no Secrets Manager relevantes para o segredo de suas credenciais personalizadas. O segredo das credenciais do IAM deve ser:
- Ter uma política de rotação automática definida.
- Estar associado a um ID de serviço ou grupo de acesso que tenha as seguintes permissões:
secrets-manager.secret-task.updateno grupo secreto em que a credencial personalizada foi criada.- Se aplicável,
secrets-manager.secret.readem qualquer grupo secreto que contenha segredos de referência necessários para que o trabalho Code Engine conclua suas ações.
- Como alternativa, configure um perfil confiável para autenticação. Consulte a documentação do site Code Engine para obter detalhes sobre a configuração.
- Crie uma autorização de serviço do IAM entre Secrets Manager como a origem e o projeto Code Engine como o destino.
Criação da configuração do mecanismo de credenciais personalizadas no console
Navegue até a tela Custom credentials (Credenciais personalizadas ) dentro da navegação Secret engines (Mecanismos secretos ) e, em seguida, crie a configuração para suas credenciais personalizadas inserindo as informações relevantes no console.
-
Na página Mecanismos de segredos, clique na guia Credenciais personalizadas.
-
Clique em Adicionar configuração
- Forneça um nome de configuração.
- Selecione a região onde seu projeto Code Engine foi criado.
- Selecione o projeto e o trabalho que foi criado para esse segredo de credenciais personalizadas. Se o projeto e o trabalho estiverem em outra conta, insira o ID do projeto e o nome do trabalho.
- Ao criar a configuração, você será solicitado a criar uma autorização de serviço IAM entre Secrets Manager como Source e Code Engine como Target, se não tiver sido criada anteriormente.
- Opcionalmente, selecione o segredo de credenciais do IAM que você criou anteriormente ou crie um no contexto.
-
Clique em Incluir.
Criação da configuração personalizada do mecanismo de credenciais usando a API
Você pode criar uma configuração de mecanismo de credenciais personalizada programaticamente, chamando a API Secrets Manager. Quando você chamar a API, substitua as variáveis api_key_ref e code_engine e o token IAM
pelos valores específicos da sua instância Secrets Manager. Opcionalmente, você pode fornecer um parâmetro task_timeout para personalizar o tempo limite da tarefa.
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"
Criação da configuração personalizada do mecanismo de credenciais a partir da CLI
Antes de começar, siga os documentos da CLI para definir seu endpoint de API.
Para criar uma configuração de mecanismo de credenciais personalizada usando o plug-in Secrets Manager CLI, execute o comando ibmcloud secrets-manager configuration-create comando. Opcionalmente, você pode usar o sinalizador --configuration-task-timeout para personalizar o tempo limite da tarefa.
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"}'
Criação da configuração personalizada do mecanismo de credenciais usando o Terraform
Você pode criar uma configuração de mecanismo de credenciais personalizada usando o Terraform para 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"
}
Próximas etapas
Depois de criar a configuração do mecanismo de credenciais personalizadas, agora você pode criar um segredo de credenciais personalizadas.