

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Crear un secreto de cliente de Salesforce
<a name="tutorials_salesforce-client-secret"></a>

En este tutorial, creará un secreto de cliente de Salesforce y lo almacenará AWS Secrets Manager como [secreto externo gestionado](managed-external-secrets.md), activará la rotación gestionada y, a continuación, probará las credenciales rotadas intercambiándolas por un token de acceso. Este tutorial tarda aproximadamente entre 20 y 30 minutos en completarse.

En este tutorial se utilizan AWS servicios que pueden suponer gastos para usted Cuenta de AWS, incluidos los cargos por el secreto que almacene en Secrets Manager y, si decide utilizar uno, por una clave gestionada por el cliente. Para obtener más información, consulte [Precios](intro.md#asm_pricing).

**nota**  
En este tutorial se utiliza el tipo de [SalesforceClientSecret](mes-partner-salesforce.md)secreto como ejemplo. Otros tipos de secretos externos gestionados siguen un flujo similar. El secreto se crea con el formato que defina el socio de integración, se activa la rotación gestionada y, a continuación, se utilizan las credenciales rotadas. Para ver la lista de socios incorporados y los formatos secretos necesarios, consulte. [Socios de integración](mes-partners.md)

Antes de comenzar este tutorial, asegúrese de tener lo siguiente:
+ Una cuenta de Salesforce (de desarrollador o no) que le permite crear aplicaciones de cliente externas (ECA).
+ Permisos administrativos para su. Cuenta de AWS En un entorno de producción, se recomienda utilizar diferentes roles para diferentes tareas. Por ejemplo, un rol que gestione los secretos de su organización crearía el secreto y un rol independiente lo usaría en tiempo de ejecución. Para los pasos del tutorial, le recomendamos que siga utilizando la misma identidad. Para obtener más información sobre cómo configurar permisos en un entorno de producción, consulte [Autenticación y control de acceso para AWS Secrets Manager](auth-and-access.md).

**Topics**
+ [Paso 1: Crea una aplicación cliente externa y activa OAuth](#tutorials_salesforce-client-secret_step1)
+ [Paso 2: Cree el secreto externo gestionado y active la rotación](#tutorials_salesforce-client-secret_step2)
+ [Paso 3: Probar las credenciales rotadas](#tutorials_salesforce-client-secret_step3)
+ [Paso 4: limpie los recursos](#tutorials_salesforce-client-secret_step4)
+ [Siguientes pasos](#tutorials_salesforce-client-secret_nextsteps)

## Paso 1: Crea una aplicación cliente externa y activa OAuth
<a name="tutorials_salesforce-client-secret_step1"></a>

El primer paso es crear una aplicación de cliente externa (ECA) en Salesforce y configurarla para OAuth, de modo que Secrets Manager pueda rotar el secreto del cliente. Para ver el procedimiento completo de Salesforce, consulte [Configurar la autorización con una aplicación de cliente externa](https://developer.salesforce.com/docs/platform/accsdk/guide/acc-sdk-setup-auth-external.html) en la documentación de Salesforce.

Al configurar la ECA, asegúrese de configurar lo siguiente:
+ A nivel de la organización, habilite **Permitir el acceso a los secretos de los consumidores de aplicaciones cliente externas mediante la API REST**. Esta configuración permite a Secrets Manager recuperar y rotar el secreto del consumidor a través de la API REST de Salesforce.
+ En el ECA, habilita el ámbito de OAuth. **Gestiona los datos de los usuarios mediante las API (api)**.
+ En el ECA, habilite **Habilitar el flujo de credenciales del cliente**.
+ En el ECA, active **Habilitar el flujo de intercambio de fichas** y **Solicitar un secreto para el flujo de intercambio de fichas**.

Después de crear la ECA, recopile los valores que necesita almacenar en el secreto en el siguiente paso:
+ La **clave de consumidor** (ID de cliente) y el secreto de **consumidor (secreto** de cliente) de la configuración de OAuth de ECA Manager.
+ Su URL base de Salesforce My Domain, por ejemplo. `https://{{MyDomainName}}.my.salesforce.com`
+ El **ID de aplicación** y el **ID de consumidor** de la ECA. Se corresponden con los `consumer_id` campos `external_client_app_identifier` y de la documentación de Salesforce. Para obtener información sobre cómo recuperar estos valores, consulte [Stage OAuth Credentials](https://help.salesforce.com/s/articleView?id=xcloud.eca_stage_oauth_credentials.htm&type=5) en la documentación de Salesforce.

Para obtener una descripción de cada campo obligatorio del secreto, consulte. [Secreto de cliente de Salesforce](mes-partner-salesforce.md)

## Paso 2: Cree el secreto externo gestionado y active la rotación
<a name="tutorials_salesforce-client-secret_step2"></a>

A continuación, guarda el secreto del cliente de Salesforce en Secrets Manager como un secreto externo gestionado y activa la rotación gestionada. Con la rotación gestionada, no se crea ni se mantiene una función de rotación Lambda. Secrets Manager cambia el secreto por ti.

**Para crear el secreto y activar la rotación (consola)**

1. Abra la consola de Secrets Manager en [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Elija **Almacenar un secreto nuevo**.

1. En la página **Elegir tipo de secreto**, haga lo siguiente:

   1. En **Tipo de secreto**, elija el tipo de secreto externo gestionado por el secreto del cliente de Salesforce (**SalesforceClientSecret**).

   1. Introduzca los campos de valores secretos para el secreto del cliente de Salesforce: la clave del consumidor, el secreto del consumidor, el URI base, el ID de la aplicación y el ID del consumidor. Para obtener una descripción de cada campo, consulte[Secreto de cliente de Salesforce](mes-partner-salesforce.md).

   1. Para la **clave de cifrado**, elija utilizar **aws/secretsmanager** Clave administrada de AWS para Secrets Manager. No se aplica ningún cargo por el uso de esta clave. También puede utilizar su propia clave gestionada por el cliente. Para obtener información sobre los costos por usar una clave administrada por el cliente, consulte [Precios](intro.md#asm_pricing).

   1. Elija **Siguiente**.

1. En la página **Configurar el secreto**, introduzca un **nombre secreto** descriptivo y una **descripción** y, a continuación, seleccione **Siguiente**.

1. En la página **Configurar la rotación**, haga lo siguiente. En el caso de los secretos externos gestionados, la rotación está habilitada de forma predeterminada durante la creación del secreto.

   1. Confirma que **la rotación automática** esté activada.

   1. En **Metadatos de rotación**, para la **versión de la API** (`apiVersion`), introduzca la versión de la API de su organización de Salesforce. Este campo es obligatorio. Debe tener el formato`v{{XX.X}}`, donde debe ser {{X}} un carácter numérico, y debe ser como mínimo`v65.0`. Si quieres que Secrets Manager rote el secreto mediante un conjunto independiente de credenciales administrativas, proporciona también el ARN del secreto de administrador. Para obtener una descripción de cada campo de metadatos, consulte[Secreto de cliente de Salesforce](mes-partner-salesforce.md).

   1. En **Permisos de servicio para la rotación de secretos**, selecciona **Crear un nuevo rol** para crear automáticamente un rol de IAM con los permisos que Secrets Manager necesita para rotar el secreto. De forma predeterminada, los permisos se asignan al socio de integración de la AWS región en la que se creó el secreto. Para obtener más información, consulte [Seguridad y permisos](mes-security.md).

   1. En **Programa de rotación**, introduce tu horario en la zona horaria UTC, por ejemplo, rota automáticamente cada 30 días.

   1. Elija **Siguiente**.

1. En la página **Review (Revisar)**, revise los detalles del secreto y, a continuación, elija **Store (Almacenar)**.

Para obtener más información sobre cómo configurar la rotación de un secreto externo gestionado, incluido el AWS AWS CLI, consulte[Secretos externos gestionados por Rotate Secrets Manager](rotate-secrets_external.md).

## Paso 3: Probar las credenciales rotadas
<a name="tutorials_salesforce-client-secret_step3"></a>

El último paso consiste en confirmar que las credenciales rotadas funcionan recuperando el valor secreto e intercambiando las credenciales por un token de acceso de Salesforce.

**Para recuperar el valor secreto (consola)**

1. Abra la consola de Secrets Manager en [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. En la página **Secrets** (Secretos), elija el secreto.

1. En la página **Secret details** (Detalles del secreto), deslícese hacia abajo y elija **Retrieve secret value** (Recuperar valor del secreto). Anote la corriente `consumerKey` y `consumerSecret` los valores.

**nota**  
Confirme que los `consumerSecret` valores `consumerKey` y han cambiado realmente con respecto a los valores que almacenó originalmente. Si no han cambiado, espere un par de minutos y vuelva a comprobarlo. Si aún no han cambiado, comprueba AWS CloudTrail si hay algún `RotationFailed` evento relacionado con el secreto, que incluye detalles sobre el motivo por el que se ha producido un error en la rotación. Para obtener más información, consulte [Mi secreto externo gestionado no está rotando](troubleshoot.md#troubleshoot-mes-not-rotating).

A continuación, utilice las credenciales recuperadas para solicitar un token de acceso a Salesforce. {{MyDomainName}}Sustitúyalo por tu nombre de My Domain de Salesforce y sustituye {{consumerKey}} y por {{consumerSecret}} los valores que has recuperado.

```
curl -X POST "https://{{MyDomainName}}.my.salesforce.com/services/oauth2/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id={{consumerKey}}" \
  -d "client_secret={{consumerSecret}}"
```

Si las credenciales son válidas, Salesforce devuelve una respuesta JSON que contiene un. `access_token` Al recibir un token de acceso, se confirma que las credenciales rotadas funcionan.

Cuando utiliza ingresa comandos en un shell de comandos, existe el riesgo de que se acceda al historial de comandos o de que las utilidades tengan acceso a sus parámetros de comando. Consulte [Mitigue los riesgos de usarlo AWS CLI para almacenar sus AWS Secrets Manager secretos](security_cli-exposure-risks.md).

## Paso 4: limpie los recursos
<a name="tutorials_salesforce-client-secret_step4"></a>

Para evitar incurrir en cargos continuos, elimina los recursos que creaste en este tutorial cuando ya no los necesites: el secreto y el rol de rotación de IAM que creó Secrets Manager. Al eliminar el secreto, también se detiene la rotación automática.

**Para eliminar el secreto (consola)**

1. Abra la consola de Secrets Manager en [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. En la página **Secrets** (Secretos), elija el secreto.

1. En la sección **Secrets details (Detalles de secreto)**, elija **Actions (Acciones)** y, a continuación, elija **Delete secret (Editar descripción)**.

1. En el cuadro de diálogo **Desactivar el secreto y programar la eliminación**, introduzca un período de espera y, a continuación, seleccione **Programar la eliminación**. Secrets Manager hace que el secreto sea inaccesible inmediatamente y programa su eliminación después del período de recuperación. Para obtener más información, consulte [Eliminar un AWS Secrets Manager secreta](manage_delete-secret.md).

**Para eliminar el rol de rotación (consola)**

1. Abra la consola de IAM en y [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/), a continuación, seleccione **Roles**.

1. Busque el rol que Secrets Manager creó para la rotación, selecciónelo y, a continuación, elija **Eliminar**. Para obtener más información, consulte [Eliminación de roles o perfiles de instancia](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_delete.html) en la *Guía del usuario de IAM*.

## Siguientes pasos
<a name="tutorials_salesforce-client-secret_nextsteps"></a>
+ Para obtener más información sobre los secretos externos gestionados y los socios con los que Secrets Manager se integra, consulte[Utilización AWS Secrets Manager gestionó secretos externos para gestionar secretos de terceros](managed-external-secrets.md).
+ Para revisar los campos de metadatos de rotación y valor secreto obligatorios para Salesforce, consulte[Secreto de cliente de Salesforce](mes-partner-salesforce.md).
+ Para ver más formas de configurar la rotación de un secreto externo gestionado, consulte[Rotate gestionó los secretos externos](rotate-secrets_external.md).
+ Puede mejorar el rendimiento y reducir los costos almacenando secretos en caché. Para obtener más información, consulte [Obtenga secretos de AWS Secrets Manager](retrieving-secrets.md).
+ Para obtener información sobre el costo de usar Secrets Manager, consulte[Precios](intro.md#asm_pricing).