MinIO
MinIO支持使用与OpenID Connect (OIDC)兼容的提供商进行外部身份管理。 本文档介绍了如何配置Casdoor作为身份提供商以支持MinIO。
步骤1:部署Casdoor & MinIO
首先,部署Casdoor。
您可以参考Casdoor官方文档中的服务器安装。
成功部署后,请确保:
- Casdoor 服务器正在 http://localhost:8000 上运行。
- 打开你最喜欢的浏览器,访问 http://localhost:7001,你将看到Casdoor的登录页面。
- 通过输入
admin
和123
来测试登录功能。
接下来,您可以按照以下步骤在您自己的应用中快速实现基于Casdoor的登录页面。
您可以参考这里来部署您的MinIO服务器,以及这里来获取名为mc
的MinIO客户端。
步骤2:配置Casdoor应用程序
创建一个新的Casdoor应用程序,或使用一个已经存在的。
添加您的重定向URL。
添加您想要的提供者并提供任何必要的设置。
在应用设置页面上,您会找到两个值:
Client ID
和Client secret
(如上图所示)。 我们将在下一步中使用这些值。打开你最喜欢的浏览器并访问:http://
CASDOOR_HOSTNAME
/.well-known/openid-configuration 来查看Casdoor的OIDC配置。这个步骤对于MinIO来说是必要的。 由于MinIO需要在JWT中使用一个声明属性作为其策略,您也应在Casdoor中进行配置。 目前,Casdoor 使用
tag
作为配置 MinIO 策略的一种变通方法。您可以在这里找到所有支持的策略。
步骤3:配置MinIO
您可以使用以下命令启动 MinIO 服务器:
导出MINIO_ROOT_USER=minio
导出 MINIO_ROOT_PASSSWORD=minio123
minio server /mnt/export
您可以使用--console-address
参数来配置地址和端口。
接下来,使用MinIO客户端mc
添加一个服务别名。
mc alias set myminio <您的控制台地址> minio minio123
现在,配置MinIO的OpenID Connect。 对于Casdoor,命令将是:
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"
您可以参考官方文档以获取更详细的参数信息。
一旦成功设置,重新启动MinIO实例。
mc 管理服务重启myminio
步骤4:尝试演示!
现在,在浏览器中打开您的MinIO控制台,然后点击使用SSO登录
。
您将被重定向到Casdoor用户登录页面。 成功登录后,您将被重定向到MinIO页面并自动登录。 您现在应该能看到您有权限访问的存储桶和对象。
如果你在不同的端口部署Casdoor的前端和后端,你被重定向的登录页面将在后端端口上,并且它会显示404 not found
。 您可以将端口修改为前端端口。 然后,您可以成功访问Casdoor登录页面。