Quero resolver o erro de política de chaves do AWS Key Management Service (AWS KMS).
Breve descrição
Se você não modificou sua política de chaves do AWS KMS corretamente, a operação da API PutKeyPolicy do AWS KMS falhará. Nesse caso, é possível receber uma das seguintes mensagens de erro:
"PutKeyPolicy request failed MalformedPolicyDocumentException - Policy contains a statement with one or more invalid principals."
"Policy contains a statement with one or more invalid principals"
Para resolver esse problema, conclua uma ou mais das seguintes ações de resolução.
Resolução
Usar uma sintaxe JSON válida
Confirme se você usa um tipo de recurso de documento de política JSON válido. Para solucionar erros de sintaxe JSON, cole o documento de política JSON em uma ferramenta de formatação JSON. Remova caracteres desnecessários e, em seguida, inclua caracteres ausentes. Certifique-se de remover todos os elementos de política JSON e valores de identificação de segurança (SID) duplicados.
Especificar os elementos da entidade principal
No elemento da entidade principal da política JSON, confirme se você criou uma identidade do AWS Identity and Access Management (AWS IAM) e um nome do recurso da Amazon (ARN) válido.
A política de chave está em vigor somente na região da AWS que contém a chave do AWS KMS. Se a política de chaves do AWS KMS tiver permissões para outra conta da AWS ou entidade principal, talvez ela não esteja em vigor. Certifique-se de que sua política de chaves contenha a chave do AWS KMS na região correta.
Você deve especificar o elemento da entidade principal como a identidade do IAM. Se você especificou um serviço da AWS como entidade principal, certifique-se de que o AWS KMS ofereça suporte a esse serviço. Para serviços da AWS que suportam a chave de condição e fazem as solicitações com uma sessão de acesso direto, use a chave de condição kms:ViaService do AWS KMS.
Os serviços da AWS que fazem chamadas diretas para o AWS KMS devem ter a entidade principal do serviço no Elemento de entidade principal. Verifique se o serviço da AWS que você usa chama diretamente o AWS KMS.
Inscrever-se na região
A conta com a qual você compartilha as chaves do AWS KMS deve inscrever-se na região na conta do destinatário. Certifique-se de ativar a região na conta do destinatário. Também é possível compartilhar outra chave do AWS KMS em uma região que está ativada na conta da AWS e na conta do destinatário.