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.
Controlar el acceso a los recursos de Kinesis Video Streams mediante IAM
Puede usar AWS Identity and Access Management (IAM) con Amazon Kinesis Video Streams para controlar si los usuarios de su organización pueden realizar una tarea mediante operaciones específicas de la API de Kinesis Video Streams y si pueden usar recursos específicos. AWS
Para obtener más información sobre IAM, consulte lo siguiente:
Contenido
Sintaxis de la política
Una política de IAM es un documento JSON que contiene una o varias instrucciones. Cada instrucción tiene la estructura siguiente:
{
"Statement":[{
"Effect":"effect",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value"
}
}
}
]
}
Una instrucción está compuesta por varios elementos:
-
Efecto: el efecto puede ser
AllowoDeny. De forma predeterminada, los usuarios no tienen permiso para utilizar los recursos y las acciones de la API, por lo que se deniegan todas las solicitudes. Si se concede un permiso explícito se anula el valor predeterminado. Una denegación explícita invalida cualquier permiso concedido. -
Acción: la acción es la acción de API específica para la que concedes o deniegas el permiso.
-
Recurso: el recurso al que afecta la acción. Para especificar un recurso en la instrucción debe utilizar el nombre de recurso de Amazon (ARN).
-
Condición: las condiciones son opcionales. Se pueden usar para controlar cuándo está en vigor la política.
Al crear y administrar políticas de IAM, le recomendamos que utilice el generador de políticas de IAM y el simulador de políticas de IAM.
Acciones para las transmisiones de vídeo de Kinesis
En una instrucción de política de IAM, puede especificar cualquier acción de API de cualquier servicio que sea compatible con IAM. Para Kinesis Video Streams, utilice el siguiente prefijo con el nombre de la acción de la API:. kinesisvideo: Por ejemplo, kinesisvideo:CreateStream, kinesisvideo:ListStreams y kinesisvideo:DescribeStream.
Para especificar varias acciones en una única instrucción, sepárelas con comas del siguiente modo:
"Action": ["kinesisvideo:action1", "kinesisvideo:action2"]
También puede utilizar caracteres comodín para especificar varias acciones. Por ejemplo, puede especificar todas las acciones cuyo nombre comience por la palabra "Get" del siguiente modo:
"Action": "kinesisvideo:Get*"
Para especificar todas las operaciones de Kinesis Video Streams use el carácter comodín de asterisco (*) del siguiente modo:
"Action": "kinesisvideo:*"
Para obtener la lista completa de las acciones de la API de Kinesis Video Streams, consulte Referencia de API de Kinesis Video Streams.
Nombres de recursos de Amazon (ARN) para Kinesis Video Streams
Cada instrucción de política de IAM se aplica a los recursos especificados utilizando sus ARN.
Utilice el siguiente formato de recurso de ARN para la Kinesis Video Streams:
arn:aws:kinesisvideo:region:account-id:stream/stream-name/code
Por ejemplo:
"Resource": arn:aws:kinesisvideo:*:111122223333:stream/my-stream/0123456789012
Puede obtener el ARN de una transmisión usando. DescribeStream
Otorgar a otras cuentas de IAM acceso a una transmisión de vídeo de Kinesis
Es posible que deba conceder permiso a otras cuentas de IAM para realizar operaciones en transmisiones de Kinesis Video Streams. En la siguiente información general se describen los pasos generales para conceder acceso a las transmisiones de vídeo a otras cuentas:
Obtenga el identificador de cuenta de 12 dígitos de la cuenta a la que desea conceder permisos para realizar operaciones en el recurso de transmisión creado en su cuenta.
Ejemplo: En los pasos siguientes, usaremos 1111 como ID de cuenta para la cuenta a la que desea conceder el permiso y, 9999, como ID para sus transmisiones de video de Kinesis
Cree una política gestionada por IAM en la cuenta propietaria de la transmisión (99999999) que permita el nivel de acceso que desea conceder.
Ejemplo de política:
Para ver otros ejemplos de políticas para los recursos de Kinesis Video Streams, consulte Ejemplos de políticas la siguiente sección.
Cree un rol en la cuenta propietaria de la transmisión (9999) y especifique la cuenta a la que quiere conceder permisos (1111). Esto añadirá una entidad de confianza al rol.
Ejemplo de política de confianza:
Adjunte a este rol la política que creó en el paso anterior.
Ahora ha creado un rol en la cuenta ⇒ 9999 que tiene permiso para realizar operaciones como
DescribeStreamGetDataEndpoint, yPutMediaen un ARN de recursos de transmisión en la política gestionada. Este nuevo rol también confía en que la otra cuenta, 1111, asuma este rol.importante
Toma nota del ARN del rol; lo necesitarás en el siguiente paso.
Crea una política gestionada en la otra cuenta, 1111, que permita la
AssumeRoleacción sobre el rol que creaste en la cuenta ⇒ 9999 en el paso anterior. Deberás mencionar el ARN del rol del paso anterior.Ejemplo de política:
Adjunte la política creada en el paso anterior a una entidad de IAM, como un rol o un usuario en la cuenta 1111. Este usuario ahora tiene permiso para asumir el rol
CustomRoleNameen la cuenta 33339999.Las credenciales de este usuario llaman a la AWS STS
AssumeRoleAPI para obtener las credenciales de la sesión, que luego se utilizan para llamar a las API de Kinesis Video Streams en la transmisión creada en la cuenta ⇒ 9999.aws sts assume-role --role-arn "arn:aws:iam::999999999999:role/CustomRoleName" --role-session-name "kvs-cross-account-assume-role" { "Credentials": { "AccessKeyId": "", "SecretAccessKey": "", "SessionToken": "", "Expiration": "" }, "AssumedRoleUser": { "AssumedRoleId": "", "Arn": "" } }Establezca la clave de acceso, la clave secreta y las credenciales de sesión en función del conjunto anterior en el entorno.
set AWS_ACCESS_KEY_ID= set AWS_SECRET_ACCESS_KEY= set AWS_SESSION_TOKEN=Ejecute las API de Kinesis Video Streams para describir y obtener el punto final de datos de la transmisión en la cuenta ␞ 9999.
aws kinesisvideo describe-stream --stream-arn "arn:aws:kinesisvideo:us-west-2:999999999999:stream/custom-stream-name/1613732218179" { "StreamInfo": { "StreamName": "custom-stream-name", "StreamARN": "arn:aws:kinesisvideo:us-west-2:999999999999:stream/custom-stream-name/1613732218179", "KmsKeyId": "arn:aws:kms:us-west-2:999999999999:alias/aws/kinesisvideo", "Version": "abcd", "Status": "ACTIVE", "CreationTime": "2018-02-19T10:56:58.179000+00:00", "DataRetentionInHours": 24 } } aws kinesisvideo get-data-endpoint --stream-arn "arn:aws:kinesisvideo:us-west-2:999999999999:stream/custom-stream-name/1613732218179" --api-name "PUT_MEDIA" { "DataEndpoint": "https://s-b12345.kinesisvideo.us-west-2.amazonaws.com" }
Para obtener instrucciones genéricas paso a paso sobre cómo conceder el acceso entre cuentas, consulte Delegar el acceso mediante el Cuentas de AWS uso de funciones de IAM.
Ejemplos de políticas para Kinesis Video Streams
Los siguientes ejemplos de políticas muestran cómo puede controlar el acceso de los usuarios a sus transmisiones de video de Kinesis
ejemplo 1: Permita a los usuarios obtener datos de cualquier transmisión de vídeo de Kinesis
Esta política permite a un usuario o grupo realizar las ListTagsForStream operacionesDescribeStream, GetDataEndpoint GetMediaListStreams, y en cualquier transmisión de vídeo de Kinesis. Esta política es adecuada para los usuarios que pueden recibir datos de cualquier transmisión de vídeo.
ejemplo 2: Permitir a un usuario crear una transmisión de vídeo de Kinesis y escribir datos en ella
Esta política permite a un usuario o grupo realizar las operaciones CreateStream y PutMedia. Esta política es adecuada para una cámara de seguridad que pueda crear una transmisión de vídeo y enviar datos a la misma.
{ "Statement": [ { "Effect": "Allow", "Action": [ "kinesisvideo:CreateStream", "kinesisvideo:PutMedia" ], "Resource": "*" } ] }
ejemplo 3: Permita a un usuario el acceso total a todos los recursos de Kinesis Video Streams
Esta política permite a un usuario o grupo realizar cualquier operación de Kinesis Video Streams en cualquier recurso. Esta política es adecuada para los administradores.
ejemplo 4: Permitir a un usuario escribir datos en una transmisión de vídeo de Kinesis específica
Esta política permite a un usuario o a un grupo escribir datos en una transmisión de vídeo específica. Esta política es adecuada para un dispositivo que pueda enviar datos a una única transmisión.