SAML-Authentifizierung in der Suche mit OpenSearch
Erfahren Sie mehr über die Verwendung der SAML-Authentifizierung OCI Search mit OpenSearch.
OCI Search mit OpenSearch unterstützt die Verwendung eines Identitätsproviders für den Zugriff und die Kontrolle auf OpenSearch-Cluster und OpenSearch-Dashboards. Dies ist über SAML-Single Sign-On-Unterstützung im OpenSearch-Sicherheits-Plug-in verfügbar.
Mit der SAML-Integration können Sie ein Cluster so konfigurieren, dass OCI OpenSearch als SAML-Serviceprovider eine Verbindung zu Ihrem Identitätsprovider herstellt, um Benutzer zu authentifizieren und ein Authentifizierungstoken für den Zugriff auf OpenSearch-Cluster und OpenSearch-Dashboards an OCI OpenSearch zurückzusenden. Sie können auch das OpenSearch-Dashboard konfigurieren, sodass Benutzer beim Zugriff auf das OpenSearch-Dashboard zur Authentifizierung zur Anmeldeseite des Identitätsproviders umgeleitet werden.
In der folgenden Tabelle werden die SAML-Konfigurationseinstellungen beschrieben, die für die Suche mit OpenSearch gelten.
SAML-Konfiguration | Beschreibung | Feld- oder Attributname |
---|---|---|
SAML-Metadaten | Metadatendatei, in der die Funktionen und Konfiguration des Identitätsproviders beschrieben werden. Erforderlich. |
|
Identitäts-ID | Der Name des Identitätsproviders. Erforderlich. |
|
OpenSearch Dashboard-URL | Die URL des Dashboards OpenSearch des Clusters. Optional. |
|
Admin-Backend-Rolle | Die Backend-Rolle im Identitätsprovider für die Benutzer, die vollständige Administratorberechtigungen für das Cluster haben. Optional. |
|
Subject-Schlüssel | Wenn der Identitätsprovider den Standardelementnamen für Benutzer NameID verwendet, müssen Sie hier nichts angeben. Verwenden Sie andernfalls dieses Element, um das Element in der SAML-Antwort anzugeben, das die Benutzer enthält. Optional. |
|
Rollenschlüssel | Wenn Sie Backend-Rollen verwenden, gibt dies den Elementnamen in der SAML-Antwort an, der die Benutzerrollen enthält. Optional |
|
Einschränkungen und Überlegungen
- Die Suche mit OpenSearch unterstützt nur die Aktivierung der SAML-Authentifizierung in der Konsole für vorhandene Cluster. Sie können die SAML-Authentifizierung nicht aktivieren, wenn Sie ein neues Cluster in der Konsole erstellen. Sie können die SAML-Authentifizierung aktivieren, wenn Sie ein neues OpenSearch-Cluster mit der CLI oder API erstellen.
- Wenn Sie ein neues Cluster erstellen und die SAML-Authentifizierung über die CLI oder API aktivieren, müssen Sie auch eine rollenbasierte Zugriffskontrolle für das Cluster aktivieren, wobei der Sicherheitsmodus auf "Erzwingen" gesetzt ist.
Voraussetzungen
- Ein vorhandener Identitätsprovider.
- Nur für die Konsole muss ein vorhandenes OpenSearch-Cluster erstellt werden.
Sie können SAML nur für ein vorhandenes Cluster in der Konsole aktivieren.
- Informationen zur Verwendung der CLI finden Sie unter Befehlszeilenschnittstelle (CLI). Eine vollständige Liste der für CLI-Befehle verfügbaren Flags und Optionen finden Sie in derCLI-Befehlsreferenz.
SAML beim Erstellen eines Clusters aktivieren
Sie können die SAML-Authentifizierung aktivieren, wenn Sie mit dem Befehl create für das cluster-Objekt in der CLI ein Cluster erstellen. Zusätzlich zu den erforderlichen Parametern für den Befehl "create" müssen Sie auch die folgenden Parameter aufnehmen:
- Die rollenbasierten Zugriffskontrollparameter, einschließlich
security-mode
,security-master-user-name
undsecurity-master-user-password-hash
. Der Parametersecurity-mode
muss aufENFORCING
gesetzt sein. - Der Parameter
securitySamlConfig
, der die SAML-Konfiguration enthält. Im Folgenden wird ein JSON-Beispiel mit SAML-Konfiguration für diesen Parameter dargestellt:{ "isEnabled": true, "idpEntityId": "<identity_provider_name>", "idpMetadataContent": "xml content" "opendashboardUrl": "https://localhost:5601", "adminBackendRole": "<admin_role_name>", "subjectKey": "<NameID>", "rolesKey": "<group_name>" }
Während das obige Beispiel alle verfügbaren SAML-Konfigurationsfelder enthält, sind nur die Felder
isEnabled
,idpEntityId
undidpMetadataContent
erforderlich.
Beispielbefehl
create
:oci opensearch cluster create --compartment-id <compartment_ocid> --securitySamlConfig <SAML_Config_JSON> --security-mode ENFORCING --security-master-user-name <username> --security-master-user-password-hash <password> ...remaining required fields
SAML beim Aktualisieren eines Clusters aktivieren
Sie können die SAML-Authentifizierung für ein vorhandenes Cluster aktivieren, wenn Sie mit dem Befehl update für das cluster-Objekt in der CLI ein Cluster aktualisieren. Sie müssen den Parameter
securitySamlConfig
in den Aktualisierungsbefehl aufnehmen. In der JSON der SAML-Konfiguration im vorherigen Abschnitt finden Sie ein Beispiel dafür, was Sie für diesen Parameter angeben müssen.Beispielbefehl
update
:oci opensearch cluster update --display-name<cluster_name> --opensearch-cluster-id <cluster_ocid --securitySamlConfig <SAML_Config_JSON>
Wenn die rollenbasierte Zugriffskontrolle nicht für das Cluster aktiviert ist, müssen Sie sie aktivieren, indem Sie auch die Parameter
security-mode
,security-master-user-name
undsecurity-master-user-password-hash
einschließen. Der Parametersecurity-mode
muss aufENFORCING
gesetzt sein. - Die rollenbasierten Zugriffskontrollparameter, einschließlich
- Informationen zur Verwendung der API und zu Signieranforderungen finden Sie unter REST-APIs und Sicherheitszugangsdaten. Informationen zu SDKs finden Sie unter Software Development Kits und Befehlszeilenschnittstelle (CLI).
SAML beim Erstellen eines Clusters aktivieren
Sie können die SAML-Authentifizierung aktivieren, wenn Sie ein Cluster mit dem Vorgang CreateOpensearchCluster erstellen. Übergeben Sie die SAML-Konfigurationsdetails in CreateOpensearchClusterDetails mit dem neuen Attribut
securitySamlConfig
, wie im folgenden Beispiel dargestellt:POST https://opensearch.us-ashburn-1.oci.oraclecloud.com/20180828/opensearchClusters/ { ... "securitySamlConfig": { "isEnabled": true, "idpEntityId": "<identity_provider_name>", "idpMetadataContent": "xml content" "opendashboardUrl": "https://localhost:5601", "adminBackendRole": "<admin_role_name>", "subjectKey": "<NameID>", "rolesKey": "<group_name>" }, ... }
SAML beim Aktualisieren eines Clusters aktivieren
Sie können die SAML-Authentifizierung für ein vorhandenes Cluster aktivieren, wenn Sie ein Cluster mit dem Vorgang UpdateOpensearchCluster aktualisieren. Übergeben Sie die SAML-Konfigurationsdetails in UpdateOpensearchClusterDetails mit dem neuen Attribut
securitySamlConfig
, wie im folgenden Beispiel dargestellt:PUT https://opensearch.us-ashburn-1.oci.oraclecloud.com/20180828/opensearchClusters/ocid1.opensearchcluster.oc1.<unique_ID> { ... "securitySamlConfig": { "isEnabled": true, "idpEntityId": "<identity_provider_name>", "idpMetadataContent": "xml content" "opendashboardUrl": "https://localhost:5601", "adminBackendRole": "<admin_role_name>", "subjectKey": "<NameID>", "rolesKey": "<group_name>" }, ... }