Authentification SAML dans la recherche avec OpenSearch
Découvrez comment utiliser l'authentification SAML OCI Search avec OpenSearch.
OCI Search avec OpenSearch prend en charge l'utilisation d'un fournisseur d'identités pour l'accès et le contrôle aux clusters OpenSearch et aux tableaux de bord OpenSearch. Cette fonctionnalité est disponible via la prise en charge de l'authentification unique SAML dans le module d'extension de sécurité OpenSearch.
Avec l'intégration SAML, vous pouvez configurer un cluster de sorte qu'OCI OpenSearch, en tant que fournisseur de service SAML, se connecte à votre fournisseur d'identités pour authentifier les utilisateurs et transmettre un jeton d'authentification à OCI OpenSearch pour accéder aux clusters OpenSearch et aux tableaux de bord OpenSearch. Vous pouvez également configurer le tableau de bord OpenSearch afin que les utilisateurs soient redirigés vers la page de connexion du fournisseur d'identités pour authentification lors de l'accès au tableau de bord OpenSearch.
Le tableau suivant décrit les paramètres de configuration SAML applicables à la recherche avec OpenSearch.
Configuration SAML | Description | Nom de champ ou d'attribut |
---|---|---|
Métadonnées SAML | Fichier de métadonnées décrivant les fonctionnalités et la configuration du fournisseur d'identités. Obligatoire. |
|
ID d'identité | Nom du fournisseur d'identités. Obligatoire. |
|
OpenSearch URL du tableau de bord | URL du tableau de bord OpenSearch du cluster. Facultatif. |
|
Rôle de back-end d'administrateur | Rôle de back-end dans le fournisseur d'identités pour les utilisateurs disposant de droits d'accès administrateur complets pour le cluster. Facultatif. |
|
Clé de sujet | Si le fournisseur d'identités utilise le nom d'élément par défaut pour les utilisateurs, NameID , vous n'avez rien à indiquer ici. Sinon, utilisez cet élément pour indiquer l'élément dans la réponse SAML qui contient les utilisateurs. Facultatif. |
|
Clé de rôles | Si vous utilisez des rôles back-end, cela indique le nom de l'élément dans la réponse SAML qui contient les rôles utilisateur. Facultatif |
|
Limites et remarques
- La recherche avec OpenSearch prend uniquement en charge l'activation de l'authentification SAML dans la console pour les clusters existants. Vous ne pouvez pas activer l'authentification SAML lorsque vous créez un cluster dans la console. Vous pouvez activer l'authentification SAML lors de la création d'un cluster OpenSearch à l'aide de la CLI ou de l'API.
- Lorsque vous créez un cluster et activez l'authentification SAML à l'aide de la CLI ou de l'API, vous devez également activer le contrôle d'accès basé sur les rôles pour le cluster, le mode de sécurité étant défini sur Enforcement.
Prérequis
- Fournisseur d'identités existant.
- Pour la console uniquement, un cluster OpenSearch existant doit être créé.
Vous ne pouvez activer SAML que pour un cluster existant dans la console.
- Pour plus d'informations sur l'utilisation de l'interface de ligne de commande, reportez-vous à Interface de ligne de commande (CLI). Afin d'obtenir la liste complète des indicateurs et options disponibles pour ces commandes, reportez-vous à la Référence de commandes de la CLI.
Activation de SAML lors de la création d'un cluster
Vous pouvez activer l'authentification SAML lorsque vous utilisez la commande create pour l'objet cluster dans la CLI afin de créer un cluster. Outre les paramètres requis pour la commande de création, vous devez également inclure les paramètres suivants :
- Paramètres de contrôle d'accès basé sur les rôles, notamment
security-mode
,security-master-user-name
etsecurity-master-user-password-hash
. Le paramètresecurity-mode
doit être défini surENFORCING
. - Paramètre
securitySamlConfig
qui contient la configuration SAML. L'exemple suivant présente un exemple JSON avec la configuration SAML pour ce paramètre :{ "isEnabled": true, "idpEntityId": "<identity_provider_name>", "idpMetadataContent": "xml content" "opendashboardUrl": "https://localhost:5601", "adminBackendRole": "<admin_role_name>", "subjectKey": "<NameID>", "rolesKey": "<group_name>" }
Alors que l'exemple précédent inclut tous les champs de configuration SAML disponibles, seuls les champs
isEnabled
,idpEntityId
etidpMetadataContent
sont requis.
Exemple de commande
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
Activation de SAML lors de la mise à jour d'un cluster
Vous pouvez activer l'authentification SAML pour un cluster existant lorsque vous utilisez la commande update pour l'objet cluster dans la CLI afin de mettre à jour un cluster. Vous devez inclure le paramètre
securitySamlConfig
dans la commande update. Reportez-vous au fichier JSON de configuration SAML dans la section précédente pour obtenir un exemple des éléments à indiquer pour ce paramètre.Exemple de commande
update
:oci opensearch cluster update --display-name<cluster_name> --opensearch-cluster-id <cluster_ocid --securitySamlConfig <SAML_Config_JSON>
Si le contrôle d'accès basé sur les rôles n'est pas activé pour le cluster, vous devez l'activer en incluant également les paramètres
security-mode
,security-master-user-name
etsecurity-master-user-password-hash
. Le paramètresecurity-mode
doit être défini surENFORCING
. - Paramètres de contrôle d'accès basé sur les rôles, notamment
- Pour plus d'informations sur l'utilisation de l'API et la signature des demandes, reportez-vous à API REST et à Informations d'identification de sécurité. Pour plus d'informations sur les kits SDK, reportez-vous à Kits SDK et interface de ligne de commande.
Activation de SAML lors de la création d'un cluster
Vous pouvez activer l'authentification SAML lorsque vous utilisez l'opération CreateOpensearchCluster pour créer un cluster. Transmettez les détails de configuration SAML dans CreateOpensearchClusterDetails, à l'aide du nouvel attribut
securitySamlConfig
, comme indiqué dans l'exemple suivant :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>" }, ... }
Activation de SAML lors de la mise à jour d'un cluster
Vous pouvez activer l'authentification SAML pour un cluster existant lorsque vous utilisez l'opération UpdateOpensearchCluster pour mettre à jour un cluster. Transmettez les détails de configuration SAML dans UpdateOpensearchClusterDetails, à l'aide du nouvel attribut
securitySamlConfig
, comme indiqué dans l'exemple suivant :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>" }, ... }