Configuration d'OpenID Connect pour une grappe OpenSearch
Configurez une grappe OpenSearch pour utiliser un fournisseur d'identités OpenID Connect, tel qu'Oracle Identity Cloud Service, à des fins d'authentification et d'autorisation.
Préalables
- Grappe OpenSearch basée sur OpenSearch version 2.3.0 ou plus récente. Pour les grappes basées sur d'anciennes versions de OpenSearch, vous devez mettre à niveau la grappe, voir Mises à niveau logicielles de grappe OpenSearch.
- Le mode de sécurité de la grappe OpenSearch est réglé à ENFORCING. Voir Mise à jour du mode de sécurité de la grappe pour l'application.
- Vous disposez d'un fournisseur d'identités OpenID Connect, tel qu'Oracle Identity Cloud Service, configuré et configuré pour être utilisé.
- Vous disposez de l'URL OpenID Connect pour votre fournisseur d'identités, qui est l'URL permettant d'accéder aux métadonnées et aux paramètres de configuration OpenID Connect du fournisseur.
Activer OpenID avec les API REST du plugiciel de sécurité OpenSearch
Utilisez l'API de configuration du plugiciel de sécurité OpenSearch pour activer OpenID Connect pour une grappe OpenSearch.
L'exemple suivant montre comment activer OpenID Connect pour une grappe, avec un exemple d'URL OpenID Connect pour Oracle Identity Cloud Service. Le code inclut également la définition du mode de sécurité pour l'application dans l'appel de l'API de configuration.
PUT _plugins/_security/api/securityconfig/config
{
"dynamic": {
"security_mode": "ENFORCING",
"http": {
"anonymous_auth_enabled": false,
"xff": {
"enabled": false
}
},
"authc": {
"openid_auth_domain": {
"http_enabled": true,
"transport_enabled": true,
"order": 0,
"http_authenticator": {
"challenge": false,
"type": "openid",
"config": {
"subject_key": "sub",
"roles_key": "sub",
"openid_connect_url": "https://idcs-<IDCS_Instance_ID>.identity.oraclecloud.com/.well-known/openid-configuration"
}
},
"authentication_backend": {
"type": "noop",
"config": {}
},
"description": "Authenticate using OpenId connect"
},
"basic_internal_auth_domain": {
"http_enabled": true,
"transport_enabled": true,
"order": 1,
"http_authenticator": {
"challenge": true,
"type": "basic",
"config": {}
},
"authentication_backend": {
"type": "intern",
"config": {}
},
"description": "Authenticate via HTTP Basic against internal users database"
}
},
"authz": null
}
}Pour plus d'options de configuration OpenID Connect disponibles pour une grappe OpenSearch, voir OpenSearch - OpenID Connect.
Utilisation d'OpenID Connect
Après avoir activé OpenID Connect pour une grappe OpenSearch, vous devez obtenir le jeton d'accès auprès du fournisseur OpenID Connect que vous utilisez. La procédure d'obtention du jeton d'accès dépend du fournisseur d'identités que vous utilisez. Pour savoir comment procéder pour Oracle Identity Cloud Service, voir Utilisation de l'autorisation par jeton d'accès avec l'API Mes services.
Vous envoyez ensuite le jeton d'accès en tant que jeton porteur dans l'en-tête d'autorisation lors de la connexion à la grappe OpenSearch, comme illustré dans l'exemple suivant de demande GET à l'API d'état de la grappe :
GET /_cluster/health
Authorization: Bearer <access_token>
Plus de ressources
Pour plus d'informations sur OpenID Connect et Oracle Identity Cloud Service, voir :