Red Hat Single Sign-On 是一种基于开源技术的身份认证和访问控制解决方案,可以帮助组织实现安全的单点登录和授权管理。它基于Keycloak项目开发,提供了强大的身份验证、授权和安全功能。
下载地址:Software Downloads - Red Hat Customer Portal - Access to 24x7 support and knowledge
启动:
- 转到服务器分发的
bin
目录。 -
运行
独立
引导脚本。Linux/Unix$ cd bin $ ./standalone.sh Windows> ...\bin\standalone.bat
端口设置:通过启动参数设置
Linux/Unix
$ cd bin $ ./standalone.sh -Djboss.socket.binding.port-offset=100
Windows
> ...\bin\standalone.bat -Djboss.socket.binding.port-offset=100
Windows Powershell
> ...\bin\standalone.bat -D"jboss.socket.binding.port-offset=100"
控制台: http://localhost:8080/auth。admin/admin
创建域(realm):demo
在该域(realm)中添加用户 demouser1
在该域(realm)中添加客户端:vanilla
客户端详情,注意客户端对应的几个路径,它实际上是和应用系统访问地址对应的,默认的端口是8080,但是通常需要修改,因为Red Hat Single Sign-On和JBoss EAP的默认端口都是8080,到此Red Hat Single Sign-On的配置告一段落。
JBoss EAP 是企业版,另外一个是社区版,不同的是社区用的比较多,网上的技术支持也相对给力:JBoss EAP(Enterprise Application Platform)是一种基于开源的Java应用服务器,由Red Hat公司开发和支持。它是基于Jboss AS(Application Server)构建的,并提供了企业级的支持和服务。
下载地址:Software Downloads - Red Hat Customer Portal - Access to 24x7 support and knowledge
适配器:主要是配合Red Hat Single Sign-On使用Software Downloads - Red Hat Customer Portal - Access to 24x7 support and knowledge
解压后是这样的:把这个三个目录拷贝到JBoss EAP根目录下然后到bin目录执行命令,目的是把对应的配置加上,这样适配器就算装上了。
Linux/Unix
$ ./jboss-cli.sh --file=adapter-elytron-install-offline.cli
Windows
> jboss-cli.bat --file=adapter-elytron-install-offline.cli
接下来就是将客户端的vanilla配置关联到JBoss EAP,目的是让jboss访问Red Hat Single Sign-On认证中心的时候以客户端vanilla的身份访问
具体操作是进Red Hat Single Sign-On控制台将下面的配置添加到JBoss EAP的subsystem中命名空间为xmlns="urn:jboss:domain:keycloak:1.2",官方文档上是1.1但是却是找不到的
JBoss EAP的subsystem配置路径为jboss-eap-7.3\standalone\configuration/standalone.xml
到此,JBoss EAP的配置也告一段落,JBoss EAP的启动为:\jboss-eap-7.3.0\jboss-eap-7.3\bin/standalone.bat
最后一个步就是把官方推荐的web应用部署到JBoss EAP,然后访问Red Hat Single Sign-On认证中心实现单点登录
下载后放入IDE是这样的,
注意keycloak.json这个配置,要和下面的一致
然后就是这个这个web应用跑起来了,mvn clean wildfly:deploy
wildfly这个命令会把项目自动部署到JBoss EAP的,所以只需执行这个命令就可以访问web了,当然前提是要先把JBoss EAP启动起来,不然这个命令会执行失败
访问web:localhost:8080/vanilla/
点击登录后会重定向到下面Red Hat Single Sign-On的登录页面,输入之前添加的用户名和密码后会重定向回web页面,最后补充一下官方文档:入门指南 Red Hat Single Sign-On 7.6 | Red Hat Customer Portal