Wie kann ich Fehler bei der differenzierten Zugriffskontrolle in meinem Amazon-OpenSearch-Service-Cluster beheben?

Letzte Aktualisierung am 05.08.2021

In meinem Amazon-OpenSearch-Service-Cluster (Nachfolger von Amazon Elasticsearch Service) treten Zugriffskontrollfehler auf. Wie löse und behebe ich Zugriffskontrollfehler?

Kurzbeschreibung

In Ihrem OpenSearch-Service-Cluster kann einer der folgenden differenzierten Zugriffskontrollfehler auftreten:

  • „security_exception“, „Grund“:„keine Berechtigungen“ 403-Fehler
  • „Benutzer: anonym ist nicht berechtigt auszuführen: iam: PassRole“
  • „Konnte keine Elasticsearch-Daten finden“
  • 401-nicht-autorisiert-Fehler

Zusätzlich zur Behebung dieser Fehler zeigt Ihnen dieser Artikel, wie Sie die folgenden Aufgaben mit OpenSearch Service ausführen:

  • Integrieren anderer AWS-Services in OpenSearch Service, wenn eine feldweise Zugriffskontrolle aktiviert ist
  • Erlauben von anonymem Zugriff mithilfe einer differenzierten Zugriffskontrolle
  • Anbieten von differenziertem Zugriff auf bestimmte Indizes, Dashboards und Visualisierungen basierend auf der Benutzer-Tenancy
  • Verwenden von differenzierter Zugriffskontrolle auf Feldebene

Auflösung

„security_exception“, „Grund“:„keine Berechtigungen“ 403-Fehler

Um diesen Fehler zu beheben, überprüfen Sie zunächst, ob der Benutzer oder die Backend-Rolle in Ihrem OpenSearch-Service-Cluster über die erforderlichen Berechtigungen verfügt. Ordnen Sie dann die Benutzer- oder Backend-Rolle einer Rolle zu.

„Benutzer: anonym ist nicht berechtigt auszuführen: iam: PassRole“

Diese Fehlermeldung wird möglicherweise angezeigt, wenn Sie versuchen, einen manuellen Snapshot zu registrieren. Neben den normalen Berechtigungen, die für die Amazon Identity and Access Management (IAM)-Rolle erforderlich sind, mit der Sie den manuellen Snapshot registriert haben, müssen Sie die Rolle manage_snapshots der IAM-Rolle zuordnen. Verwenden Sie dann diese IAM-Rolle, um eine signierte Anfrage an die Domäne zu senden.

„Konnte keine Elasticsearch-Daten finden“

Dieser Fehler wird möglicherweise angezeigt, wenn Sie versuchen, Indexmuster nach dem Upgrade auf OpenSearch Service Version 7.9 zu erstellen. Verwenden Sie die Auflösung-API, um „indices:admin/resolve/index“ zu allen Indizes und Aliassen hinzuzufügen, wenn Sie ein Indexmuster in einem FGAC-fähigen Cluster erstellen. Wenn diese Berechtigung fehlt, gibt OpenSearch Service einen 403-Fehlerstatuscode aus. Dieser wird wiederum einem 500-Fehlerstatuscode von OpenSearch Dashboards zugeordnet. Infolgedessen werden die Indizes nicht aufgeführt.

401-nicht-autorisiert-Fehler

Möglicherweise wird ein 401-nicht-autorisiert-Fehler angezeigt, wenn Sie „$“- oder „!“-Zeichen in primären Anmeldeinformationen mit curl -u „user:password“ verwenden . Stellen Sie sicher, dass Sie Ihre Anmeldeinformationen in einfache Anführungszeichen setzen wie im folgenden Beispiel:

curl -u 'user:password' <DOMAIN-ENDPOINT>

Integrieren anderer AWS-Services in OpenSearch Service, wenn eine feldweise Zugriffskontrolle aktiviert ist

Um einen anderen AWS-Service in OpenSearch Service zu integrieren, wenn die feldweise Zugriffssteuerung aktiviert ist, müssen Sie den IAM-Rollen für diese Dienste die entsprechenden Berechtigungen erteilen. Weitere Informationen finden Sie in der folgenden Dokumentation zur Verwendung von Integrationen mit einer differenzierten Zugriffskontrolle.

Erlauben von anonymem Zugriff mithilfe einer differenzierten Zugriffskontrolle

Aufgrund des verwalteten Charakters von OpenSearch Service wird anonymer Zugriff derzeit nicht unterstützt.

Anbieten eines differenzierten Zugriffs auf bestimmte Indizes, Dashboards und Visualisierungen basierend auf der Benutzer-Tenancy

Um FGAC-Zugriff auf bestimmte Indizes oder Dashboards zu gewähren, ordnen Sie den Benutzer einer Rolle zu, die über Berechtigungen für den Kibana-Index des Mandanten verfügt:

.kibana_<hash>_<tenant_name>

Weitere Informationen finden Sie unter Verwalten von Kibana-Indizes auf der OpenDistro-Website.

Verwenden von differenzierter Zugriffskontrolle auf Feldebene

Um eine differenzierte Zugriffskontrolle auf Feldebene zu verwenden, richten Sie eine Rolle mit der erforderlichen Sicherheit auf Feldebene ein. Ordnen Sie dann den Benutzer der Rolle zu, die Sie erstellt haben.


War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?