IAM-Zugriffstokens abrufen
Für die Verwendung der Activity Tracking-API müssen Sie ein Zugriffstoken IBM Cloud® Identity and Access Management (IAM) verwenden. Jedes Token ist nur für eine Stunde gültig, und nachdem ein Token abläuft, müssen Sie eine neue Anforderung anfordern, wenn Sie die Verwendung der API fortsetzen möchten.
Abrufen eines Zugriffstokens für die aktuelle Sitzung mithilfe der IBM Cloud CLI
Sie können die IBM Cloud CLI verwenden, um Ihr IAM-Zugriffstoken zu generieren.
Führen Sie die folgenden Schritte aus, um ein Zugriffstoken für die aktuelle Sitzung zu generieren:
-
Melden Sie sich bei IBM Cloud über die IBM Cloud CLI an.
ibmcloud loginWenn die Anmeldung fehlschlägt, führen Sie den Befehl
ibmcloud login --ssoaus, um es erneut zu versuchen. Der Parameter--ssoist erforderlich, wenn Sie sich mit einer föderierten ID anmelden. Wenn diese Option verwendet wird, rufen Sie den Link auf, der in der Ausgabe der Befehlszeilenschnittstelle aufgelistet ist, um einen einmalig verwendbaren Kenncode zu generieren. -
Führen Sie den folgenden Befehl aus, um Ihr Cloud IAM-Zugriffstoken abzurufen.
ibmcloud iam oauth-tokens | grep IAM | cut -d \: -f 2 | sed 's/^ *//'Im folgenden gekürzten Beispiel sehen Sie ein abgerufenes IAM-Token.
IAM token: Bearer eyJraWQiOiIyM...
Abrufen eines Zugriffstokens mithilfe eines API-Schlüssels und der IBM Cloud CLI
Sie können Ihr Zugriffstoken auch über das Programm abrufen, indem Sie für Ihre Anwendung eine Service-ID-API-Taste erstellen und dann Ihren API-Schlüssel für ein IBM CloudIAM-Token austauschen.
-
Melden Sie sich bei IBM Cloud über die IBM Cloud CLI an.
ibmcloud login -a cloud.ibm.com [--apikey KEY | @KEY_FILE]Dabei ist
KEY | @KEY_FILEder API-Schlüssel, den Sie zum Abrufen des Zugriffstokens verwenden möchten. -
Führen Sie den folgenden Befehl aus, um ein IAM-Zugriffstoken abzurufen.
ibmcloud iam oauth-tokens | grep IAM | cut -d \: -f 2 | sed 's/^ *//'Im folgenden gekürzten Beispiel sehen Sie ein abgerufenes IAM-Token.
IAM token: Bearer eyJraWQiOiIyM...
Abrufen eines Zugriffstokens mithilfe eines API-Schlüssels in einer cURL-Anforderung
Führen Sie den folgenden cURL-Befehl aus, um die IAM Identity Services-API aufzurufen, um Ihr Zugriffstoken abzurufen:
curl -X POST \
'https://iam.cloud.ibm.com/identity/token' \
-H 'content-type: application/x-www-form-urlencoded' \
-H 'accept: application/json' \
-d 'grant_type=urn%3Aibm%3Aparams%3Aoauth%3Agrant-type%3Aapikey&apikey=<API_KEY>' > token.json
Ersetzen Sie <API_KEY> durch Ihren API-Schlüssel.
Im folgenden gekürzten Beispiel wird der Inhalt der Datei token.json dargestellt:
{
"access_token": "b3VyIGZhdGhlc...",
"expiration": 1512161390,
"expires_in": 3600,
"refresh_token": "dGhpcyBjb250a...",
"token_type": "Bearer"
}
Verwenden Sie den vollständigen Wert access_token mit dem Tokentyp Bearer als Präfix.