Amazon Transcribe exemplos de políticas baseadas em identidade - Amazon Transcribe

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Amazon Transcribe exemplos de políticas baseadas em identidade

Por padrão, usuários e funções não têm permissão para criar ou modificar recursos do Amazon Transcribe . Eles também não podem realizar tarefas usando o AWS Management Console, AWS Command Line Interface (AWS CLI) ou AWS API. Para conceder permissão aos usuários para realizar ações nos recursos de que precisam, um IAM administrador pode criar IAM políticas. O administrador pode então adicionar as IAM políticas às funções e os usuários podem assumir as funções.

Para saber como criar uma política IAM baseada em identidade usando esses exemplos de documentos de JSON política, consulte Criar IAM políticas (console) no Guia do IAMusuário.

Para obter detalhes sobre ações e tipos de recursos definidos pelo Amazon Transcribe, incluindo o formato de cada um ARNs dos tipos de recursos, consulte Ações, recursos e chaves de condição para o Amazon Transcribe na Referência de autorização de serviço.

Melhores práticas de política

As políticas baseadas em identidade determinam se alguém pode criar, acessar ou excluir Amazon Transcribe recursos em sua conta. Essas ações podem incorrer em custos para seus Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:

  • Comece com as políticas AWS gerenciadas e avance para as permissões de privilégios mínimos — Para começar a conceder permissões aos seus usuários e cargas de trabalho, use as políticas AWS gerenciadas que concedem permissões para muitos casos de uso comuns. Eles estão disponíveis no seu Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo AWS cliente que sejam específicas para seus casos de uso. Para obter mais informações, consulte políticas AWS gerenciadas ou políticas AWS gerenciadas para funções de trabalho no Guia IAM do usuário.

  • Aplique permissões com privilégios mínimos — Ao definir permissões com IAM políticas, conceda somente as permissões necessárias para realizar uma tarefa. Você faz isso definindo as ações que podem ser executadas em atributos específicos sob condições específicas, também conhecidas como permissões de privilégio mínimo. Para obter mais informações sobre IAM como usar para aplicar permissões, consulte Políticas e permissões IAM no Guia IAM do usuário.

  • Use condições nas IAM políticas para restringir ainda mais o acesso — Você pode adicionar uma condição às suas políticas para limitar o acesso a ações e recursos. Por exemplo, você pode escrever uma condição de política para especificar que todas as solicitações devem ser enviadas usandoSSL. Você também pode usar condições para conceder acesso às ações de serviço se elas forem usadas por meio de uma ação específica AWS service (Serviço da AWS), como AWS CloudFormation. Para obter mais informações, consulte Elementos IAM JSON da política: Condição no Guia IAM do usuário.

  • Use o IAM Access Analyzer para validar suas IAM políticas e garantir permissões seguras e funcionais — o IAM Access Analyzer valida políticas novas e existentes para que as políticas sigam a linguagem da IAM política (JSON) e as melhores práticas. IAM IAMO Access Analyzer fornece mais de 100 verificações de políticas e recomendações práticas para ajudá-lo a criar políticas seguras e funcionais. Para obter mais informações, consulte Validar políticas com o IAM Access Analyzer no Guia do IAMUsuário.

  • Exigir autenticação multifatorial (MFA) — Se você tiver um cenário que exija IAM usuários ou um usuário root Conta da AWS, ative MFA para obter segurança adicional. Para exigir MFA quando API as operações são chamadas, adicione MFA condições às suas políticas. Para obter mais informações, consulte APIAcesso seguro com MFA no Guia IAM do usuário.

Para obter mais informações sobre as melhores práticas emIAM, consulte as melhores práticas de segurança IAM no Guia IAM do usuário.

Usando o AWS Management Console

Para acessar o console do Amazon Transcribe, você deve ter um conjunto mínimo de permissões. Essas permissões devem permitir que você liste e visualize detalhes sobre os Amazon Transcribe recursos em seu Conta da AWS. Se você criar uma política baseada em identidade que seja mais restritiva do que as permissões mínimas necessárias, o console não funcionará como pretendido para entidades (usuários ou perfis) com essa política.

Você não precisa permitir permissões mínimas do console para usuários que estão fazendo chamadas somente para AWS CLI o. ou AWS API o. Em vez disso, permita o acesso somente às ações que correspondam à API operação que eles estão tentando realizar.

Para garantir que uma entidade (usuários e funções) possa usar o AWS Management Console, anexe uma das seguintes políticas AWS gerenciadas a ela.

  • AmazonTranscribeFullAccess: concede acesso total para criar, ler, atualizar, excluir e executar todos os Amazon Transcribe recursos. Também permite o acesso a buckets do Amazon S3 com transcribe no nome do bucket.

  • AmazonTranscribeReadOnlyAccess: concede acesso somente leitura aos recursos do Amazon Transcribe para que você possa obter e listar trabalhos de transcrição e vocabulários personalizados.

nota

Você pode revisar as políticas de permissão gerenciadas fazendo login no AWS Management Console do IAM e pesquisando pelo nome da política. Uma busca por “transcrever” retorna as duas políticas listadas acima (AmazonTranscribeReadOnlye AmazonTranscribeFullAccess).

Você também pode criar suas próprias IAM políticas personalizadas para permitir permissões para Amazon Transcribe API ações. Você pode anexar essas políticas personalizadas às entidades que exigem essas permissões.

Permissões necessárias para IAM funções

Se você criar uma IAM função para chamar Amazon Transcribe, ela deverá ter permissão para acessar o Amazon S3 bucket. Se aplicável, a KMS key também deve ser usada para criptografar o conteúdo do bucket. Consulte as seções a seguir para ver exemplos de políticas.

Políticas de confiança

A IAM entidade que você usa para fazer sua solicitação de transcrição deve ter uma política de confiança que Amazon Transcribe permita assumir essa função. Use a seguinte política de Amazon Transcribe confiança. Observe que, se estiver fazendo uma solicitação de análise de chamadas em tempo real com a análise pós-chamada habilitada, você deverá usar a “Política de confiança para análise de chamadas em tempo real”.

Política de confiança para Amazon Transcribe

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

Política de confiança para análise de chamadas em tempo real

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

Amazon S3 política de repositório de entrada

A política a seguir dá a uma IAM função permissão para acessar arquivos do bucket de entrada especificado.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-INPUT-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-INPUT-BUCKET/*" ] } }

Amazon S3 política de bucket de saída

A política a seguir dá a uma IAM função permissão para gravar arquivos no bucket de saída especificado.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-OUTPUT-BUCKET/*" ] } }

Permissões necessárias para chaves Amazon S3 de criptografia

Se você estiver usando KMS key a para criptografar um Amazon S3 bucket, inclua o seguinte na KMS key política. Isso dá Amazon Transcribe acesso ao conteúdo do bucket. Para obter mais informações sobre como permitir o acesso a KMS keys, consulte Permitir Contas da AWS que externos KMS key acessem um no Guia do AWS KMS desenvolvedor.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:us-west-2:111122223333:key/KMS-Example-KeyId" } ] }

Permitir que usuários visualizem suas próprias permissões

Este exemplo mostra como você pode criar uma política que permita IAM aos usuários visualizar as políticas embutidas e gerenciadas que estão anexadas à identidade do usuário. Essa política inclui permissões para concluir essa ação no console ou programaticamente usando o AWS CLI ou. AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

AWS KMS política de contexto de criptografia

A política a seguir concede à IAM função “ExampleRole” permissão para usar as operações AWS KMS Decrypt e Encrypt para esse caso específico. KMS key Essa política funciona somente para solicitações com pelo menos um par de contexto de criptografia; neste caso “color:indigoBlue”. Para obter mais informações sobre o contexto de AWS KMS criptografia, consulteContexto de criptografia do AWS KMS.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:color":"indigoBlue" } } } ] }

Política de prevenção contra representantes confusos

Aqui está um exemplo de uma política de assumir funções que mostra como você pode usar aws:SourceArn e aws:SourceAccount usar Amazon Transcribe para evitar um problema confuso de deputados. Para obter mais informações sobre a prevenção de vice confuso, consulte Prevenção do problema do substituto confuso entre serviços.

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

Visualizar trabalhos de transcrição com base em tags

É possível utilizar condições na política baseada em identidade para controlar o acesso aos recursos do Amazon Transcribe com base em tags. Este exemplo mostra como você pode criar uma política que permite a visualização de um trabalho de transcrição. No entanto, a permissão é concedida somente se a tag de trabalho de transcrição Owner tiver o valor do nome de usuário desse usuário. Essa política também concede as permissões necessárias para concluir essa ação usando o AWS Management Console.

Você pode anexar essa política às IAM entidades em sua conta. Se uma função chamada test-role tentar visualizar um trabalho de transcrição, o trabalho de transcrição deverá receber a tag Owner=test-role ou owner=test-role (os nomes das chaves de condição não diferenciam maiúsculas de minúsculas); caso contrário, o acesso será negado. Para obter mais informações, consulte Elementos IAM JSON da política: Condição no Guia IAM do usuário.

Para obter mais informações sobre como se inscrever Amazon Transcribe, consulteMarcando atributos .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListTranscriptionJobsInConsole", "Effect": "Allow", "Action": "transcribe:ListTranscriptionJobs", "Resource": "*" }, { "Sid": "ViewTranscriptionJobsIfOwner", "Effect": "Allow", "Action": "transcribe:GetTranscriptionJobs", "Resource": "arn:aws:transcribe:*:*:transcription-job/*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }