Usa cuentas de servicio de OAuth 2.0 con la API de Manufacturer Center

Las cuentas de servicio son Cuentas de Google especiales que las aplicaciones pueden usar para acceder a las API de Google de manera programática a través de OAuth 2.0. Una cuenta de servicio usa un flujo de OAuth 2.0 que no requiere autorización adicional. En su lugar, usa un archivo de claves al que solo puede acceder tu aplicación. En esta guía, se explica cómo acceder a la API de Manufacturer Center con cuentas de servicio.

Requisitos previos

Pasos para usar una cuenta de servicio a fin de acceder a la API de Manufacturer Center

  1. Genera credenciales de cuenta de servicio o accede a las credenciales públicas que ya generaste. Deberás crear un ID de cliente de OAuth 2.0 y obtener un archivo de claves privadas *.json:

    1. Ve a la Consola de API de Google.

    2. Selecciona un proyecto en el menú desplegable de la parte superior de la página. Si aún no tienes uno, haz clic en Crear proyecto para crearlo.

    3. Si aún no habilitaste la API de Manufacturer Center para este proyecto, búscala en la lista de API de Google y habilítala.

    4. En la barra lateral izquierda, selecciona Credenciales.

    5. Para configurar una cuenta de servicio, selecciona Crear credenciales y, luego, Clave de cuenta de servicio. ![Crear credenciales para la cuenta de servicio

captura de pantalla.](../images/create_service_account_credentials.png)

6.  On the next page, select **New service account** from the drop-down
    list.

7.  <a name="service-account-name"></a> Name the new service account. This
    also serves as the default username for the service account ID. Remember
the service account ID for use later.

Note: The choice of role for the service account will not have any effect on
what calls can be made to the Manufacturer Center API, as access to
    Manufacturer Center API methods is determined instead by the role
    associated with the service account ID in Manufacturer Center. If you
    are unsure what to pick, just pick Project►Viewer.

![New service account name

captura de pantalla.. (../images/new_service_account_name.png)

8.  Select **JSON** for the key type, then click **Create**.

9.  The **Create** button will change to **Creating...**, and once the key
    generation finishes, it will automatically download the private key as a
*.json file.

Important: Protect the *.json key file that allows a service account to
    access the Google services for which it has been authorized. It is good
practice to allow service accounts to only access one Google API each. This
is a preventative measure to mitigate the amount of data an attacker can
    access in the situation that the service account's *.json key file is
    compromised.

10.  You will be returned to the Credentials page, and you should see the
    new service account in the list of service account keys for your
    account.
  1. Agregue la cuenta de servicio nueva como usuario a su cuenta de Manufacturer Center. Si eres un desarrollador externo, deberás pedirle a tu cliente que realice este paso por ti.

    1. Vaya a su cuenta de Manufacturer Center.

    2. Dirígete a la lista “Usuarios” en la configuración de tu cuenta de Manufacturer Center.

    3. Haz clic en el botón +Usuario y usa el ID de la cuenta de servicio como la dirección de correo electrónico del usuario nuevo. ![Botón para agregar una cuenta de servicio de usuario

captura de pantalla.](../images/add_service_account_network_settings.png)

4.  Fill in the form with the [service account ID](#service-account-name),
    and select the desired user role(s). At least one must be chosen, and
    use of the `Accounts` service requires the Admin role.

If you did not take note of the service account ID earlier, go to the
    [Service
    Accounts](https://console.developers.google.com/iam-admin/serviceaccounts/)
administration page and select the project you created.

![Add service account user page

captura de pantalla.](../images/add_service_account_page.png)

5.  Click on the **Save** button. You will be returned to the list of users,
and the service account ID should be listed with the chosen user role(s).

6.  Repeat the process for all other service accounts you want to add.

7.  View existing service account users by going to the Users tab. These
    will be users with an email address ending in 'gserviceaccount.com'.
  1. Ahora puedes acceder a tu cuenta de Manufacturer Center mediante la cuenta de servicio mediante el flujo de credenciales predeterminadas de la aplicación de Google o mediante el flujo de la cuenta de servicio directamente. En las Muestras de la API de Manufacturer Center, se muestra cómo usar ambos flujos para las credenciales de cuenta de servicio en cada lenguaje de programación compatible. Consulta las muestras de código para probar tu cuenta de servicio nueva y conocer qué cambios necesitarás para usar las cuentas de servicio en tu propio código.

Preguntas frecuentes

¿Puedo acceder a la interfaz de usuario web de Manufacturer Center con mi cuenta de servicio?

No, las cuentas de servicio no son Cuentas de Google normales y no pueden acceder a la interfaz de usuario web de Manufacturer Center.

¿Con qué frecuencia debo actualizar los tokens de acceso de la cuenta de servicio?

Los tokens de acceso vencen una hora después de que el servidor de autorización de Google OAuth 2.0 los emite. Cuando un token de acceso caduca, la aplicación debe usar la biblioteca cliente para recuperar otro token de acceso.