Saltar al contenido principal

MinIO

MinIO soporta la gestión de identidad externa usando un proveedor compatible con OpenID Connect (OIDC). Este documento cubre la configuración de Casdoor como un proveedor de identidad para soportar MinIO.

Paso 1: Desplegar Casdoor & MinIO

Primero, despliegue Casdoor.

Puede referirse a la documentación oficial de Casdoor para Instalación del Servidor.

Después de un despliegue exitoso, asegúrese de que:

  • El servidor de Casdoor está corriendo en http://localhost:8000.
  • Abra su navegador favorito y visite http://localhost:7001 para ver la página de inicio de sesión de Casdoor.
  • Pruebe la funcionalidad de inicio de sesión ingresando admin y 123.

A continuación, puede implementar rápidamente una página de inicio de sesión basada en Casdoor en su propia aplicación siguiendo estos pasos.

Puede referirse a aquí para desplegar su servidor MinIO y aquí para el cliente de MinIO llamado mc.

Paso 2: Configurar la Aplicación Casdoor

  1. Cree una nueva aplicación Casdoor o use una existente.

  2. Añada su URL de redirección.Configuración de la Aplicación Casdoor

  3. Añada el proveedor que desee y proporcione los ajustes necesarios.

    En la página de configuración de la aplicación, encontrará dos valores: Client ID y Client secret (como se muestra en la imagen de arriba). Usaremos estos valores en el siguiente paso.

    Abra su navegador favorito y visite: http://CASDOOR_HOSTNAME/.well-known/openid-configuration para ver la configuración OIDC de Casdoor.

  4. Este paso es necesario para MinIO. Como MinIO necesita usar un atributo de reclamación en JWT para su política, también debería configurarlo en Casdoor. Actualmente, Casdoor usa tag como una solución temporal para configurar la política de MinIO.

    Configuración de la Política de MinIO

    Puede encontrar todas las políticas soportadas aquí.

Paso 3: Configurar MinIO

Puede iniciar un servidor MinIO usando los siguientes comandos:

export MINIO_ROOT_USER=minio
export MINIO_ROOT_PASSWORD=minio123
minio server /mnt/export

Puede usar el parámetro --console-address para configurar la dirección y el puerto.

A continuación, añada un alias de servicio usando el cliente MinIO mc.

mc alias set myminio <Su dirección de consola> minio minio123

Ahora, configure OpenID Connect de MinIO. Para Casdoor, el comando será:

mc admin config set myminio identity_openid config_url="http://CASDOOR_HOSTNAME/.well-known/openid-configuration" client_id=<client id> client_secret=<client secret> claim_name="tag"

Puede referirse al documento oficial para más parámetros detallados.

Una vez configurado con éxito, reinicie la instancia de MinIO.

mc admin service restart myminio

Paso 4: ¡Pruebe la demo!

Ahora, abra su consola MinIO en el navegador y haga clic en Login with SSO.

Será redirigido a la página de inicio de sesión de usuario de Casdoor. Tras un inicio de sesión exitoso, será redirigido a la página de MinIO e iniciará sesión automáticamente. Ahora debería ver los buckets y objetos a los que tiene acceso.

precaución

Si despliega el frontend y el backend de Casdoor en diferentes puertos, la página de inicio de sesión a la que será redirigido estará en el puerto del backend y mostrará 404 not found. Puede modificar el puerto al del frontend. Entonces podrá acceder a la página de inicio de sesión de Casdoor con éxito.