Prevención del suplente confuso - Amazon Fraud Detector

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.

Prevención del suplente confuso

El confuso problema del diputado se produce cuando una entidad que no tiene permiso para realizar una acción puede coaccionar a una entidad con más privilegios para que la lleve a cabo. AWS proporciona herramientas que te ayudan a proteger tu cuenta si permites a terceros (lo que se denomina multicuenta) o a otros AWS servicios (denominados servicios cruzados) acceder a los recursos de tu cuenta.

Cuando un servicio (el servicio de llamadas) llama a otro servicio (el servicio al que se llama) se produce un problema de confusión entre servicios (el servicio al que se llama). El servicio que lleva a cabo las llamadas se puedes manipular para utilizar sus permisos a fin de actuar en función de los recursos de otro cliente de una manera en la que no debe tener permiso para acceder. Para evitarlo, puedes crear políticas que te ayuden a proteger los datos de todos los servicios con los directores de servicio que tengan acceso a los recursos de tu servicio.

Amazon Fraud Detector admite el uso de funciones de servicio en sus políticas de permisos para permitir que un servicio acceda a los recursos de otro servicio en su nombre. Un rol requiere dos políticas: una política de confianza de rol que especifica la entidad principal que puede asumir el rol y una política de permisos que especifica qué se puede hacer con el rol. Cuando un servicio asume un rol en su nombre, se debe permitir que la entidad principal del servicio realice la acción sts:AssumeRole en la política de confianza de rol. Cuando un servicio llamasts:AssumeRole, AWS STS devuelve un conjunto de credenciales de seguridad temporales que el director del servicio utiliza para acceder a los recursos permitidos por la política de permisos del rol.

Para evitar el problema de los adjuntos confusos entre servicios, Amazon Fraud Detector recomienda utilizar las claves de contexto de condición aws:SourceAccountglobal aws:SourceArny las claves de contexto de condición global en su política de confianza de roles para limitar el acceso al rol solo a las solicitudes generadas por los recursos esperados.

aws:SourceAccountEspecifica el ID de cuenta y aws:SourceArn especifica el ARN del recurso asociado al acceso entre servicios. aws:SourceArnDebe especificarse mediante el formato ARN. Asegúrese de que ambos aws:SourceAccount aws:SourceArn utilizan el mismo identificador de cuenta cuando se utilizan en la misma declaración de política.

La forma más eficaz de protegerse contra el problema de la sustitución confusa es utilizar la clave de contexto de condición global de aws:SourceArn con el ARN completo del recurso. Si no conoce el ARN completo del recurso o si está especificando varios recursos, utilice la clave de condición de contexto aws:SourceArn global con un comodín (*) para las partes desconocidas del ARN. Por ejemplo, arn:aws:servicename:*:123456789012:*. Para obtener información sobre los recursos y las acciones de Amazon Fraud Detector que puede utilizar en sus políticas de permisos, consulte Acciones, recursos y claves de condición de Amazon Fraud Detector.

El siguiente ejemplo de política de confianza de roles utiliza un comodín (*) en la clave de aws:SourceArn condición para permitir que Amazon Fraud Detector acceda a varios recursos asociados al ID de cuenta.

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

La siguiente política de confianza de roles permite a Amazon Fraud Detector acceder únicamente a external-model los recursos. Observe el aws:SourceArn parámetro en el bloque de condiciones. El calificador de recursos se crea utilizando el punto final del modelo que se proporciona para realizar la llamada a la PutExternalModel API.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "frauddetector.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "StringLike": { "aws:SourceArn": "arn:aws:frauddetector:us-west-2:123456789012:external-model/MyExternalModeldoNotDelete-ReadOnly" } } } ] }