Bekannte Probleme und Einschränkungen

Zu den bekannten Problemen und Einschränkungen gehören die fehlende Möglichkeit, den Zugriff auf einige Produkte im IBM Cloud® Katalog zu beschränken, sowie die Höchstgrenzen für die Erstellung von IBM Cloud Identity and Access Management (IAM) Ressourcen.

Um die Standardgrenzen für Ihr Konto zu überprüfen, siehe IBM Cloud IAM-Grenzen.

Podman Desktop-Authentifizierungstoken werden nicht aktualisiert

In älteren Versionen von Podman Desktop gibt es ein bekanntes Problem, bei dem abgelaufene Authentifizierungstoken nicht automatisch aktualisiert werden. Abgelaufene Token führen zu wiederholten fehlgeschlagenen Authentifizierungsversuchen mit IAM. Wenn Sie Podman Desktop installiert haben, aktualisieren Sie es auf Version 1.19.1 oder höher.

Podman ist ein Produkt von Drittanbietern, das nicht von IBM bereitgestellt oder unterstützt wird. IBM übernimmt keine Verantwortung für die Nutzung von Podman mit IBM Cloud und garantiert keine bestimmte Leistung.

Google Login unterstützt keine föderierten IDs

Google Die ID-Anmeldung ist für Benutzer mit föderierten IDs nicht verfügbar, da ihr externer Unternehmensidentitätsanbieter möglicherweise zusätzliche Zugriffsrechte benötigt (IdP ).

Einstellungen der Katalogverwaltung gelten für einige IBM Produkte nicht

Einige Produkte sind von den folgenden Einstellungen für die Katalogsichtbarkeit nicht betroffen:

  • Ausschalten der Sichtbarkeit des IBM Cloud Katalogs
  • Ausschluss aller IBM Cloud Produkte aus dem Katalog
  • Ausschluss aller Produkte von IBM Cloud aus Ihren privaten Katalogen

Sie können die Einstellungen für die Sichtbarkeit von Katalogen einsehen und verwalten, indem Sie in der Konsole IBM Cloud auf Verwalten > Kataloge > Einstellungen gehen.

Benutzer können weiterhin Instanzen der folgenden Produkte mithilfe einer API oder der Befehlszeilenschnittstelle erstellen, unabhängig von der Einstellung für die Katalogsichtbarkeit im Konto oder privaten Katalog:

  • Block Storage for VPC
  • Citrix Netscaler VPX
  • FortiGate Security Appliance
  • Hardware Firewall
  • Hardware Firewall Dedicated
  • IBM Cloud Backup for Classic
  • IBM Cloud Bare Metal Servers
  • IBM Cloud Block Storage for Classic
  • IBM Cloud Container Registry
  • IBM Cloud Content Delivery Network
  • IBM Cloud Direct Link
  • IBM Cloud Direct Link on Classic
  • IBM Cloud Functions
  • IBM Cloud Gateway Appliance
  • IBM Cloud Hardware Security Modules
  • IBM Cloud Kubernetes Service
  • IBM Cloud Object Storage
  • IBM Cloud Schematics
  • IBM Cloud Load Balancer
  • IBM Cloud Virtual Servers
  • Teilnetze und IPs
  • Virtual Private Cloud
  • Virtual Server for VPC
  • VLANs
  • VPN
  • VPN for VPC

Auf Attributen basierende Einschränkungen für Richtlinien

Zugriffsverwaltungs-Tags stehen nur zur Verfügung, wenn Sie eine Zugriffsrichtlinie erstellen, deren Geltungsbereich sich auf alle IAM-fähigen Dienste erstreckt. In diesem Fall können keine weiteren Attribute hinzugefügt werden, wenn Sie den Zugriff auf der Grundlage von Tags aktivieren. Außerdem kann kein Tag zur Zugriffsrichtlinie hinzugefügt werden, wenn Sie als Basis für Ihre Richtlinie einen bestimmten Standort oder eine bestimmte Ressourcengruppe verwenden.

