

Authentifizierung - IBM Cloud
Um mit der API zu arbeiten, authentifizieren Sie Ihre Anwendung oder Ihren Dienst, indem Sie Ihr IAM-Zugriffstoken und die GUID (ID) der Dienstinstanz in die API-Anforderungen aufnehmen.
Sie können die IBM Cloud CLI verwenden, um schnell Ihr persönliches Cloud IAM-Zugangs-Token zu erstellen.
- Melden Sie sich bei IBM Cloud® mit der 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. Rufen Sie bei Verwendung dieser Option den in der CLI-Ausgabe aufgeführten Link auf, um einen einmaligen Kenncode zu generieren. - Wählen Sie das Konto, die Region und die Ressourcengruppe, die Ihre bereitgestellte Instanz von IBM® MQ as a Service enthalten.
- Führen Sie den folgenden Befehl aus, um Ihr Cloud IAM-Zugriffstoken abzurufen.
ibmcloud iam oauth-tokensIm folgenden gekürzten Beispiel sehen Sie ein abgerufenes IAM-Token.
IAM token: Bearer eyJraWQiOiIyM...So rufen Sie die GUID Ihrer Service-Instanz ab:
Führen Sie den folgenden Befehl aus, ersetzen Sie dabei den Namen Ihrer Service-Instanz durch
{service-instance-name}und extrahieren Sie den Wert des Feldesguid.ibmcloud resource service-instance {service-instance-name} --output JSONSie können Ihre API-Anfrage erstellen, indem Sie einen Dienstendpunkt mit Ihren Authentifizierungsdaten verknüpfen. Wenn Sie z. B. eine Instanz IBM MQ as a Service für die Region
eu-deerstellt haben, verwenden Sie den folgenden Endpunkt und die API-Header, um Warteschlangenmanager in Ihrer Dienstinstanz abzurufen:curl -X GET \ -H "Accept: application/json" \ -H "Authorization: Bearer <access_token>" \ "https://api.private.eu-de.mq2.cloud.ibm.com/v1/<guid>/queue_managers"Ersetzen Sie
<access_token>durch Ihr IBM Cloud IAM-Token und<guid>durch die Service-Instanz-GUID (ID), die Ihre IBM MQ as a Service -Instanz identifiziert.Um jede Methode aufzurufen, muss Ihnen eine Rolle zugewiesen werden, die die erforderlichen IAM-Aktionen umfasst. Jede Methode listet die zugeordnete Aktion auf. Weitere Informationen zu IAM-Aktionen und deren Zuordnung zu Rollen finden Sie unter Zuweisen von Zugriff auf Kontoverwaltungsdienste.
Zum Abrufen Ihres Zugangstokens:
curl -X POST "https://iam.cloud.ibm.com/identity/token" --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' --data-urlencode 'apikey=<API_KEY>'Ersetzen Sie
<API_KEY>durch Ihren IAM-API-Schlüssel.
Curl-Beispiel
Zum Abrufen Ihres Zugangstokens:
curl -X POST "https://iam.cloud.ibm.com/identity/token" --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' --data-urlencode 'apikey=<API_KEY>'
Ersetzen Sie <API_KEY> durch Ihren IAM-API-Schlüssel.
Beispiel gehen
Einstellung von Client-Optionen durch externe Konfiguration.
Beispiel für Umgebungsvariablen, wobei <ENDPOINT_URL> für den Endpunkt URL und <API_KEY> für Ihren IAM-API-Schlüssel steht
export IBMCLOUD_MQCLOUD_CONFIG_ENDPOINT=<ENDPOINT_URL> export IBMCLOUD_APIKEY=<API_KEY> export IBMCLOUD_IAM_API_ENDPOINT="https://iam.cloud.ibm.com"
Beispiel für den Aufbau des Dienstclients:
import ( "log""os""github.com/IBM/go-sdk-core/v5/core""github.com/IBM/mqcloud-go-sdk/mqcloudv1" ) ... authenticator := &core.IamAuthenticator{ ApiKey: os.Getenv("IBMCLOUD_APIKEY"), URL: os.Getenv("IBMCLOUD_IAM_API_ENDPOINT") + "/identity/token", } mqcloudV1Options := &mqcloudv1.MqcloudV1Options{ URL: os.Getenv("IBMCLOUD_MQCLOUD_CONFIG_ENDPOINT"), Authenticator: authenticator, } mqcloudService, err := mqcloudv1.NewMqcloudV1(mqcloudV1Options) if err != nil { log.Fatalf("Failed to create MQ Cloud Service Client: %v", err) }