

Após uma análise cuidadosa, decidimos descontinuar o Amazon Kinesis Data Analytics para aplicativos SQL:

1. A partir de **1º de setembro de 2025,** não forneceremos nenhuma correção de bug para aplicativos do Amazon Kinesis Data Analytics para SQL porque teremos suporte limitado para ele, devido à próxima descontinuação.

2. A partir **de 15 de outubro de 2025,** você não poderá criar novos aplicativos Kinesis Data Analytics para SQL.

3. Excluiremos as aplicações a partir de **27 de janeiro de 2026**. Você não poderá mais iniciar nem operar as aplicações do Amazon Kinesis Data Analytics para SQL. A partir dessa data, não haverá mais suporte ao Amazon Kinesis Data Analytics para SQL. Para obter mais informações, consulte [Descontinuação de aplicações do Amazon Kinesis Data Analytics para SQL](discontinuation.md).

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á.

# Segurança no Amazon Kinesis Data Analytics
<a name="security"></a>

A segurança na nuvem AWS é a maior prioridade. Como AWS cliente, você se beneficiará de uma arquitetura de data center e rede criada para atender aos requisitos das organizações mais sensíveis à segurança.

A segurança é uma responsabilidade compartilhada entre você AWS e você. O [modelo de responsabilidade compartilhada](https://aws.amazon.com/compliance/shared-responsibility-model/) descreve isto como segurança *da* nuvem e segurança *na* nuvem.
+ **Segurança da nuvem** — AWS é responsável por proteger a infraestrutura que executa AWS os serviços na AWS nuvem. AWS também fornece serviços que você pode usar com segurança. A eficácia da nossa segurança é regularmente testada e verificada por auditores de terceiros como parte dos [Programas de conformidade da AWS](https://aws.amazon.com/compliance/programs/). Para saber mais sobre os programas de conformidade que se aplicam ao Kinesis Data Analytics, consulte [Serviços da AWS no escopo por programa de conformidade](https://aws.amazon.com/compliance/services-in-scope/).
+ **Segurança na nuvem** — Sua responsabilidade é determinada pelo AWS serviço que você usa. Também existe a responsabilidade por outros fatores, incluindo a confidencialidade de dados, os requisitos da organização e as leis e regulamentos aplicáveis. 

Esta documentação ajuda você a entender como aplicar o modelo de responsabilidade compartilhada ao usar o Kinesis Data Analytics. Os tópicos a seguir mostram como configurar o Kinesis Data Analytics para atender aos seus objetivos de segurança e conformidade. Você também aprenderá como usar outros serviços da Amazon que podem ajudar você a monitorar e proteger seus recursos do Kinesis Data Analytics. 

**Topics**
+ [Amazon Kinesis Data Analytics para aplicativos SQL](data-protection.md)
+ [Gerenciamento de identidade e acesso no Kinesis Data Analytics](iam-role.md)
+ [Autenticação e controle de acesso para](authentication-and-access-control.md)
+ [Monitorar o Amazon Kinesis Data Analytics](security-monitoring.md)
+ [Validação de conformidade para o Amazon Kinesis Data Analytics para aplicativos SQL](akda-java-compliance.md)
+ [Resiliência no Amazon Kinesis Data Analytics](disaster-recovery-resiliency.md)
+ [Segurança da infraestrutura no Kinesis Data Analytics para aplicativos SQL](infrastructure-security.md)
+ [Práticas recomendadas de segurança para o Kinesis Data Analytics](security-best-practices.md)

# Amazon Kinesis Data Analytics para aplicativos SQL
<a name="data-protection"></a>

Você pode proteger seus dados usando ferramentas fornecidas pela AWS. O Kinesis Data Analytics pode trabalhar com serviços compatíveis com criptografia de dados, incluindo Kinesis Data Streams, Firehose e Amazon S3. 

## Criptografia de dados no Kinesis Data Analytics
<a name="data-encryption"></a>

### Criptografia em repouso
<a name="encryption-at-rest"></a>

Observe o seguinte sobre a criptografia de dados em repouso com o Kinesis Data Analytics:
+ Você pode criptografar dados no stream de dados de entrada do Kinesis usando o. [StartStreamEncryption](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_StartStreamEncryption.html) Para obter mais informações, consulte [O que é criptografia do lado do servidor para o Kinesis Data Streams?](https://docs.aws.amazon.com/streams/latest/dev/what-is-sse.html).
+ Os dados de saída podem ser criptografados em repouso usando o Firehose para armazenar dados em um bucket criptografado do Amazon S3. É possível especificar a chave de criptografia que o bucket do Amazon S3 utiliza. Para obter mais informações, consulte [Protecting Data Using Server-Side Encryption with KMS–Managed Keys (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html).
+ O código do aplicativo é criptografado em repouso.
+ Os dados de referência do aplicativo são criptografados em repouso.

### Criptografia em trânsito
<a name="encryption-in-transit"></a>

O Kinesis Data Analytics criptografa todos os dados em trânsito. A criptografia em trânsito é habilitada para todos os aplicativos do Kinesis Data Analytics e não pode ser desabilitada. 

O Kinesis Data Analytics criptografa dados em trânsito nos seguintes cenários:
+ Dados em trânsito do Kinesis Data Streams para o Kinesis Data Analytics.
+ Dados em trânsito entre componentes internos no Kinesis Data Analytics.
+ Dados em trânsito entre o Kinesis Data Analytics e o Firehose.

### Gerenciamento de chaves
<a name="key-management"></a>

A criptografia de dados no Kinesis Data Analytics usa chaves gerenciadas pelo serviço. Chaves gerenciadas pelo cliente não são compatíveis.

# Gerenciamento de identidade e acesso no Kinesis Data Analytics
<a name="iam-role"></a>

O Amazon Kinesis Data Analytics precisa de permissões para ler registros em uma origem de streaming especificada na configuração de entrada do aplicativo. O Amazon Kinesis Data Analytics também precisa de permissões para gravar a saída do aplicativo nos fluxos especificados na configuração de saída do aplicativo. 

Você pode conceder essas permissões criando um perfil do IAM que o Amazon Kinesis Data Analytics possa assumir. As permissões que você concede a essa função determinam o que o Amazon Kinesis Data Analytics pode fazer quando o serviço assume a função. 



**nota**  
As informações desta seção serão úteis se você quiser criar um perfil do IAM por sua conta. Quando você cria um aplicativo no console do Amazon Kinesis Data Analytics, este pode criar um perfil do IAM para você nesse momento. O console usa a seguinte convenção de nomenclatura para os perfis do IAM criados:  

```
kinesis-analytics-ApplicationName
```
Depois que a função for criada, você poderá analisar a função e as políticas anexadas no console do IAM;. 

Cada perfil do IAM tem duas políticas anexadas. Na política de confiança, especifique quem pode assumir a função. Na política de permissões (pode haver uma ou mais), você especifica as permissões que deseja conceder a essa função. As seções a seguir descrevem essas políticas, que você pode usar ao criar um perfil do IAM. 



## Política de confiança
<a name="iam-role-trust-policy"></a>

Para conceder permissões ao Amazon Kinesis Data Analytics para assumir uma função para acessar origens de streaming ou fontes de referência, anexe a seguinte política de confiança a um perfil do IAM:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "kinesisanalytics.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

## Política de permissões
<a name="iam-role-permissions-policy"></a>

Se você estiver criando um perfil do IAM para permitir que o Amazon Kinesis Data Analytics leia uma origem de streaming do aplicativo, deverá conceder permissões para ações de leitura relevantes. Dependendo da origem (por exemplo, um fluxo do Kinesis, um fluxo de entrega do Firehose ou uma fonte de referência em um bucket do Amazon S3), você poderá anexar a política de permissões a seguir.



### Política de permissões para leitura de um stream do Kinesis
<a name="iam-role-permissions-policy-stream"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ReadInputKinesis",
            "Effect": "Allow",
            "Action": [
                "kinesis:DescribeStream",
                "kinesis:GetShardIterator",
                "kinesis:GetRecords",
                "kinesis:ListShards"
            ],
            "Resource": [
                "arn:aws:kinesis:us-east-1:123456789012:stream/inputStreamName"
            ]
        }
    ]
}
```

------

### Política de permissões para leitura de um fluxo de entrega do Firehose
<a name="iam-role-permissions-policy-delivery-stream"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ReadInputFirehose",
            "Effect": "Allow",
            "Action": [
                "firehose:DescribeDeliveryStream",
                "firehose:Get*"
            ],
            "Resource": [
                "arn:aws:firehose:us-east-1:123456789012:deliverystream/inputFirehoseName"
            ]
        }
    ]
}
```

------

**nota**  
A permissão `firehose:Get*` se refere a um acessador interno usado pelo Kinesis Data Analytics para acessar o stream. Não há nenhum acessador público para fluxos de entrega do Firehose.

Se você instruir o Amazon Kinesis Data Analytics a gravar a saída em destinos externos na configuração de saída do aplicativo, será necessário conceder a seguinte permissão ao perfil do IAM. 

### Política de permissões para gravação em um stream do Kinesis
<a name="iam-role-permissions-policy-ak-stream"></a>

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "WriteOutputKinesis",
            "Effect": "Allow",
            "Action": [
                "kinesis:DescribeStream",
                "kinesis:PutRecord",
                "kinesis:PutRecords"
            ],
            "Resource": [
                "arn:aws:kinesis:us-east-1:123456789012:stream/output-stream-name"
            ]
        }
    ]
}
```

------

### Política de permissões para gravação em um stream de entrega do Firehose
<a name="iam-role-permissions-policy-af-delivery-stream"></a>



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "WriteOutputFirehose",
            "Effect": "Allow",
            "Action": [
                "firehose:DescribeDeliveryStream",
                "firehose:PutRecord",
                "firehose:PutRecordBatch"
            ],
            "Resource": [
                "arn:aws:firehose:us-east-1:123456789012:deliverystream/output-firehose-name"
            ]
        }
    ]
}
```

------

### Política de permissões para leitura de uma fonte de dados de referência em um bucket do Amazon S3
<a name="iam-role-permissions-policy-reference"></a>



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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:Get*",
        "s3:List*"
      ],
      "Resource": "*"
    }
  ]
}
```

------

# Prevenção do problema “confused deputy” entre serviços
<a name="iam-cross-service-confused-deputy-prevention"></a>

Em AWS, a representação entre serviços pode ocorrer quando um serviço (o serviço de chamada) chama outro serviço (o serviço chamado). O serviço de chamada pode ser manipulado de modo a atuar nos recursos de outro cliente, mesmo sendo que ele não deveria ter as permissões adequadas, resultando em um problema de “confused deputy”.

Para evitar que delegados confusos, AWS fornece ferramentas que ajudam você a proteger seus dados em todos os serviços usando diretores de serviços que receberam acesso aos recursos em sua conta. Esta seção se concentra na prevenção de “confused deputy” entre serviços específicos do Kinesis Data Analytics. Você pode aprender mais sobre esse tópico na seção [The confused deputy problem](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) do *Guia do usuário do IAM*. 

No contexto do Kinesis Data Analytics for SQL, recomendamos usar [as](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) chaves de contexto de condição global [aws SourceArnSourceAccount: e aws](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount): na política de confiança de sua função para limitar o acesso à função somente às solicitações geradas pelos recursos esperados.

Use `aws:SourceArn` se quiser que apenas um recurso seja associado ao acesso entre serviços. Use `aws:SourceAccount` se quiser permitir que qualquer recurso nessa conta seja associado ao uso entre serviços.

O valor de `aws:SourceArn` deve ser o ARN do recurso usado pelo Kinesis Data Analytics, que é especificado com o seguinte formato: `arn:aws:kinesisanalytics:region:account:resource`.

A abordagem recomendada para o problema de “confused deputy” é usar a chave de contexto de condição global `aws:SourceArn` com o ARN completo do recurso.

Se você não souber o ARN completo do recurso ou estiver especificando vários recursos, use a chave `aws:SourceArn` com caracteres curingas (\$1) para as partes desconhecidas do ARN. Por exemplo: `arn:aws:kinesisanalytics::111122223333:*`.

Embora a maioria das ações na API do Kinesis Data Analytics for SQL [AddApplicationInput](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_AddApplicationInput.html), [CreateApplication](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_CreateApplication.html)como, [DeleteApplication](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_DeleteApplication.html)e, sejam feitas no contexto de aplicativos específicos, [DiscoverInputSchema](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_DiscoverInputSchema.html)a ação não é executada no contexto de nenhum aplicativo. Isso significa que a função usada nessa ação não deve especificar totalmente um recurso na chave de condição `SourceArn`. Veja a seguir um exemplo que usa um ARN curinga:

```
{
   ...
   "ArnLike":{
      "aws:SourceArn":"arn:aws:kinesisanalytics:us-east-1:123456789012:*"
   }
   ...
}
```

O perfil padrão gerado pelo Kinesis Data Analytics para SQL usa esse caractere curinga. Isso garante que a descoberta do esquema de entrada funcione perfeitamente na experiência do console. No entanto, recomendamos editar a Política de Confiança para usar um ARN completo depois de descobrir o esquema para implementar uma mitigação completa do “confused deputy”.

As políticas de funções que você fornece ao Kinesis Data Analytics, bem como as políticas de confiança das funções geradas para você, podem usar as chaves [de condição aws SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn): [e aws SourceAccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount):. 

Para se proteger contra o problema do confused deputy, execute as seguintes tarefas: 

**Para se proteger contra o problema do confused deputy**

1. Faça login no AWS Management Console e abra o console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/). 

1. Selecione **Perfis** e, em seguida, selecione o perfil que você deseja modificar.

1. Selecione **Edit trust policy** (Editar política de confiança).

1. Na página **Editar política de confiança**, substitua a política JSON padrão por uma política que usa uma ou ambas as chaves de contexto de condição global `aws:SourceArn` e `aws:SourceAccount`. Veja os exemplos de políticas a seguir:

1. Selecione **Update policy**.

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Principal":{
               "Service":"kinesisanalytics.amazonaws.com"
            },
            "Action":"sts:AssumeRole",
            "Condition":{
               "StringEquals":{
                  "aws:SourceAccount":"Account ID"
               },
               "ArnEquals":{
                  "aws:SourceArn":"arn:aws:kinesisanalytics:us-east-1:123456789012:application/my-app"
               }
            }
         }
      ]
   }
   ```

------

# Autenticação e controle de acesso para
<a name="authentication-and-access-control"></a>

O acesso ao requer credenciais. Essas credenciais devem ter permissões para acessar AWS recursos, como um aplicativo ou uma instância do Amazon Elastic Compute Cloud (Amazon EC2). As seções a seguir fornecem detalhes sobre como você pode usar o [AWS Identity and Access Management (IAM) e o ](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) para garantir o acesso aos recursos. 

## Controle de acesso
<a name="access-control"></a>

É possível ter credenciais válidas para autenticar suas solicitações. No entanto, a menos que tenha permissões, não é possível criar nem acessar os recursos do . Por exemplo, você deve ter permissões para criar um cofre do aplicativo do .

As seções a seguir descrevem como gerenciar permissões para o . Recomendamos que você leia a visão geral primeiro.
+ [Visão geral do gerenciamento de permissões de acesso aos seus recursos do](access-control-overview.md)
+ [Uso de políticas baseadas em identidade (políticas do IAM) para](using-identity-based-policies.md)
+ [Permissões de API: referência a ações, permissões e recursos](api-permissions-reference.md)

## Autenticação com identidades
<a name="security_iam_authentication"></a>

A autenticação é a forma como você faz login AWS usando suas credenciais de identidade. Você deve estar autenticado como usuário do IAM ou assumindo uma função do IAM. Usuário raiz da conta da AWS

Você pode fazer login como uma identidade federada usando credenciais de uma fonte de identidade como Centro de Identidade do AWS IAM (IAM Identity Center), autenticação de login único ou credenciais. Google/Facebook Para ter mais informações sobre como fazer login, consulte [Como fazer login em sua Conta da AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) no *Guia do usuário do Início de Sessão da AWS *.

Para acesso programático, AWS fornece um SDK e uma CLI para assinar solicitações criptograficamente. Para ter mais informações, consulte [AWS Signature Version 4 para solicitações de API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) no *Guia do usuário do IAM*.

### Conta da AWS usuário root
<a name="security_iam_authentication-rootuser"></a>

 Ao criar um Conta da AWS, você começa com uma identidade de login chamada *usuário Conta da AWS raiz* que tem acesso completo a todos Serviços da AWS os recursos. É altamente recomendável não usar o usuário-raiz em tarefas diárias. Consulte as tarefas que exigem credenciais de usuário-raiz em [Tarefas que exigem credenciais de usuário-raiz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) no *Guia do usuário do IAM*. 

### Identidade federada
<a name="security_iam_authentication-federated"></a>

Como prática recomendada, exija que os usuários humanos usem a federação com um provedor de identidade para acessar Serviços da AWS usando credenciais temporárias.

Uma *identidade federada* é um usuário do seu diretório corporativo, provedor de identidade da web ou Directory Service que acessa Serviços da AWS usando credenciais de uma fonte de identidade. As identidades federadas assumem funções que oferecem credenciais temporárias.

Para o gerenciamento de acesso centralizado, recomendamos Centro de Identidade do AWS IAM. Para saber mais, consulte [O que é o IAM Identity Center?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) no *Guia do usuário do Centro de Identidade do AWS IAM *.

### Usuários e grupos do IAM
<a name="security_iam_authentication-iamuser"></a>

Um *[usuário do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* é uma identidade com permissões específicas para uma única pessoa ou aplicação. É recomendável usar credenciais temporárias, em vez de usuários do IAM com credenciais de longo prazo. Para obter mais informações, consulte [Exigir que usuários humanos usem a federação com um provedor de identidade para acessar AWS usando credenciais temporárias](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) no *Guia do usuário do IAM*.

Um [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) especifica um conjunto de usuários do IAM e facilita o gerenciamento de permissões para grandes conjuntos de usuários. Para ter mais informações, consulte [Casos de uso de usuários do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) no *Guia do usuário do IAM*.

### Perfis do IAM
<a name="security_iam_authentication-iamrole"></a>

Uma *[perfil do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* é uma identidade com permissões específicas que oferece credenciais temporárias. Você pode assumir uma função [mudando de um usuário para uma função do IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) ou chamando uma operação de AWS API AWS CLI ou. Para saber mais, consulte [Métodos para assumir um perfil](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) no *Manual do usuário do IAM*.

Os perfis do IAM são úteis para acesso de usuário federado, permissões de usuário do IAM temporárias, acesso entre contas, acesso entre serviços e aplicações em execução no Amazon EC2. Consulte mais informações em [Acesso a recursos entre contas no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) no *Guia do usuário do IAM*.

# Visão geral do gerenciamento de permissões de acesso aos seus recursos do
<a name="access-control-overview"></a>

**Atenção**  
Para novos projetos, recomendamos que você use o novo Managed Service for Apache Flink Studio em vez de aplicativos SQL. O Managed Service for Apache Flink Studio combina facilidade de uso com recursos analíticos avançados, permitindo que você crie aplicativos sofisticados de processamento de stream em minutos.

Para conceder acesso, adicione as permissões aos seus usuários, grupos ou perfis:
+ Usuários e grupos em Centro de Identidade do AWS IAM:

  Crie um conjunto de permissões. Siga as instruções em [Criação de um conjunto de permissões](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) no *Guia do usuário do Centro de Identidade do AWS IAM *.
+ Usuários gerenciados no IAM com provedor de identidades:

  Crie um perfil para a federação de identidades. Siga as instruções em [Criando um perfil para um provedor de identidades de terceiros (federação)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) no *Guia do Usuário do IAM*.
+ Usuários do IAM:
  + Crie um perfil que seu usuário possa assumir. Siga as instruções em [Criação de um perfil para um usuário do IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) no *Guia do usuário do IAM*.
  + (Não recomendado) Vincule uma política diretamente a um usuário ou adicione um usuário a um grupo de usuários. Siga as instruções em [Adição de permissões a um usuário (console)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) no *Guia do usuário do IAM*.

**nota**  
Um *administrador da conta* (ou usuário administrador) é um usuário com privilégios de administrador. Para obter mais informações, consulte [Práticas recomendadas de segurança no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) no *Guia do usuário do IAM*.

**Topics**
+ [Recursos e operações](#access-control-resources)
+ [Noções básicas sobre propriedade de recursos](#access-control-resource-ownership)
+ [Gerenciamento do acesso aos recursos](#manage-access-overview)
+ [Especificar elementos da política: ações, efeitos e entidades principais](#specify-policy-elements)
+ [Especificar condições em uma política](#specifying-conditions-overview)

## Recursos e operações
<a name="access-control-resources"></a>

No , o primeiro recurso é *um aplicativo*. Em uma política, você usa um Nome de recurso da Amazon (ARN) para identificar o recurso a que a política se aplica.

Esses recursos têm nomes de recursos exclusivos da Amazon (ARNs) associados a eles, conforme mostrado na tabela a seguir. 


****  

| Tipo de recurso | Formato do ARN | 
| --- | --- | 
| Aplicativo |  `arn:aws:kinesisanalytics:region:account-id:application/application-name`  | 

 fornece um conjunto de operações para trabalhar com recursos. Para ver uma lista das operações disponíveis, consulte [Ações](API_Operations.md).

## Noções básicas sobre propriedade de recursos
<a name="access-control-resource-ownership"></a>

Ele Conta da AWS possui os recursos que são criados na conta, independentemente de quem criou os recursos. Especificamente, o proprietário Conta da AWS do recurso é a [entidade principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) (ou seja, a conta raiz, um usuário ou uma função do IAM) que autentica a solicitação de criação do recurso. Os seguintes exemplos mostram como isso funciona:
+ Se você usar as credenciais da sua conta raiz Conta da AWS para criar um aplicativo, você Conta da AWS é o proprietário do recurso. (No , o recurso é um aplicativo.)
+ Se você criar um usuário no seu Conta da AWS e conceder permissões para criar um aplicativo para esse usuário, o usuário poderá criar um aplicativo. No entanto, seu Conta da AWS, ao qual o usuário pertence, é proprietário do recurso do aplicativo. É altamente recomendável que você conceda permissões aos perfis e não aos usuários.
+ Se você criar uma função do IAM Conta da AWS com permissões para criar um aplicativo, qualquer pessoa que possa assumir a função poderá criar um aplicativo. Seu Conta da AWS, ao qual o usuário pertence, é proprietário do recurso do aplicativo. 

## Gerenciamento do acesso aos recursos
<a name="manage-access-overview"></a>

Uma *política de permissões* descreve quem tem acesso a quê. A seção a seguir explica as opções disponíveis para a criação de políticas de permissões.

**nota**  
Esta seção discute o uso do IAM no contexto do . Não são fornecidas informações detalhadas sobre o serviço IAM. Para obter a documentação completa do IAM, consulte [O que é o IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) no *Manual do usuário do IAM*. Para obter informações sobre a sintaxe e as descrições da política do IAM, consulte a [Referência da política JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) no *Manual do usuário do IAM*.

As políticas anexadas a uma identidade do IAM são chamadas de políticas *baseadas em identidade* (políticas do IAM). As políticas anexadas a um recurso são conhecidas como políticas *baseadas em recurso*. O suporta apenas políticas baseadas em identidade (políticas do IAM). 

**Topics**
+ [Políticas baseadas em identidade (políticas do IAM)](#manage-access-iam-policies)
+ [Políticas baseadas em recurso](#manage-access-resource-policies)

### Políticas baseadas em identidade (políticas do IAM)
<a name="manage-access-iam-policies"></a>

É possível anexar políticas a identidades do IAM. Por exemplo, você pode fazer o seguinte:
+ **Anexar uma política de permissões a um usuário ou grupo na conta**: para conceder a um usuário permissões para criar um recurso, como um aplicativo, você pode anexar uma política de permissões a um usuário ou grupo ao qual o usuário pertença.
+ **Anexar uma política de permissões a uma função**: você pode anexar uma política de permissões baseada em identidade a um perfil do IAM para conceder permissões entre contas. Por exemplo, o administrador da conta A pode criar uma função para conceder permissões entre contas a outra Conta da AWS (por exemplo, conta B) ou a um serviço da Amazon da seguinte forma:

  1. Um administrador da Conta A cria um perfil do IAM e anexa uma política de permissões ao perfil que concede permissões em recursos da Conta A.

  1. Um administrador da conta A anexa uma política de confiança ao perfil identificando a conta B como a entidade principal, que pode assumir a função. 

  1. O administrador da conta B pode delegar permissões para assumir o perfil a todos os usuários na conta B. Isso permite que os usuários na conta B criem ou acessem recursos na conta A. A entidade principal na política de confiança também pode ser um serviço principal, se você quiser conceder a um serviço da Amazon permissões para assumir o perfil.

  Para obter mais informações sobre o uso do IAM para delegar permissões, consulte [Gerenciamento de acesso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) no *Guia do usuário do IAM*.

Veja a seguir um exemplo de política que concede permissão para a ação `kinesisanalytics:CreateApplication `, o que é necessário para criar um aplicativo.

**nota**  
Este é um exemplo de política introdutória. Quando você anexar a política ao usuário, o usuário poderá criar um aplicativo usando o AWS SDK AWS CLI ou. Mas o usuário precisará de mais permissões para configurar a entrada e a saída. Além disso, o usuário precisará de mais permissões ao usar o console. As seções mais recentes fornecem mais informações.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt1473028104000",
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:CreateApplication"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

Para mais informações sobre como usar políticas baseadas em identidade com o , consulte [Uso de políticas baseadas em identidade (políticas do IAM) para](using-identity-based-policies.md). Para obter mais informações sobre usuários, grupos, funções e permissões, consulte [Identidades (usuários, grupos e funções)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) no *Guia do usuário do IAM*. 

### Políticas baseadas em recurso
<a name="manage-access-resource-policies"></a>

Outros serviços, como o Amazon S3, também aceitam políticas de permissões baseadas em recurso. Por exemplo, você pode anexar uma política a um bucket do S3 para gerenciar permissões de acesso a esse bucket. O não aceita políticas baseadas em recurso.

## Especificar elementos da política: ações, efeitos e entidades principais
<a name="specify-policy-elements"></a>

Para cada recurso do , o serviço define um conjunto de operações da API. Para conceder permissões a essas operações da API, o define um conjunto de ações que podem ser especificadas em uma política. Algumas operações da API podem exigir permissões para mais de uma ação a fim de realizar a operação da API. Para obter mais informações sobre os recursos e operações da API, consulte [Recursos e operações](#access-control-resources) e [Ações](API_Operations.md).

Estes são os elementos de política mais básicos:
+ **Recurso**: use um nome do recurso da Amazon (ARN) para identificar o recurso ao qual a política se aplica. Para obter mais informações, consulte [Recursos e operações](#access-control-resources).
+ **Ação**: você usa palavras-chave de ação para identificar operações de recursos que deseja permitir ou negar. Por exemplo, você pode usar `create` para permitir que os usuários criem um aplicativo.
+ **Efeito**: você especifica o efeito, permitir ou negar, quando o usuário solicita a ação específica. Se você não conceder (permitir) explicitamente acesso a um recurso, o acesso estará implicitamente negado. Você também pode negar explicitamente o acesso a um recurso, para ter certeza de que um usuário não consiga acessá-lo, mesmo que uma política diferente conceda acesso.
+ **Principal**: em políticas baseadas em identidade (políticas do IAM), o usuário ao qual a política é anexada é implicitamente a entidade principal. Para as políticas baseadas em recurso, você especifica quais usuários, contas, serviços ou outras entidades deseja que recebam permissões (aplica-se somente a políticas baseadas em recurso). O não aceita politicas baseadas em recurso.

Para saber mais sobre a sintaxe e as descrições de políticas do IAM, consulte a [Referência da política JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) no *Guia do usuário do IAM*.

Para obter uma lista em mostrando todas as operações da API e os recursos aos quais elas se aplicam, consulte [Permissões de API: referência a ações, permissões e recursos](api-permissions-reference.md).

## Especificar condições em uma política
<a name="specifying-conditions-overview"></a>

Ao conceder permissões, você pode usar a linguagem da política de acesso para especificar as condições quando uma política deve entrar em vigor. Por exemplo, é recomendável aplicar uma política somente após uma data específica. Para obter mais informações sobre como especificar condições em uma linguagem de política, consulte [Condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Condition) no *Guia do usuário do IAM*.

Para expressar condições, você usa chaves de condição predefinidas. Não existem chaves de condição específicas do . No entanto, existem chaves AWS de condição abrangentes que você pode usar conforme apropriado. Para obter uma lista completa AWS de chaves abrangentes, consulte [Chaves disponíveis para condições](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys) no *Guia do usuário do IAM*.

# Uso de políticas baseadas em identidade (políticas do IAM) para
<a name="using-identity-based-policies"></a>

Veja a seguir exemplos de políticas baseadas em identidade que demonstram como um administrador de conta pode anexar políticas de permissões a identidades do IAM (isto é, usuários, grupos e perfis) e conceder permissões para realizar operações em recursos.

**Importante**  
Recomendamos que você analise primeiramente os tópicos introdutórios que explicam os conceitos básicos e as opções disponíveis para gerenciar o acesso aos recursos do . Para obter mais informações, consulte [Visão geral do gerenciamento de permissões de acesso aos seus recursos do](access-control-overview.md). 

**Topics**
+ [Permissões necessárias para usar o console do](#console-permissions)
+ [Políticas gerenciadas pela Amazon (predefinidas) para](#access-policy-aws-managed-policies)
+ [Exemplos de política gerenciada pelo cliente](#access-policy-customer-managed-examples)

A seguir, um exemplo de uma política de permissões.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt1473028104000",
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:CreateApplication"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

A política tem uma instrução:
+ A primeira instrução concede permissões para uma ação do (`kinesisanalytics:CreateApplication`) em um recurso que está usando o nome de recurso da Amazon (ARN) para o aplicativo. O ARN, neste caso, especifica um caractere curinga (\$1) para indicar que a permissão é concedida para qualquer recurso.

Para obter uma tabela mostrando todas as operações da API e os recursos aos quais elas se aplicam, consulte [Permissões de API: referência a ações, permissões e recursos](api-permissions-reference.md). 

## Permissões necessárias para usar o console do
<a name="console-permissions"></a>

Para um usuário trabalhar com o console do , você deve conceder as permissões necessárias. Por exemplo, se você quiser que um usuário tenha permissões para criar aplicativo, conceda permissões que mostre a ele as origens de streaming na conta, para que o usuário possa configurar a entrada e a saída no console.

Recomendamos o seguinte:
+ Use as políticas gerenciadas pela Amazon para conceder permissões de usuário. Para saber quais são as políticas disponíveis, consulte [Políticas gerenciadas pela Amazon (predefinidas) para](#access-policy-aws-managed-policies).
+ Crie políticas personalizadas. Nesse caso, recomendamos que você examine o exemplo fornecido nesta seção. Para obter mais informações, consulte [Exemplos de política gerenciada pelo cliente](#access-policy-customer-managed-examples).





## Políticas gerenciadas pela Amazon (predefinidas) para
<a name="access-policy-aws-managed-policies"></a>

AWS aborda muitos casos de uso comuns fornecendo políticas autônomas do IAM que são criadas e administradas pela AWS. Essas políticas gerenciadas pela Amazon concedem as permissões necessárias para casos de uso comuns para que você não precise investigar quais permissões são necessárias. Para obter mais informações, consulte [Políticas gerenciadas pela Amazon](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) no *Guia do usuário do IAM*. 

As seguintes políticas gerenciadas pela Amazon, que você pode anexar aos usuários em sua conta, são específicas para:
+ **`AmazonKinesisAnalyticsReadOnly`**— Concede permissões para ações que permitem ao usuário listar aplicativos e revisar a input/output configuração. Ele também concede permissões para o usuário visualizar uma lista de fluxos do Kinesis e fluxos de entrega do Firehose. Enquanto o aplicativo está em execução, o usuário pode visualizar dados de origem e resultados de análises em tempo real no console.

   
+ **`AmazonKinesisAnalyticsFullAccess`**: concede permissões para todas as ações e todas as outras permissões para um usuário criar e gerenciar aplicativos. Entretanto, observe o seguinte:

   
  + Essas permissões não serão suficientes se o usuário quiser criar uma nova função do IAM no console (elas permitirão que o usuário selecione uma função existente). Se você quiser que o usuário possa criar um perfil do IAM no console, adicione a política gerenciada pela Amazon `IAMFullAccess`.

     
  + Um usuário deve ter permissão para a ação `iam:PassRole` para que possa especificar um perfil do IAM ao configurar o aplicativo. Esta política gerenciada pela Amazon concede ao usuário permissão para a ação `iam:PassRole` somente nos perfis do IAM que começam com o prefixo `service-role/kinesis-analytics`. 

    Se o usuário quiser configurar o aplicativo com um perfil que não tem esse prefixo, primeiro é necessário conceder explicitamente permissões de usuário para a ação `iam:PassRole` no perfil específico. 

Você também pode criar as próprias políticas do IAM personalizadas a fim de conceder permissões para ações e recursos. Você pode anexar essas políticas personalizadas a usuários ou grupos do que exijam essas permissões. 

## Exemplos de política gerenciada pelo cliente
<a name="access-policy-customer-managed-examples"></a>

Os exemplos desta seção apresentam um grupo de políticas de amostra que você pode anexar a um usuário. Se você for iniciante na criação de políticas, recomendamos primeiro criar um usuário em sua conta. Em seguida, anexe as políticas ao usuário sequencialmente, conforme descrito nas etapas desta seção. Em seguida, você pode usar o console para verificar os efeitos de cada política à medida que anexa a política ao usuário. 

Inicialmente, o usuário não tem permissões e não pode fazer nada no console. À medida que você anexar políticas ao usuário, poderá verificar se o usuário pode executar várias ações no console. 

Recomendamos o uso de duas janelas do navegador. Em uma janela, crie o usuário e conceda permissões. Na outra, faça login Console de gerenciamento da AWS usando as credenciais do usuário e verifique as permissões à medida que você as concede.

 Para obter exemplos que mostrem como criar um perfil do IAM que possa ser usado como perfil de execução no seu aplicativo, consulte [Criação de perfis do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html) no *Guia do usuário do IAM*.

**Topics**
+ [Etapa 1: Criar um usuário do IAM](#console-permissions-createuser)
+ [Etapa 2: Conceder ao usuário permissões para ações que não são específicas do](#console-permissions-grant-non-ka-permissions)
+ [Etapa 3: Permitir que o usuário visualize uma lista de aplicativos e os detalhes](#console-permissions-grant-list-applications)
+ [Etapa 4: Permitir que o usuário inicie um aplicativo específico](#console-permissions-start-app)
+ [Etapa 5: Permitir que o usuário crie um aplicativo do](#console-permissions-grant-create-applications)
+ [Etapa 6: Permitir que o aplicativo use o pré-processamento do Lambda](#console-permissions-grant-lambda)



### Etapa 1: Criar um usuário do IAM
<a name="console-permissions-createuser"></a>

Primeiro, é preciso criar um usuário do IAM, adicionar o usuário a um grupo do IAM com permissões administrativas e, em seguida, conceder permissões administrativas ao usuário criado. Em seguida, você pode acessar AWS usando um URL especial e as credenciais desse usuário. 

Para obter instruções, consulte [Criar o primeiro usuário do IAM e o grupo de administradores](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started_create-admin-group.html) no *Guia do usuário do IAM*. 

### Etapa 2: Conceder ao usuário permissões para ações que não são específicas do
<a name="console-permissions-grant-non-ka-permissions"></a>

Vamos primeiro conceder a um usuário permissão para todas as ações que não são específicas do de que o usuário precisará ao trabalhar com aplicativos do . Isso inclui permissões para trabalhar com streams (ações do Amazon Kinesis Data Streams, ações do Amazon Data Firehose) e permissões para ações. CloudWatch Anexe a política a seguir ao usuário.

Você precisa atualizar a política fornecendo um nome de função do IAM para o qual deseja conceder a permissão `iam:PassRole` ou especificar um caractere curinga (\$1) indicando todas as funções do IAM. Essa não é uma prática segura; no entanto, você pode não ter uma função do IAM específica criada durante esse teste.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kinesis:CreateStream",
                "kinesis:DeleteStream",
                "kinesis:DescribeStream",
                "kinesis:ListStreams",
                "kinesis:PutRecord",
                "kinesis:PutRecords"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "firehose:DescribeDeliveryStream",
                "firehose:ListDeliveryStreams"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "logs:GetLogEvents",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:ListPolicyVersions",
                "iam:ListRoles"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/service-role/role-name"
        }
    ]
}
```

------

### Etapa 3: Permitir que o usuário visualize uma lista de aplicativos e os detalhes
<a name="console-permissions-grant-list-applications"></a>

A política a seguir concede a um usuário as seguintes permissões:
+ Permissão para a ação `kinesisanalytics:ListApplications` para que o usuário possa visualizar uma lista de aplicativos. Isso é uma chamada de API de nível de serviço e, portanto, especifique "\$1" como valor de `Resource`.
+ Permissão para a ação `kinesisanalytics:DescribeApplication` para que você possa obter informações sobre qualquer um dos aplicativos.

Adicione essa política ao usuário. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:ListApplications"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:DescribeApplication"
            ],
            "Resource": "arn:aws:kinesisanalytics:us-east-1:123456789012:application/*"
        }
    ]
}
```

------

 Verifique essas permissões fazendo login no console usando as credenciais de usuário.

### Etapa 4: Permitir que o usuário inicie um aplicativo específico
<a name="console-permissions-start-app"></a>

Se quiser que o usuário inicie um dos aplicativos existentes do , anexe a política a seguir ao usuário. A política fornece a permissão para a ação `kinesisanalytics:StartApplication`. Você deve atualizar a política fornecendo o ID da conta, a AWS região e o nome do aplicativo. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:StartApplication"
            ],
            "Resource": "arn:aws:kinesisanalytics:us-east-1:123456789012:application/application-name"
        }
    ]
}
```

------

### Etapa 5: Permitir que o usuário crie um aplicativo do
<a name="console-permissions-grant-create-applications"></a>

Se quiser que o usuário crie um aplicativo, anexe a política a seguir ao usuário. Você deve atualizar a política e fornecer uma AWS região, o ID da sua conta e um nome de aplicativo específico que você deseja que o usuário crie ou um “\$1” para que o usuário possa especificar qualquer nome de aplicativo (e, assim, criar vários aplicativos).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt1473028104000",
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:CreateApplication"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesisanalytics:StartApplication",
                "kinesisanalytics:UpdateApplication",
                "kinesisanalytics:AddApplicationInput",
                "kinesisanalytics:AddApplicationOutput"
            ],
            "Resource": "arn:aws:kinesisanalytics:us-east-1:123456789012:application/application-name"
        }
    ]
}
```

------

### Etapa 6: Permitir que o aplicativo use o pré-processamento do Lambda
<a name="console-permissions-grant-lambda"></a>

Se quiser que o aplicativo use o pré-processamento do Lambda, anexe a política a seguir ao perfil. 

```
     {
       "Sid": "UseLambdaFunction",
       "Effect": "Allow",
       "Action": [
           "lambda:InvokeFunction",
           "lambda:GetFunctionConfiguration"
       ],
       "Resource": "<FunctionARN>"
   }
```

# Permissões de API: referência a ações, permissões e recursos
<a name="api-permissions-reference"></a>

Ao configurar [Controle de acesso](authentication-and-access-control.md#access-control) e escrever uma política de permissões que você pode anexar a uma identidade do IAM (políticas baseadas em identidade), é possível usar a de tabelas a seguir como referência. A tabela lista cada operação de API, as ações correspondentes para as quais você pode conceder permissões para realizar a ação e o AWS recurso para o qual você pode conceder as permissões. Você especifica as ações no campo `Action` da política e o valor do recurso no campo `Resource` da política. 

Você pode usar chaves AWS de condição abrangentes em suas políticas para expressar condições. Para obter uma lista completa AWS de chaves gerais, consulte [Chaves disponíveis](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys) no *Guia do usuário do IAM*. 

**nota**  
Para especificar uma ação, use o prefixo `kinesisanalytics` seguido do nome da operação da API (por exemplo, `kinesisanalytics:AddApplicationInput`).

Use as barras de rolagem para ver o restante da tabela.




**API e permissões necessárias para ações**  

|  Operações de API | Permissões obrigatórias (ações de API) | Recursos | 
| --- | --- | --- | 
|  [AddApplicationInput](API_AddApplicationInput.md)   |  kinesisanalytics:AddApplicationInput  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [AddApplicationOutput](API_AddApplicationOutput.md)   |  kinesisanalytics:AddApplicationOutput  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [AddApplicationReferenceDataSource](API_AddApplicationReferenceDataSource.md)   |  kinesisanalytics:AddApplicationReferenceDataSource  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [CreateApplication](API_CreateApplication.md)   |  kinesisanalytics:CreateApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [DeleteApplication](API_DeleteApplication.md)   |  kinesisanalytics:DeleteApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [DeleteApplicationOutput](API_DeleteApplicationOutput.md)   |  kinesisanalytics:DeleteApplicationOutput  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [DeleteApplicationReferenceDataSource](API_DeleteApplicationReferenceDataSource.md)   |  kinesisanalytics:DeleteApplicationReferenceDataSource  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [DescribeApplication](API_DescribeApplication.md)   |  kinesisanalytics:DescribeApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [DiscoverInputSchema](API_DiscoverInputSchema.md)   |  kinesisanalytics:DiscoverInputSchema  |  \$1  | 
|  [ListApplications](API_ListApplications.md)   |  kinesisanalytics:ListApplications  |  \$1  | 
|  [StartApplication](API_StartApplication.md)   |  kinesisanalytics:StartApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [StopApplication](API_StopApplication.md)   |  kinesisanalytics:StopApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  [UpdateApplication](API_UpdateApplication.md)   |  kinesisanalytics:UpdateApplication  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 
|  Acessar ou criar amostra de dados no console   |  kinesisanalytics:GetApplicationState  |  `arn:aws:kinesisanalytics: region:accountId:application/application-name`  | 





## GetApplicationState
<a name="api-permissions-reference-gas"></a>

O console usa um método interno chamado `GetApplicationState` para criar uma amostra ou acessar dados do aplicativo. Seu aplicativo do serviço precisa ter permissões para que a API `kinesisanalytics:GetApplicationState` interna crie uma amostra ou acesse dados do aplicativo por meio do Console de gerenciamento da AWS.

# Monitorar o Amazon Kinesis Data Analytics
<a name="security-monitoring"></a>

O Kinesis Data Analytics fornece funcionalidade de monitoramento para as aplicações. Para obter mais informações, consulte [Monitoramento do para aplicativos SQL](monitoring-overview.md).

# Validação de conformidade para o Amazon Kinesis Data Analytics para aplicativos SQL
<a name="akda-java-compliance"></a>

Auditores terceirizados avaliam a segurança e a conformidade do Amazon Kinesis Data Analytics como parte de AWS vários programas de conformidade. Isso inclui SOC, PCI, HIPAA e outros.

Para obter uma lista de AWS serviços no escopo de programas de conformidade específicos, consulte [Amazon Services in Scope by Compliance Program](https://aws.amazon.com/compliance/services-in-scope/). Para obter informações gerais, consulte [Programas de conformidade da AWS](https://aws.amazon.com/compliance/programs/).

Você pode baixar relatórios de auditoria de terceiros usando AWS Artifact. Para obter mais informações, consulte [Baixar relatórios em AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html). 

Sua responsabilidade de conformidade ao usar o Kinesis Data Analytics é determinada pela confidencialidade dos seus dados, pelos objetivos de conformidade da sua empresa e pelos regulamentos e leis aplicáveis. Se seu uso do Kinesis Data Analytics estiver sujeito à conformidade com normas como HIPAA ou PCI, a AWS fornecerá recursos para ajudar:
+ [Guias de início rápido sobre segurança e conformidade](https://aws.amazon.com/quickstart/?awsf.quickstart-homepage-filter=categories%23security-identity-compliance) — Esses guias de implantação discutem considerações arquitetônicas e fornecem etapas para a implantação de ambientes básicos focados em segurança e conformidade em. AWS
+  Documento técnico [sobre arquitetura para segurança e conformidade com a HIPAA — Este whitepaper](https://d0.awsstatic.com/whitepapers/compliance/AWS_HIPAA_Compliance_Whitepaper.pdf) descreve como as empresas podem usar para criar aplicativos compatíveis com a HIPAA. AWS 
+ [AWS Recursos de conformidade](https://aws.amazon.com/compliance/resources/) — Essa coleção de pastas de trabalho e guias pode ser aplicada ao seu setor e local.
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)— Esse AWS serviço avalia se suas configurações de recursos estão em conformidade com as práticas internas, as diretrizes e os regulamentos do setor.
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)— Esse AWS serviço fornece uma visão abrangente do seu estado de segurança interno, AWS que ajuda você a verificar sua conformidade com os padrões e as melhores práticas do setor de segurança.

# Resiliência no Amazon Kinesis Data Analytics
<a name="disaster-recovery-resiliency"></a>

A infraestrutura AWS global é construída em torno de AWS regiões e zonas de disponibilidade. AWS As regiões fornecem várias zonas de disponibilidade fisicamente separadas e isoladas, conectadas a redes de baixa latência, alta taxa de transferência e alta redundância. Com as zonas de disponibilidade, é possível projetar e operar aplicações e bancos de dados que executam o failover automaticamente entre as zonas de disponibilidade sem interrupção. As zonas de disponibilidade são mais altamente disponíveis, tolerantes a falhas e escaláveis que uma ou várias infraestruturas de data center tradicionais. 

Para obter mais informações sobre AWS regiões e zonas de disponibilidade, consulte [Infraestrutura AWS global](https://aws.amazon.com/about-aws/global-infrastructure/).

Além da infraestrutura AWS global, o Kinesis Data Analytics oferece vários recursos para ajudar a suportar suas necessidades de resiliência e backup de dados.

## Recuperação de desastres
<a name="disaster-recovery"></a>

O Kinesis Data Analytics é executado em um modo sem servidor e cuida das degradações do host, da disponibilidade da zona de disponibilidade e outros problemas relacionados à infraestrutura, fazendo uma migração automática. Quando isso acontece, o Kinesis Data Analytics garante que o aplicativo seja processado sem nenhuma perda de dados. Para obter mais informações, consulte [Modelo de entrega para manter a saída do aplicativo em um destino externo](failover-checkpoint.md).

# Segurança da infraestrutura no Kinesis Data Analytics para aplicativos SQL
<a name="infrastructure-security"></a>

Como um serviço gerenciado, o Amazon Kinesis Data Analytics é protegido AWS pelos procedimentos globais de segurança de rede descritos no whitepaper [Amazon Web Services: Visão geral dos processos de segurança](https://d0.awsstatic.com/whitepapers/Security/AWS_Security_Whitepaper.pdf).

Você usa chamadas de API AWS publicadas para acessar o Kinesis Data Analytics pela rede. Os clientes devem oferecer suporte a Transport Layer Security (TLS) 1.2 ou posterior. Os clientes também devem ter compatibilidade com conjuntos de criptografia com perfect forward secrecy (PFS) como Ephemeral Diffie-Hellman (DHE) ou Ephemeral Elliptic Curve Diffie-Hellman (ECDHE). A maioria dos sistemas modernos como Java 7 e versões posteriores oferece compatibilidade com esses modos.

Além disso, as solicitações devem ser assinadas usando um ID da chave de acesso e uma chave de acesso secreta associada a uma entidade principal do IAM. Ou é possível usar o [AWS Security Token Service](https://docs.aws.amazon.com/STS/latest/APIReference/Welcome.html) (AWS STS) para gerar credenciais de segurança temporárias para assinar solicitações.

# Práticas recomendadas de segurança para o Kinesis Data Analytics
<a name="security-best-practices"></a>

O Amazon Kinesis Data Analytics fornece uma série de recursos de segurança a serem considerados no desenvolvimento e na implementação das suas próprias políticas de segurança. As práticas recomendadas a seguir são diretrizes gerais e não representam uma solução completa de segurança. Como essas práticas recomendadas podem não ser adequadas ou suficientes para o seu ambiente, trate-as como considerações úteis em vez de prescrições. 

## Use perfis do IAM para acessar outros serviços da Amazon
<a name="security-best-practices-roles"></a>

A aplicação do Kinesis Data Analytics deve ter credenciais válidas para acessar recursos em outros serviços, como fluxos de dados do Kinesis, fluxos de entrega do Firehose ou buckets do Amazon S3. Você não deve armazenar AWS credenciais diretamente no aplicativo ou em um bucket do Amazon S3. Essas são credenciais de longo prazo que não são automaticamente alternadas e podem ter um impacto comercial significativo se forem comprometidas. 

Em vez disso, você deve usar um perfil do IAM para gerenciar credenciais temporárias para que o aplicativo acesse outros recursos. Quando você usa um perfil, não precisa usar credenciais de longo prazo para acessar outros recursos.

Para obter mais informações, consulte os seguintes tópicos no *Manual do usuário do IAM*:
+ [Perfis do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)
+ [Cenários comuns para perfis: usuários, aplicações e serviços](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios.html)

## Implemente a criptografia do lado do servidor em recursos dependentes
<a name="security-best-practices-sse"></a>

Dados em repouso e dados em trânsito são criptografados no Kinesis Data Analytics, e essa criptografia não pode ser desabilitada. É necessário implementar a criptografia do lado do servidor nos recursos dependentes, como fluxos de dados do Kinesis, fluxos de entrega do Firehose e buckets do Amazon S3. Para obter mais informações sobre como implementar a criptografia do lado do servidor em recursos dependentes, consulte [Proteção de dados](data-protection.md).

## Use CloudTrail para monitorar chamadas de API
<a name="security-best-practices-cloudtrail"></a>

O Kinesis Data Analytics é integrado AWS CloudTrail com, um serviço que fornece um registro das ações realizadas por um usuário, uma função ou um serviço da Amazon no Kinesis Data Analytics.

Usando as informações coletadas por CloudTrail, você pode determinar a solicitação que foi feita à Kinesis Data Analytics, o endereço IP a partir do qual a solicitação foi feita, quem fez a solicitação, quando ela foi feita e detalhes adicionais.

Para obter mais informações, consulte [Registro de chamadas de API do AWS CloudTrail com](logging-using-cloudtrail.md).