Einschränkungen der IAM-Rolle

Die Erstellung von zwei Rollen mit unterschiedlichen Namen, aber genau denselben Aktionen schlägt fehl. IAM behandelt Rollen mit identischen Berechtigungen als Duplikate, auch wenn ihre Namen eindeutig sind.

Versionseinschränkungen für Zugriffsrichtlinien

Ab 25. Januar 2023 unterstützt IAM zwei Versionen der IAM-Richtlinienmanagement-API: /v2/policies und /v1/policies. v1/polices ermöglicht Zeichenfolgevergleiche mit Attributen im Subjekt und den Ressourcen einer Richtlinie. v2/polices führt ein neues Schema ein, das Abwärtskompatibilität bietet und gleichzeitig komplexere Vergleiche und Operatoren sowie zeitbasierte Bedingungen ermöglicht.

Zeichenfolgevergleiche

In der folgenden Tabelle sind die Zeichenfolgenvergleichsoperatoren aufgeführt, die Sie zum Erstellen von Zugriffsrichtlinien mit /v2/policies-Syntax verwenden können. Weitere Informationen zu den einzelnen Versionen finden Sie unter "Vergleich der Syntax von /v1/policies und /v2/policies ". Beispielhafte Anwendungsfälle der Betreiber finden Sie unter Bedingungen, die auf Ressourcenattributen basieren.

Sie können bis zu 10 Bedingungen haben und bis zu 2 Ebenen verschachteln.

Die für Bedingungen in Zugriffsrichtlinien verfügbaren String-Vergleichsoperatoren.
Operator Beschreibung
stringEquals Zeichenfolgevergleich mit Beachtung der Groß-/Kleinschreibung. Boolesche Werte oder Zahlenwerte werden vor dem Vergleich in eine Zeichenfolge konvertiert.
stringMatch Es wird eine Zeichenkettenübereinstimmung zwischen dem Muster und der Zielzeichenkette unter Berücksichtigung der Groß-/Kleinschreibung durchgeführt, indem entweder ein Sternchen ( * ), ein Fragezeichen ( ? ), beide oder keines (wie beim Literalwert) verwendet wird. Ein Stern (*) stellt eine beliebige Folge von null, einem oder mehreren Zeichen in der Zeichenfolge dar, ein Fragezeichen (?) stellt ein einzelnes Zeichen dar. Sie können auch ein Sternchen * und ein Fragezeichen ? als Literalwert ausdrücken, indem Sie jedes in zwei geschweifte Klammern einschließen {{}}.
stringExists Boolean, wobei true angibt, dass die Zeichenkette vorhanden sein muss und leer sein kann. false gibt an, dass die Zeichenkette nicht vorhanden sein darf.
stringEqualsAnyOf Exakter String-Abgleich, bei dem die Groß-/Kleinschreibung beachtet wird, mit einem der Strings in einer Reihe von Strings. Begrenzung auf 10 Werte.
stringMatchAnyOf Zeichenfolgenvergleich, bei dem die Groß-/Kleinschreibung beachtet wird und der mit einer beliebigen Zeichenfolge in einer Reihe von Zeichenfolgen übereinstimmt. Die Zeichenfolgenwerte können entweder ein Sternchen ( * ), ein Fragezeichen ( ? ), beide oder keines (wie der Literalwert) enthalten. Ein Stern (*) stellt eine beliebige Folge von null, einem oder mehreren Zeichen in der Zeichenfolge dar, ein Fragezeichen (?) stellt ein einzelnes Zeichen dar. Sie können auch ein Sternchen * und ein Fragezeichen ? als Literalwert ausdrücken, indem Sie jedes in zwei geschweifte Klammern einschließen {{}}. Begrenzung auf 10 Werte.

