Behebung von Fehlern authorization required in Container Registry

Sie versuchen, auf Container Registry zuzugreifen, erhalten jedoch eine Fehlermeldung Authorization required. Befolgen Sie diese Schritte, um das Problem zu diagnostizieren, das häufig durch einen abgelaufenen API-Schlüssel oder fehlende IAM-Berechtigungen verursacht wird.

Wenn Sie versuchen, auf Container Registry zuzugreifen, wird eine der folgenden Meldungen angezeigt.

Die folgenden Alternativen sind mögliche Ursachen:

Szenario A. Sie versuchen, ein Image mit einer Push-Operation zu übertragen oder mit einer Pull-Operation zu extrahieren, aber Sie haben keinen gültigen Berechtigungsnachweis.

  • Sie haben versucht, sich mit einem ungültigen API-Schlüssel bei Container Registry anzumelden.
  • Sie haben versucht, ohne Anmeldung auf Container Registry zuzugreifen.
  • Ein Client versuchte, ohne Trägertoken auf Container Registry zuzugreifen.
  • Ein Client hat versucht, auf Container Registry mit einem abgelaufenen OAuth Token zuzugreifen.

Weitere Informationen zum Beheben dieses Problems finden Sie in Szenario A: Sie versuchen, ein Image mit einer Push-Operation zu übertragen oder mit einer Pull-Operation zu extrahieren.

Szenario B. Sie sind bei der falschen Region von Container Registryangemeldet. Um zu überprüfen, bei welcher Region Sie angemeldet sind, führen Sie den Befehl ibmcloud cr region aus.

Weitere Informationen zur Behebung dieses Problems finden Sie in Szenario B. Sie sind bei der falschen Region angemeldet.

Szenario C. Sie versuchen, die API zu verwenden.

  • Sie haben versucht, eine Authentifizierung bei der API Container Registry mit einem ungültigen API-Schlüssel durchzuführen.
  • Sie haben versucht, eine Authentifizierung für die API Container Registry mit einer ungültigen Konto-ID durchzuführen.

Weitere Informationen zur Behebung des Problems finden Sie unter Szenario C: Sie versuchen, die API zu verwenden.

Sie können dieses Problem wie folgt beheben:

Szenario A. Sie versuchen, ein Image mit einer Push-Operation zu übertragen oder mit einer Pull-Operation zu extrahieren.

Sie können nicht auf Container Registry zugreifen, da Sie keinen gültigen Berechtigungsnachweis haben.

Sie können diese Probleme auf folgende Weise beheben:

  • Überprüfen Sie die Informationen zum Protokollieren eines Clients in Container Registry(siehe Images mit Push-Operation an Ihren Namensbereich übertragen).
  • Erstellen und verwenden Sie einen gültigen IAM-API-Schlüssel zum Protokollieren eines Clients, z. B. Docker, in Container Registry mit dem Benutzernamen iamapikey und dem API-Schlüssel als Kennwort. Weitere Informationen finden Sie unter Benutzer-API-Schlüssel verwalten.
  • Wenn Sie über Automatisierung auf Container Registry zugreifen, konfigurieren Sie eine Service-ID und einen API-Schlüssel. Weitere Informationen finden Sie unter Auf Container Registry.

Szenario B. Sie sind bei der falschen Region angemeldet

Sie können nicht auf Container Registry zugreifen, weil Sie bei der falschen Region angemeldet sind.

Um zu überprüfen, bei welcher Region Sie angemeldet sind, führen Sie den Befehl ibmcloud cr region aus.

Sie können dieses Problem wie folgt beheben:

Wenn sich Ihr Bild in einer anderen Region von Container Registry befindet, müssen Sie sich bei IBM Cloud in der richtigen Region anmelden, indem Sie die folgenden Befehle ausführen.

  1. ibmcloud cr region-set REGION, wobei REGION der Name der Region ist (siehe Lokale Regionen).
  2. ibmcloud cr login

Weitere Informationen finden Sie unter Lokale Region als Zielregion.

Szenario C. Sie versuchen, die API zu verwenden

Sie können nicht auf Container Registry zugreifen, weil Sie versucht haben, sich bei der API Container Registry mit einem ungültigen API-Schlüssel oder einer ungültigen Konto-ID zu authentifizieren.

Sie können dieses Problem wie folgt beheben:

  • Verwenden Sie die ibmcloud Befehlszeilenschnittstelle (CLI) oder die IAM-API, um ein gültiges OAuth Token zur Authentifizierung gegenüber der Container Registry API abzurufen. Weitere Informationen finden Sie unter IBM Cloud Container Registry API - Authentifizierung.
  • Stellen Sie bei der Authentifizierung mit der API Container Registry sicher, dass eine gültige Konto-ID verwendet wird. Sie können Ihre Konto-ID abrufen, wenn Sie den Befehl ibmcloud account show ausführen.