Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo delle politiche AWS KMS chiave utilizzando la AWS SDK for PHP versione 3
Quando ne crei una AWS KMS key, stabilisci chi può utilizzare e gestire quella chiave KMS. Queste autorizzazioni sono contenute in un documento chiamato policy delle chiavi. Puoi utilizzare la politica chiave per aggiungere, rimuovere o modificare le autorizzazioni in qualsiasi momento per una chiave KMS gestita dal cliente, ma non puoi modificare la politica chiave per una chiave KMS AWS gestita. Per ulteriori informazioni, consulta Autenticazione e controllo degli accessi per. AWS KMS
Gli esempi seguenti mostrano come:
-
Elenca i nomi delle politiche chiave che utilizzano ListKeyPolicies.
-
Ottieni una politica chiave utilizzando GetKeyPolicy.
-
Imposta una politica chiave utilizzando PutKeyPolicy.
Tutto il codice di esempio per AWS SDK for PHP è disponibile qui GitHub
Credenziali
Prima di eseguire il codice di esempio, configurate AWS le vostre credenziali, come descritto inCredenziali. Quindi importate il fileAWS SDK for PHP, come descritto inUtilizzo di base.
Per ulteriori informazioni sull'utilizzo di AWS Key Management Service (AWS KMS), consulta la Guida per gli AWS KMS sviluppatori.
Elenca tutte le politiche chiave
Per ottenere i nomi delle politiche chiave per una chiave KMS, usa l'ListKeyPolicies
operazione.
Importazioni
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Codice di esempio
$KmsClient = new Aws\Kms\KmsClient([ 'profile' => 'default', 'version' => '2014-11-01', 'region' => 'us-east-2' ]); $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; $limit = 10; try { $result = $KmsClient->listKeyPolicies([ 'KeyId' => $keyId, 'Limit' => $limit, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Recupera una politica chiave
Per ottenere la politica chiave per una chiave KMS, usa l'GetKeyPolicy
operazione.
GetKeyPolicy
richiede un nome per la policy. A meno che tu non abbia creato una politica chiave quando hai creato la chiave KMS, l'unico nome di policy valido è quello predefinito. Scopri di più sulla politica delle chiavi predefinite nella Guida per gli AWS Key Management Service sviluppatori.
Importazioni
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Codice di esempio
$KmsClient = new Aws\Kms\KmsClient([ 'profile' => 'default', 'version' => '2014-11-01', 'region' => 'us-east-2' ]); $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; $policyName = "default"; try { $result = $KmsClient->getKeyPolicy([ 'KeyId' => $keyId, 'PolicyName' => $policyName ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Imposta una politica chiave
Per stabilire o modificare una politica chiave per una chiave KMS, usa l'PutKeyPolicy
operazione.
PutKeyPolicy
richiede un nome per la policy. A meno che tu non abbia creato una politica chiave quando hai creato la chiave KMS, l'unico nome di politica valido è quello predefinito. Scopri di più sulla politica delle chiavi predefinite nella Guida per gli AWS Key Management Service sviluppatori.
Importazioni
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Codice di esempio
$KmsClient = new Aws\Kms\KmsClient([ 'profile' => 'default', 'version' => '2014-11-01', 'region' => 'us-east-2' ]); $keyId = 'arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab'; $policyName = "default"; try { $result = $KmsClient->putKeyPolicy([ 'KeyId' => $keyId, 'PolicyName' => $policyName, 'Policy' => '{ "Version": "2012-10-17", "Id": "custom-policy-2016-12-07", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/root" }, "Action": [ "kms:*" ], "Resource": "*" }, { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/ExampleUser" }, "Action": [ "kms:Encrypt*", "kms:GenerateDataKey*", "kms:Decrypt*", "kms:DescribeKey*", "kms:ReEncrypt*" ], "Resource": "*" } ] } ' ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }