Configuración de OpenID Connect para un cluster OpenSearch
Configure un cluster OpenSearch para utilizar un proveedor de identidad de Connect OpenID, como Oracle Identity Cloud Service, para la autenticación y la autorización.
Requisitos
- Un cluster OpenSearch basado en la versión 2.3.0 o posterior de OpenSearch. Para los clusters basados en versiones anteriores de OpenSearch, debe actualizar el cluster, consulte OpenSearch Cluster Software Upgrades.
- El modo de seguridad del cluster OpenSearch se establece en ENFORCING. Consulte Updating Cluster Security Mode to ENFORCING.
- Tiene un proveedor de identidad de Connect OpenID, como Oracle Identity Cloud Service, configurado y configurado para su uso.
- Tiene la URL de conexión OpenID para el proveedor de identidad, que es la URL para acceder a los valores de configuración y metadatos de conexión OpenID del proveedor.
Active OpenID con las API de REST del plugin de seguridad OpenSearch
Utilice la API de configuración del plugin de seguridad OpenSearch para activar OpenID Connect para un cluster OpenSearch.
En el siguiente ejemplo se muestra cómo activar OpenID Connect para un cluster, con un ejemplo de URL de conexión OpenID para Oracle Identity Cloud Service. El código también incluye la configuración del modo de seguridad para que se aplique en la llamada de API de configuración.
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
}
}
Para obtener más opciones de configuración de OpenID Connect disponibles para un cluster OpenSearch, consulte OpenSearch - OpenID Connect.
Uso de OpenID Connect
Después de activar OpenID Connect para un cluster OpenSearch, debe obtener el token de acceso del proveedor de Connect OpenID que está utilizando. El procedimiento para obtener el token de acceso depende del proveedor de identidad que esté utilizando. Para obtener información sobre cómo hacerlo para Oracle Identity Cloud Service, consulte Uso de la autorización de token de acceso con la API de Mis servicios.
A continuación, envía el token de acceso como token de portador en la cabecera de autorización al conectarse al cluster OpenSearch, como se muestra en el siguiente ejemplo de una solicitud GET a la API de estado del cluster:
GET /_cluster/health
Authorization: Bearer <access_token>
Más recursos
Para obtener más información sobre OpenID Connect y Oracle Identity Cloud Service, consulte lo siguiente: