Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwalten von IAM-Zugriffsschlüsseln mit AWS SDK for PHP Version 3
Benutzer benötigen ihre eigenen Zugriffsschlüssel, um programmgesteuerte Aufrufe an zu tätigenAWS. Um diese Anforderung zu erfüllen, können Sie Zugriffsschlüssel (Zugriffsschlüssel-IDs und geheime Zugriffsschlüssel) für IAM-Benutzer erstellen, ändern, anzeigen oder rotieren. Wenn Sie einen Zugriffsschlüssel erstellen, lautet der Status standardmäßig Aktiv. Dies bedeutet, dass der Benutzer den Zugriffsschlüssel für API-Aufrufe verwenden kann.
In den nachstehenden Beispielen wird Folgendes veranschaulicht:
-
Erstellen Sie einen geheimen Zugriffsschlüssel und die entsprechende Zugriffsschlüssel-ID mit CreateAccessKey.
-
Gibt Informationen zu den Zugriffsschlüssel-IDs zurück, die einem IAM-Benutzer mithilfe von zugeordnet sindListAccessKeys.
-
Abrufen von Informationen darüber, wann ein Zugriffsschlüssel zuletzt mit verwendet wurdeGetAccessKeyLastUsed.
-
Ändern Sie den Status eines Zugriffsschlüssels von Aktiv in Inaktiv oder umgekehrt mit UpdateAccessKey.
-
Löschen Sie ein Zugriffsschlüsselpaar, das einem IAM-Benutzer zugeordnet ist, mithilfe von DeleteAccessKey.
Der gesamte Beispielcode für die AWS SDK for PHP ist hier auf GitHub
Anmeldeinformationen
Bevor Sie den Beispielcode ausführen, konfigurieren Sie Ihre AWS Anmeldeinformationen, wie unter beschriebenAnmeldeinformationen. Importieren Sie dann die AWS SDK for PHP, wie unter beschriebenGrundlegende Verwendung.
Erstellen eines Zugriffsschlüssels
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Iam\IamClient;
Beispiel-Code
$client = new IamClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2010-05-08' ]); try { $result = $client->createAccessKey([ 'UserName' => 'IAM_USER_NAME', ]); $keyID = $result['AccessKey']['AccessKeyId']; $createDate = $result['AccessKey']['CreateDate']; $userName = $result['AccessKey']['UserName']; $status = $result['AccessKey']['Status']; // $secretKey = $result['AccessKey']['SecretAccessKey'] echo "<p>AccessKey " . $keyID . " created on " . $createDate . "</p>"; echo "<p>Username: " . $userName . "</p>"; echo "<p>Status: " . $status . "</p>"; } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Auflisten von Zugriffsschlüsseln
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Iam\IamClient;
Beispiel-Code
$client = new IamClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2010-05-08' ]); try { $result = $client->listAccessKeys(); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Abrufen von Informationen über die letzte Verwendung eines Zugriffsschlüssels
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Iam\IamClient;
Beispiel-Code
$client = new IamClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2010-05-08' ]); try { $result = $client->getAccessKeyLastUsed([ 'AccessKeyId' => 'ACCESS_KEY_ID', // REQUIRED ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Aktualisieren eines Zugriffsschlüssels
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Iam\IamClient;
Beispiel-Code
$client = new IamClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2010-05-08' ]); try { $result = $client->updateAccessKey([ 'AccessKeyId' => 'ACCESS_KEY_ID', // REQUIRED 'Status' => 'Inactive', // REQUIRED 'UserName' => 'IAM_USER_NAME', ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Löschen eines Zugriffsschlüssels
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Iam\IamClient;
Beispiel-Code
$client = new IamClient([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2010-05-08' ]); try { $result = $client->deleteAccessKey([ 'AccessKeyId' => 'ACCESS_KEY_ID', // REQUIRED 'UserName' => 'IAM_USER_NAME', ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }