

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.

# Cross-service confusa prevención de diputados
<a name="security-confused-deputy-prevention"></a>

El [problema de la sustitución confusa](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy) es un problema de seguridad en el que una entidad que no tiene permiso para realizar una acción puede obligar a una entidad con más privilegios a realizar la acción. En AWS, el confuso problema de un diputado puede surgir debido a la suplantación de identidad entre servicios. Cross-service La suplantación de identidad se puede producir cuando un servicio (el *servicio que llama*) invoca a otro servicio (el servicio *llamado) y aprovecha los permisos elevados del servicio* llamado para actuar sobre recursos a los que el servicio que llama no tiene autorización para acceder. Para evitar el acceso no autorizado a través del confuso problema de los diputados, AWS proporciona herramientas que ayudan a proteger los datos en todos los servicios. Estas herramientas le ayudan a controlar los permisos que se conceden a las entidades principales del servicio y limitan su acceso únicamente a los recursos de su cuenta que son necesarios. Si administra cuidadosamente los privilegios de acceso de las entidades principales de servicio, puede ayudar a mitigar el riesgo de que los servicios accedan de forma indebida a datos o recursos para los que no deberían tener permisos.

Siga leyendo para obtener una guía general o busque un ejemplo de una función de SageMaker IA específica:

**Topics**
+ [Límite de permisos con claves de condición globales](#security-confused-deputy-context-keys)
+ [SageMaker Edge Manager](#security-confused-deputy-edge-manager)
+ [SageMaker Imágenes](#security-confused-deputy-images)
+ [SageMaker Inferencia de IA](#security-confused-deputy-inference)
+ [SageMaker Trabajos de transformación por lotes de IA](#security-confused-deputy-batch)
+ [SageMaker Marketplace de IA](#security-confused-deputy-marketplace)
+ [SageMaker Neo](#security-confused-deputy-neo)
+ [SageMaker Tuberías](#security-confused-deputy-pipelines)
+ [SageMaker Trabajos de procesamiento](#security-confused-deputy-processing-job)
+ [SageMaker Estudio](#security-confused-deputy-studio)
+ [SageMaker Trabajos de formación](#security-confused-deputy-training-job)

## Límite de permisos con claves de condición globales
<a name="security-confused-deputy-context-keys"></a>

Recomendamos utilizar las claves de condición `[aws:SourceAccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)` global `[aws:SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)` y las claves de condición globales en las políticas de recursos para limitar los permisos al recurso que Amazon SageMaker AI concede a otro servicio. Si utiliza claves de contexto de condición globales y el valor de `aws:SourceArn` contiene el ID de la cuenta, el valor de `aws:SourceAccount` y la cuenta en el valor de `aws:SourceArn` deben utilizar el mismo ID de cuenta cuando se utiliza en la misma instrucción de política. Utiliza `aws:SourceArn` si desea que solo se asocie un recurso al acceso entre servicios. Utiliza `aws:SourceAccount` si quiere permitir que cualquier recurso de esa cuenta se asocie al uso entre servicios.

La forma más eficaz de protegerse contra el problema del suplente confuso es utilizar la clave de condición global de `aws:SourceArn` con el ARN completo del recurso. Si no conoce el ARN completo del recurso o si especifica varios recursos, utilice la clave de condición global `aws:SourceArn` con comodines (`*`) para las partes desconocidas del ARN. Por ejemplo, `arn:aws:sagemaker:*:{{123456789012}}:*`.

En el siguiente ejemplo, se muestra cómo utilizar las claves de condición `aws:SourceArn` y las claves de condición `aws:SourceAccount` globales de la SageMaker IA para evitar el confuso problema de los diputados.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "ConfusedDeputyPreventionExamplePolicy",
    "Effect": "Allow",
    "Principal": {
      "Service": "sagemaker.amazonaws.com"
    },
    "Action": "{{sagemaker}}:{{StartSession}}",
    "Resource": "arn:aws:{{sagemaker}}:{{us-east-1}}:{{123456789012}}:{{ResourceName}}/*",
    "Condition": {
      "ArnLike": {
        "aws:SourceArn": "arn:aws:sagemaker:{{us-east-1}}:{{123456789012}}:*"
      },
      "StringEquals": {
        "aws:SourceAccount": "{{123456789012}}"
      }
    }
  }
}
```

------

## SageMaker Edge Manager
<a name="security-confused-deputy-edge-manager"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de suplentes entre servicios {{123456789012}} en SageMaker Edge Manager creado por el número de cuenta de la {{us-west-2}} región.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
      "Effect": "Allow",
      "Principal": { "Service": "sagemaker.amazonaws.com" },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:*"
      }
    }
  }
}
```

------

Puede reemplazar el `aws:SourceArn` de esta plantilla por el ARN completo de un trabajo de empaquetado específico para limitar aún más los permisos.

## SageMaker Imágenes
<a name="security-confused-deputy-images"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar que el problema de las [SageMaker imágenes](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html) sea confuso y confuso entre servicios. Utilice esta plantilla con `[Image](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Image.html)` o `[ImageVersion](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ImageVersion.html)`. En este ejemplo, se utiliza un ARN de `ImageVersion` registro con el número de cuenta. {{123456789012}} Tenga en cuenta que, dado que el número de cuenta forma parte del valor `aws:SourceArn`, no necesita especificar ningún valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Principal": {
            "Service": "sagemaker.amazonaws.com"
        },
        "Action": "sts:AssumeRole",
        "Condition": {
            "ArnLike": {
            "aws:SourceArn": "arn:aws:sagemaker:{{us-east-2}}:{{123456789012}}:{{image-version}}/*"
            }
        }
    }
}
```

------

No sustituya el `aws:SourceArn` de esta plantilla por el ARN completo de una imagen o versión de imagen específica. El ARN debe estar en el formato indicado anteriormente y especificar una `image` o `image-version`. El `partition` marcador de posición debe designar una partición AWS comercial (`aws`) o una partición AWS en China (`aws-cn`), según dónde se esté ejecutando la imagen o la versión de la imagen. Del mismo modo, el `region` marcador de posición del ARN puede ser [cualquier región válida](https://docs.aws.amazon.com/sagemaker/latest/dg/regions-quotas.html) en la que SageMaker haya imágenes disponibles.

## SageMaker Inferencia de IA
<a name="security-confused-deputy-inference"></a>

[En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el problema de los intermediarios confusos entre servicios a la hora de realizar inferencias SageMaker [asíncronas, en tiempo real](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints) y [sin servidor](https://docs.aws.amazon.com/sagemaker/latest/dg/serverless-endpoints).](https://docs.aws.amazon.com/sagemaker/latest/dg/async-inference) Tenga en cuenta que, dado que el número de cuenta forma parte del valor `aws:SourceArn`, no necesita especificar ningún valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Principal": { "Service": "sagemaker.amazonaws.com" },
    "Action": "sts:AssumeRole",
    "Condition": {
      "ArnLike": {
        "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:*"
      }
    }
  }
}
```

------

No sustituya el `aws:SourceArn` de esta plantilla por el ARN completo de un modelo o punto de conexión específico. El ARN debe estar en el formato indicado anteriormente. El asterisco de la plantilla de ARN no significa comodín y no debe cambiarse. 

## SageMaker Trabajos de transformación por lotes de IA
<a name="security-confused-deputy-batch"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de los [trabajos de transformación por lotes](https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html) de SageMaker IA creados por número de cuenta {{123456789012}} en la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:transform-job/*"
        }
      }
    }
  ]
}
```

------

Puede reemplazar el `aws:SourceArn` de esta plantilla por el ARN completo de un trabajo de transformación por lotes específico para limitar aún más los permisos. 

## SageMaker Marketplace de IA
<a name="security-confused-deputy-marketplace"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el problema de los diputados confusos entre servicios para los recursos de SageMaker AI Marketplace creados por el número de cuenta {{123456789012}} en la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`. 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:*"
        }
      }
    }
  ]
}
```

------

No sustituya el `aws:SourceArn` de esta plantilla por el ARN completo de un paquete específico de algoritmos o modelos. El ARN debe estar en el formato indicado anteriormente. El asterisco de la plantilla ARN significa comodín y abarca todos los trabajos de formación, los modelos y los trabajos de transformación por lotes a partir de las etapas de validación, así como los paquetes de algoritmos y modelos publicados en AI Marketplace. SageMaker 

## SageMaker Neo
<a name="security-confused-deputy-neo"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de suplentes entre servicios en los trabajos de compilación de SageMaker Neo creados por número de cuenta {{123456789012}} en la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:{{compilation-job/*}}"
        }
      }
    }
  ]
}
```

------

Puede reemplazar el `aws:SourceArn` de esta plantilla por el ARN completo de un trabajo de compilación específico para limitar aún más los permisos.

## SageMaker Tuberías
<a name="security-confused-deputy-pipelines"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar que las tuberías que utilizan registros de ejecución de canalizaciones de una o más [SageMaker canalizaciones](https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-overview.html) se vuelvan confusas y confusas entre servicios. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "sagemaker.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:sagemaker:{{us-east-1}}:{{123456789012}}:pipeline/{{mypipeline/*}}"
                }
            }
        }
    ]
}
```

------

No sustituya el `aws:SourceArn` de esta plantilla por el ARN completo de una ejecución de canalización específica. El ARN debe estar en el formato indicado anteriormente. El `partition` marcador de posición debe designar una partición AWS comercial (`aws`) o una partición AWS en China (`aws-cn`), según el lugar en el que circule el oleoducto. Del mismo modo, el `region` marcador de posición del ARN puede ser [cualquier región válida](https://docs.aws.amazon.com/sagemaker/latest/dg/regions-quotas.html) en la que Pipelines esté SageMaker disponible.

El asterisco de la plantilla de ARN significa comodín y abarca todas las ejecuciones de canalización de una canalización denominada `mypipeline`. Si quieres conceder permisos `AssumeRole` para todas las canalizaciones de la cuenta `123456789012` en lugar de para una canalización específica, entonces el `aws:SourceArn` sería `arn:aws:sagemaker:*:123456789012:pipeline/*`.

## SageMaker Trabajos de procesamiento
<a name="security-confused-deputy-processing-job"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de subcontratación entre servicios al SageMaker procesar los trabajos creados por número de cuenta {{123456789012}} en la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:{{processing-job/*}}"
        }
      }
    }
  ]
}
```

------

Puede reemplazar el `aws:SourceArn` de esta plantilla por el ARN completo de un trabajo de procesamiento específico para limitar aún más los permisos.

## SageMaker Estudio
<a name="security-confused-deputy-studio"></a>

En el siguiente ejemplo, se muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de suplentes entre servicios de SageMaker Studio creado por el número de cuenta {{123456789012}} de la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta forma parte del valor `aws:SourceArn`, no necesita especificar ningún valor `aws:SourceAccount`. 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:*"
        }
      }
    }
  ]
}
```

------

No sustituya el `aws:SourceArn` de esta plantilla por el ARN completo de una aplicación, perfil de usuario o dominio específicos de Studio. El ARN debe estar en el formato proporcionado en el ejemplo anterior. El asterisco de la plantilla de ARN no significa comodín y no debe cambiarse.

## SageMaker Trabajos de formación
<a name="security-confused-deputy-training-job"></a>

El siguiente ejemplo muestra cómo se puede utilizar la clave de condición `aws:SourceArn` global para evitar el confuso problema de los diputados entre servicios en el caso de los puestos de SageMaker formación creados por el número de cuenta {{123456789012}} en la {{us-west-2}} región. Tenga en cuenta que, dado que el número de cuenta está en el ARN, no necesita especificar un valor `aws:SourceAccount`.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:sagemaker:{{us-west-2}}:{{123456789012}}:{{training-job/*}}"
        }
      }
    }
  ]
}
```

------

Puede reemplazar el `aws:SourceArn` de esta plantilla por el ARN completo de un trabajo de entrenamiento específico para limitar aún más los permisos.

**Tema siguiente**  
Para obtener más información sobre la gestión de las funciones de ejecución, consulte [Funciones de SageMaker IA](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles).