

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.

# Utilizar un registro de Docker que requiera autenticación para el entrenamiento
<a name="docker-containers-adapt-your-own-private-registry-authentication"></a>

Si su registro de Docker requiere autenticación, debe crear una AWS Lambda función que proporcione credenciales de acceso a la IA. SageMaker A continuación, cree un trabajo de entrenamiento y proporcione el ARN de esta función de Lambda dentro de la API [create\$1training\$1job](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_training_job). Por último, si lo desea, puede crear un punto de conexión de VPC de interfaz para que su VPC pueda comunicarse con su función de Lambda sin enviar tráfico a través de Internet. En la siguiente guía se muestra cómo crear una función de Lambda, asignarle la función correcta y crear un punto de conexión de VPC de interfaz.

## Crear la función de Lambda
<a name="docker-containers-adapt-your-own-private-registry-authentication-create-lambda"></a>

Cree una AWS Lambda función que pase las credenciales de acceso a la SageMaker IA y devuelva una respuesta. En el siguiente ejemplo de código se crea el controlador de funciones de Lambda, de la siguiente manera.

```
def handler(event, context):
   response = {
      "Credentials": {"Username": "username", "Password": "password"}
   }
   return response
```

El tipo de autenticación utilizado para configurar el registro privado de Docker determina el contenido de la respuesta que devuelve la función de Lambda como se muestra a continuación.
+ Si su registro privado de Docker utiliza la autenticación básica, la función de Lambda devolverá el nombre de usuario y la contraseña necesarios para autenticarse en el registro.
+ Si su registro privado de Docker utiliza la [autenticación por token de portador](https://docs.docker.com/registry/spec/auth/token/), el nombre de usuario y la contraseña se envían a su servidor de autorización, que luego devuelve un token de portador. Luego, este token se usa para autenticarse en su registro privado de Docker.

**nota**  
Si tiene más de una función de Lambda para sus registros en la misma cuenta y el rol de ejecución es el mismo para sus trabajos de entrenamiento, los trabajos de entrenamiento para el registro uno tendrían acceso a las funciones de Lambda de los demás registros.

## Conceda el permiso de rol correcto a la función de Lambda.
<a name="docker-containers-adapt-your-own-private-registry-authentication-lambda-role"></a>

La [IAMrole](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html)que utilices en la `create_training_job` API debe tener permiso para llamar a una AWS Lambda función. En el siguiente ejemplo de código, se muestra cómo asociar una política de un rol de IAM para llamar a `myLambdaFunction`.

```
{
    "Effect": "Allow",
    "Action": [
        "lambda:InvokeFunction"
    ],
    "Resource": [
        "arn:aws:lambda:*:*:function:*myLambdaFunction*"
    ]
}
```

Para obtener más información acerca de cómo editar la política de permisos de un rol, consulte [Modificación de una política de permisos de rol (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-modify_permissions-policy) en la *Guía del usuario de AWS Identity and Access Management*.

**nota**  
Un rol de IAM con una política **AmazonSageMakerFullAccess**gestionada adjunta tiene permiso para llamar a cualquier función de Lambda cuyo nombre SageMaker incluya «AI».

## Crear un punto de conexión de VPC de la interfaz para Lambda
<a name="docker-containers-adapt-your-own-private-registry-authentication-lambda-endpoint"></a>

Si crea un punto de conexión de interfaz, su VPC de Amazon puede comunicarse con su función de Lambda sin enviar tráfico a través de Internet. Para obtener más información, consulte [Configuración de puntos de conexión de VPC de interfaz para Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc-endpoints.html) en la *AWS Lambda Guía para desarrolladores*.

Una vez creado el punto final de la interfaz, la SageMaker formación llamará a la función Lambda enviando una solicitud a través de la VPC a. `lambda.region.amazonaws.com` Si selecciona **Enable DNS Name (Habilitar nombre de DNS)** al crear el punto de conexión de la interfaz, [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) dirige la llamada al punto de conexión de la interfaz de Lambda. Si utiliza un proveedor de DNS diferente, debe asignar `lambda.region.amazonaws.co`m al punto de conexión de la interfaz de Lambda.