Die folgende Anweisung enthält beispielsweise ein Element operator, das mithilfe von stringEquals angibt, dass die Konto-ID und der Servicename exakt mit dem Element value übereinstimmen müssen. Die Anweisung enthält außerdem ein Element operator, das stringMatch verwendet, um ein Benennungsmuster für Event Streams-Themen anzugeben, die Sie zum Organisieren des Zugriffs auf diese bestimmten Ressourcen verwenden können. Auf diese Weise können Sie allen Themen in Ihrem Konto, die mit messagehub-topic-dev beginnen, eine Richtlinie zuordnen.

"resource": {
     "attributes": [
        {
             "operator": "stringEquals",
             "value": "0aeab68aabd14d89bd72e4330150710a0",
             "key": "accountId"
        },
        {
             "value": "messagehub",
             "operator": "stringEquals",
             "key": "serviceName"
        },
        {
             "value": "messagehub-topic-dev*",
             "operator": "stringMatch",
             "key": "resource"
        }
    ]
}

Berechtigungsrichtlinien werden momentan nur in /v1/policies unterstützt.

Richtlinienversion in der Konsole überprüfen

Zeit-und ressourcenattributbasierte Bedingungen für IAM-Zugriffsrichtlinien verwenden die /v2/policies-Syntax. Richtlinien, die /v1/policies-Syntax verwenden, können keine zeit-und ressourcenattributbasierten Bedingungen hinzufügen. Informationen zum Aktualisieren von /v1/policies auf /v2/policies mithilfe der API finden Sie unter /v1/policies mit Bedingungen mithilfe der API auf /v2/policies aktualisieren. Gehen Sie wie folgt vor, um zu überprüfen, ob Sie diese Bedingungen zu einer vorhandenen Richtlinie in der Konsole hinzufügen können:

  1. Gehen Sie zu „Verwalten“ > „Zugriff“ (IAM).
  2. Wählen Sie je nach Richtlinie Benutzer, Vertrauenswürdige Profile, Service-IDs oder Zugriffsgruppen aus.
  3. Wählen Sie bestimmte Benutzer, vertrauenswürdige Profile, Service-IDs oder Zugriffsgruppen aus.
  4. Rufen Sie Zugriff > Zugriffsrichtlinien auf.
  5. Klicken Sie auf eine Richtlinie. /v1/policies werden durch die folgende Benachrichtigung angegeben:

Conditions unavailable for v1 policies

  1. (Optional) Um Bedingungen zu einer Richtlinie hinzuzufügen, die die /v1/policies-Syntax verwendet, löschen Sie die ursprüngliche Richtlinie und erstellen Sie eine neue. In der Konsole verwenden neue Richtlinien die Syntax /v2/policies.

/v1/policies mit Bedingungen mithilfe der API auf /v2/policies aktualisieren

Richtlinien, die /v1/policies-Syntax verwenden, können keine zeit-und ressourcenattributbasierten Bedingungen hinzufügen. Zum Aktualisieren der Version können Sie PUT /v2/policies/{id} mit der ID V1 und allen Bedingungen verwenden, die Sie einschließen möchten. Weitere Informationen finden Sie unter /v2/policies.

/v1/policies-und /v2/policies-Syntax vergleichen

Die Richtlinie in jedem Beispiel erteilt einem Benutzer Zugriff auf den Abrechnungsservice mit der Rolle 'Editor'. Das Beispiel /v2/policies enthält temporäre zeitbasierte Bedingungen, die durch den Parameter "conditions" angegeben werden.

Verwenden Sie beim Bearbeiten, Erstellen und Löschen von Richtlinien die entsprechende API-Version.

/v1/policies

{
     "type": "access",
     "roles": [
        {
            "role_id": "crn:v1:bluemix:public:iam::::role:Editor"
        }
    ],
     "resources": [
        {
             "attributes": [
                {
                    "name": "accountId",
                    "value": "000c49bc2724a07000010b1da94c4d0"
                },
                {
                    "name": "serviceName",
                    "value": "billing"
                }
            ]
        }
    ],
     "subjects": [
        {
             "attributes": [
                {
                    "name": "iam_id",
                    "value": "IBMid-00000AV0S0"
                }
            ]
        }
    ]
}

Wenn Sie Richtlinien mit /v1/policies auflisten, gibt die API /v1/ und eine Platzhalterrichtlinie für jede /v2/-Richtlinie im Konto zurück. Weitere Informationen finden Sie unter /v1/policies “ gibt einen Platzhalter für die Richtlinien unter „ /v2/ “ des Kontos zurück.

/v2/policies

{
     "type": "access",
     "control": {
         "grant": {
             "roles": [
                {
                    "role_id": "crn:v1:bluemix:public:iam::::role:Editor"
                }
            ]
        }
    },
     "resource": {
         "attributes": [
            {
                "operator": "stringEquals",
                "value": "000c49bc2724a07000010b1da94c4d0",
                "key": "accountId"
            },
            {
                "value": "billing",
                "operator": "stringEquals",
                "key": "serviceName"
            }
        ]
    },
     "rule": {
         "operator": "and",
         "conditions": [
            {
                "key": "{{environment.attributes.current_date_time}}",
                "operator": "dateTimeGreaterThanOrEquals",
                "value": "2023-01-01T09:00:00+00:00"
            },
            {
                "key": "{{environment.attributes.current_date_time}}",
                "operator": "dateTimeLessThanOrEquals",
                "value": "2023-01-06T17:59:59+00:00"
            }
        ]
    },
     "pattern": "time-based-conditions:once",
     "subject": {
         "attributes": [
            {
                "key": "iam_id",
                "operator": "stringEquals",
                "value": "IBMid-00000AV0S0"
            }
        ]
    }
}

/v1/policies gibt einen Platzhalter für /v2/-Richtlinien zurück

Wenn Sie Richtlinien mit /v1/policies auflisten, gibt die API /v1/ und eine Platzhalterrichtlinie für jede /v2/-Richtlinie im Konto zurück. Die Platzhalter geben an, dass zusätzliche Richtlinien im Konto vorhanden sind, während das Schema /v1/ verwendet wird. Um den vollständigen Inhalt einer /v2/-Richtlinie anzuzeigen, listen Sie Richtlinien mit /v2/policies auf oder rufen Sie die einzelne Richtlinie mit GET: v2/policies/<ID> ab. Sehen Sie sich beispielsweise die folgende Platzhalterrichtlinie an:

{
     "id": "33b901fa-8ec5-4432-a2e6-24b6a212c20a",
     "type": "access",
     "description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**",
     "subjects": [{
         "attributes": [{
             "name": "iam_id",
             "value": "unsupported version"
        }]
    }],
     "roles": [{
         "role_id": "crn:v1:bluemix:public:iam::::role:UnsupportedVersion",
         "display_name": "Unsupported Version",
         "description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**"
    }],
     "resources": [{
         "attributes": [{
             "name": "accountId",
             "value": "000c49bc2724a07000010b1da94c4d0"
        }]
    }],
    "href": "https://iam.cloud.ibm.com/v2/policies/88b901fa-6ec5-888-a2e6-24b6a212c20a"
}

Dienste, die von der Begrenzung der Interaktionen mit externen Identitäten betroffen sind

Die Begrenzung externer Identitätsinteraktionen erfordert, dass Benutzer mit einer IAM-Zugriffsrichtlinie auf Ressourcen in Ihrem Konto nur dann auf diese Ressourcen zugreifen, wenn sie in Ihrem Konto oder einem Konto in der Zulassenliste authentifiziert sind. Die folgenden Dienste oder einige ihrer Funktionen funktionieren möglicherweise nicht wie erwartet, wenn die Einstellung für externe Identitätsinteraktionen auf den eingeschränkten Modus gesetzt ist:

  • IBM Cloud Satellite
  • IBM Cloud Object Storage- die öffentlich zugänglichen Eimer werden nicht zugänglich sein
  • IBM Cloud Code Engine
  • IBM Cloud® DevOps Insights
  • Zugriffsbericht (Generierung von CSV oder JSON Ressourcenzugriffsbericht)

Weitere Informationen zu dieser Einstellung finden Sie unter Verwalten externer Identitätsinteraktionen.