Configuración de la gestión de acceso e identidad de IBM Cloud Pak foundational services como proveedor de identidades OAuth de OpenShift
La función de gestión de acceso e identidad (IAM, por sus siglas en inglés) de IBM Cloud Pak foundational services proporciona una capacidad de inicio de sesión único para la autenticación de Red Hat® OpenShift® . Para configurar el IAM para que gestione la autenticación de Red Hat OpenShift , primero registre un cliente de OpenID Connect y, a continuación, cree un proveedor de identificación de OpenID Connect utilizando el IAM para la autenticación.
Antes de empezar
Debe tener una versión compatible de Red Hat OpenShift Container Platform con IBM Cloud Pak foundational services instalado, y tener la siguiente información disponible en Red Hat OpenShift y IBM Cloud Pak foundational services:
- El usuario administrador CS_DEFAULT_ADMIN_USERNAME y la contraseña administrador CS_DEFAULT_ADMIN_PASSWORD de la instalación IBM Cloud Pak foundational services .Consejo : Si olvida estos valores, puede recuperarlos con los siguientes comandos de
oc get secret.oc -n ibmplatform-service get secret admin-credential -o jsonpath='{.data.defaultAdminUser}' | base64 --decode oc -n ibmplatform-service get secret admin-credential -o jsonpath='{.data.defaultAdminPassword}' | base64 --decodeCS_DEFAULT_ADMIN_USERNAME » es el usuario administrador predeterminado para el proveedor de identidad « OpenID Connect» para « IBM -IAM» y debe ser único para no entrar en conflicto con un nombre de usuario duplicado para otro proveedor de identidad.
- El panel de control de IBM Cloud Pak foundational services URL.Consejo : Si olvida el valor, puede recuperar el URL con el siguiente comando
oc get route.oc -n kube-system get route icp-console -o=jsonpath={.spec.host} - La consola Red Hat OpenShift URL.Consejo : Si olvida el valor, puede recuperar el URL con el siguiente comando
oc get route.oc -n openshift-console get route console -o=jsonpath={.spec.host} - El certificado raíz de la autoridad de certificación emisora icp-console.pem desde el panel de control de IBM Cloud Pak foundational services URL.Consejo : Si olvida el valor, certifíquelo con el siguiente comando
oc get secret.oc -n kube-system get secret icp-management-ingress-tls-secret -o=jsonpath='{.data.tls\.crt}' | base64 --decode | tee -a icp-console.pem
Registrar el cliente de OpenID Connect
Para registrar un cliente de OpenID Connect, primero cree un recurso personalizado (CR) que especifique la información del cliente y añádalo al clúster.
- Para registrar el recurso personalizado del Cliente, cree un archivo llamado ocpclient.yaml.
apiVersion: oidc.security.ibm.com/v1 kind: Client metadata: namespace: default name: ocpclient spec: secret: ocpclientsecret oidcLibertyClient: post_logout_redirect_uris: - https://console-openshift-console.apps.example.com:443 trusted_uri_prefixes: - https://console-openshift-console.apps.example.com:443 redirect_uris: - https://oauth-openshift.apps.example.com/oauth2callback/IBM-IAM - Modifique el contenido de ocpclient.yaml para que coincida con el entorno de su clúster de Red Hat OpenShift .
- Establezca los valores de los parámetros post_logout_redirect_uris y trusted_uri_prefixes en su consola Red Hat OpenShift URL con el puerto 443. Por ejemplo:
https://console-openshift-console.apps.example.com:443 - Establezca el valor del parámetro redirect_uris en
https://oauth-openshift.apps.example.com/oauth2callback/IBM-IAM(dondeexample.comcoincide con su entorno).
Nota :IBM-IAMes el nombre del proveedor de identidad de Connect ( OpenID ) que se crea en la sección Crear el proveedor de identidad de Connect ( OpenID ) para la autenticación de IAM. - Establezca los valores de los parámetros post_logout_redirect_uris y trusted_uri_prefixes en su consola Red Hat OpenShift URL con el puerto 443. Por ejemplo:
- Para crear el recurso personalizado del cliente, ejecute el siguiente comando
oc create.oc create -f ocpclient.yamlDebería ver elclient.oidc.security.ibm.com/ocpclient created.
Nota : Esto genera el secreto de cliente (ocpclientsecret), que almacena el ID de cliente y el secreto de cliente. - Para verificar que el registro del cliente se ha realizado correctamente, ejecute el siguiente comando
oc get.oc get Client ocpclient -n default NAME SECRET READY AGE ocpclient ocpclientsecret True 7sDebería ver el estado del cliente de READY igual aTrue.
- Para obtener el CLIENT_ID y el CLIENT_SECRET del secreto
ocpclientsecretque se utilizará al crear el proveedor de identidad, ejecute los siguientes comandos:oc -n default get secret ocpclientsecret -o jsonpath='{.data.CLIENT_ID}' | base64 --decodeoc -n default get secret ocpclientsecret -o jsonpath='{.data.CLIENT_SECRET}' | base64 --decode
Crear el proveedor de identidad de OpenID Connect para la autenticación IAM
Para crear un proveedor de identidad, primero cree un recurso personalizado (CR) que especifique el proveedor de identidad y añádalo al clúster.
Para configurar el proveedor de identidad de OpenID Connect desde la consola de Red Hat OpenShift :
- Seleccione .
- En Configuración de clúster, seleccione la pestaña Configuración global y el Recurso de configuración de OAuth.
- En Detalles de OAuth, desplácese hacia abajo hasta la sección Proveedores de identidad.
- Haga clic en Añadir y seleccione Conectar a Internet ( OpenID ).
- Especifique los valores siguientes para el proveedor de identidad de OpenID Connect para IAM:
- Nombre : IBM -IAM
- ID de cliente :
CLIENT_IDque recuperó anteriormente. - Secreto del cliente :
CLIENT_SECRETque recuperó anteriormente. - Emisor URL :
<IBM_Cloud_Pak_foundational_services_dashboard_URL>/oidc/endpoint/OP`. Por ejemplo:https://icp-console.apps.example.com/oidc/endpoint/OP - En Más opciones :
- Archivo CA : navegue para importar el archivo de autoridad de certificación del emisor ( icp-console.pem ) que recuperó en la sección Antes de comenzar.
- Ámbitos adicionales : perfil
- Pulse Add (Añadir) para crear el proveedor de identidad de OpenID Connect para IAM.
Inicie sesión en la consola de Red Hat OpenShift utilizando IAM
La próxima vez que se presente la página de inicio de sesión de la consola Red Hat OpenShift , permitirá al usuario seleccionar IBM-IAM como proveedor de identidad y se mostrará la página de inicio de sesión IBM Cloud Pak para solicitar al usuario su nombre de usuario y contraseña. Los valores de los parámetros CS_DEFAULT_ADMIN_USERNAME y CS_DEFAULT_ADMIN_PASSWORD pueden utilizarse para iniciar sesión como usuario administrativo predeterminado.