Ao integrar uma aplicação personalizada com o SDK de instância do KMS ou o SDK de segredos, é obrigatório utilizar uma ClientKey de um ponto de acesso à aplicação para verificação de identidade e permissões. Este tópico descreve como criar um ponto de acesso à aplicação.
Observações
Como prática recomendada de segurança, crie um ponto de acesso à aplicação separado para cada aplicação integrada ao KMS. Isso garante o isolamento das permissões de acesso.
Por padrão, uma ClientKey tem validade de cinco anos. É possível especificar um período de validade diferente durante a criação da ClientKey. Recomendamos definir a validade para um ano. Para evitar interrupções no serviço, faça a rotação da ClientKey antes que ela expire. Para mais informações, consulte Fazer a rotação de uma ClientKey.
Pré-requisitos
Você adquiriu e ativou uma instância do KMS. Para mais informações, consulte Adquirir e ativar uma instância do KMS.
Você criou uma chave ou um segredo. Para mais informações, consulte Introdução ao Key Management e Introdução ao Secrets Manager.
Criar um ponto de acesso à aplicação no console
Estão disponíveis os modos de criação rápida e criação padrão. Caso precise integrar sua aplicação a um SDK com agilidade, utilize a criação rápida. Em comparação à criação padrão, a criação rápida apresenta as seguintes limitações:
Na criação rápida, o acesso a chaves e segredos ocorre exclusivamente por meio de um endpoint de instância do KMS. A criação padrão permite também acessar segredos via endpoint de serviço do KMS.
O período de validade da ClientKey é fixo em cinco anos, sem possibilidade de personalização. Recomendamos realizar a rotação da ClientKey após um ano de uso. Para mais detalhes, veja Fazer a rotação de uma ClientKey.
Na política de permissões do ponto de acesso à aplicação, o parâmetro Accessible Resources assume como padrão todas as chaves e segredos da instância do KMS especificada. Após criar o ponto de acesso, você pode modificar a política de permissões. Para mais informações, consulte Gerenciar um ponto de acesso à aplicação.
Método 1: Criação rápida
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
-
Na aba Application Access, clique em Create AAP. No painel Create AAP, configure os parâmetros.
Parâmetro
Descrição
Mode
Selecione Quick Creation.
Scope (KMS Instance)
Escolha a instância do KMS que sua aplicação precisa acessar.
Application Access Point Name
Insira um nome para o ponto de acesso à aplicação.
Authentication Method
Definido como ClientKey, não pode ser alterado.
Default Permission Policy
O valor é
key/*secret/*e não pode ser modificado. Isso significa que a aplicação terá acesso a todas as chaves e segredos na instância do KMS especificada. -
Clique em OK. O navegador baixará automaticamente a ClientKey. A ClientKey inclui os seguintes arquivos:
Credential (ClientKeyContent): O nome padrão do arquivo é
clientKey_****.json.Credential password (ClientKeyPassword): O nome padrão do arquivo é
clientKey_****_Password.txt.
Método 2: Criação padrão
Faça login no console do Key Management Service. Na barra de navegação superior, selecione uma região. No painel de navegação à esquerda, escolha .
-
Crie uma regra de acesso à rede.
NotaSe não for necessário restringir o acesso com base em endereços IP de origem, a criação de uma regra de acesso à rede é opcional. No entanto, para maior segurança, recomendamos configurar uma.
Clique na aba Network Access Rules e, em seguida, clique em Create Network Access Rule.
-
No painel Create Network Access Rule, configure os parâmetros e clique em OK.
Parâmetro
Descrição
Rule Name
Insira um nome para a regra de acesso à rede.
Network Type
Private: A aplicação utiliza um endpoint de instância do KMS para acessar chaves e segredos.
Public: A aplicação utiliza um endpoint de serviço do KMS (endpoint público) para acessar segredos.
VPC: A aplicação utiliza um endpoint de serviço do KMS (endpoint de VPC) para acessar segredos. Esta opção está disponível apenas nas regiões China (Hangzhou), China (Shanghai), China (Shenzhen) e China (Zhangjiakou).
NotaOperações criptográficas: Suportadas somente ao usar o SDK de instância do KMS para acessar o KMS por meio de um endpoint de instância do KMS. Isso exige uma regra de acesso à rede com o Network Type definido como Private.
Recuperação de valores de segredo: É possível usar o SDK de instância do KMS ou o SDK de segredos. Recomendamos o uso do SDK de segredos com uma regra de acesso à rede cujo Network Type esteja definido como Private para obter maior QPS e melhor segurança.
SDK de instância do KMS: O tipo de rede deve ser Private. O endereço IP de origem deve pertencer à VPC associada à instância do KMS.
SDK de segredos: O tipo de rede pode ser Private, Public ou VPC.
Allowed Source IP Addresses
Geralmente, insira o endereço IP do servidor da sua aplicação. O endereço IP deve corresponder ao tipo de rede selecionado.
Se o tipo de rede for Private, insira um endereço IP da VPC associada à instância do KMS.
Se o tipo de rede for Public, insira um endereço IP público.
Se o tipo de rede for VPC, insira um ID de VPC e um endereço IP de VPC.
Description
Insira uma descrição para a regra.
-
Crie uma política de permissões.
Clique na aba Policies e, em seguida, clique em Create Policy.
-
No painel Create Policy, configure os parâmetros e clique em OK.
Parâmetro
Descrição
Policy Name
Insira um nome para a política de permissões.
Scope
Se você selecionou Private para Network Type ao criar a regra de acesso à rede, selecione uma instância específica do KMS. Se selecionou Public ou VPC para Network Type, selecione Shared KMS Gateway.
RBAC Permissions
Se você selecionar uma instância específica do KMS para Scope:
CryptoServiceKeyUser: Permite o uso de chaves na instância do KMS. Essa permissão suporta as operações criptográficas da API da instância. Para mais informações, consulte Operações relacionadas a chaves.
CryptoServiceSecretUser: Permite o uso de segredos na instância do KMS. Essa permissão suporta as operações relacionadas a segredos da API da instância. Para mais informações, consulte Operações relacionadas a segredos.
Se você selecionar Scope como Shared KMS Gateway:
SecretUser: Permite o uso de todos os segredos da conta atual. Essa permissão suporta a operação GetSecretValue da OpenAPI.
Accessible Resources
Selecione as chaves e segredos que a aplicação precisa acessar.
ImportanteSe você selecionar vários segredos e o comprimento total dos nomes exceder o limite, ocorrerá um erro de "parâmetro inválido". Nesse caso, utilize um caractere curinga para especificar os segredos acessíveis.
Por exemplo, se este parâmetro for definido como
secret/rds-ibm*, a aplicação poderá acessar todos os segredos cujos nomes tenham o prefixords-ibm.Network Access Rules
Selecione a regra de acesso à rede criada anteriormente.
NotaCaso não seja necessário restringir o acesso com base em endereços IP de origem, a seleção de uma regra de acesso à rede é opcional. Contudo, para maior segurança, recomendamos configurar uma.
Description
Insira uma descrição para a política.
-
Crie o ponto de acesso à aplicação.
Clique na aba Application Access e, em seguida, clique em Create AAP.
-
No painel Create AAP, configure os parâmetros.
Parâmetro
Descrição
Mode
Selecione Standard Creation.
Application Access Point Name
Insira um nome para o ponto de acesso à aplicação.
Authentication Method
Métodos suportados: ClientKey e RAMRole. Este tópico usa ClientKey como exemplo.
Encryption Password
Senha para criptografar a ClientKey. A senha deve ter entre 8 e 64 caracteres e incluir caracteres de pelo menos dois dos seguintes tipos: dígitos, letras maiúsculas e minúsculas, e caracteres especiais
~!@#$%^&*?_-.Validity Period
Período de validade da ClientKey.
ImportanteRecomendamos definir a validade para um ano, reduzindo assim o risco de vazamento da ClientKey. Faça a rotação da ClientKey antes que ela expire para evitar interrupções no serviço. Para mais informações, consulte Fazer a rotação de uma ClientKey.
Policies
Selecione a política de permissões criada anteriormente.
Description
Insira uma descrição para o ponto de acesso à aplicação.
-
Clique em OK. O navegador baixará automaticamente a ClientKey. A ClientKey inclui os seguintes arquivos:
Credential (ClientKeyContent): O nome padrão do arquivo é
clientKey_****.json.Credential password (ClientKeyPassword): O nome padrão do arquivo é
clientKey_****_Password.txt.
Criar um ponto de acesso à aplicação usando a OpenAPI
Chame a operação CreateNetworkRule para definir os endereços IP privados ou blocos CIDR com permissão para acessar o KMS.
Chame a operação CreatePolicy para especificar as chaves e segredos acessíveis pela aplicação e vincular a regra de acesso à rede.
Chame a operação CreateApplicationAccessPoint para definir o método de autenticação e vincular a política de permissões.
Chame a operação CreateClientKey para definir a senha de criptografia e o período de validade da ClientKey, além de vincular o ponto de acesso à aplicação.
Criar um ponto de acesso à aplicação usando o Terraform
Para mais informações, consulte Criar um ponto de acesso à aplicação usando o Terraform.
Operações relacionadas
Se um ponto de acesso à aplicação estiver associado a uma instância do KMS, será necessário configurar o certificado CA da instância e o endpoint da instância do KMS durante a integração do SDK. Essa configuração não é necessária se o escopo for Shared KMS Gateway.
Obter o certificado CA da instância do KMS
As instâncias do KMS possuem certificados SSL/TLS integrados e utilizam o protocolo HTTPS para autenticação e comunicação criptografada. Utilize o certificado CA da instância para verificar a validade do certificado SSL/TLS da instância. Essa verificação confirma se o certificado foi emitido pela CA correta, se está dentro do período de validade e se corresponde ao endpoint da instância do KMS.
As instâncias do KMS suportam apenas TLS 1.2.
Na página Instances, clique na aba Software Key Management ou Hardware Key Management e selecione a instância do KMS desejada.
-
Clique no ID da instância ou clique em Details na coluna Actions. Na página Details, na seção Instance CA Certificate, clique em Download e salve o certificado em um local seguro.
NotaO arquivo do certificado CA baixado recebe, por padrão, o nome
PrivateKmsCA_kst-******.pem.
Obter o endpoint da instância do KMS
Na página Instances, clique na aba Software Key Management ou Hardware Key Management e selecione a instância do KMS desejada.
Clique no ID da instância para acessar a página de detalhes e visualize o Instance VPC Endpoint.
Para obter o endpoint da instância do KMS, remova
https://do valor do Instance VPC Endpoint.
Documentação relacionada
Recomendamos excluir pontos de acesso à aplicação que não estejam mais em uso. Para mais informações, consulte Gerenciar um ponto de acesso à aplicação.
Recomendamos fazer a rotação de uma ClientKey que esteja em uso há mais de um ano. Para mais informações, consulte Fazer a rotação de uma ClientKey.
O KMS envia um evento de alerta quando uma ClientKey está prestes a expirar. Monitore e trate esses eventos prontamente. Para mais informações, consulte Eventos de alerta.