keycloak设置自制https证书

一、问题描述

keycloak 初始化admin后,出现HTTPS required 问题,后端也提示

[org.keycloak.events] (executor-thread-7) type=LOGIN_ERROR, realmId=db46046f-b499-40fd-a1e4-94289fcf7a65, clientId=null, userId=null, ipAddress=192.169.1.104, error=ssl_required

出现 ssl_required问题。

查阅官网后,官网说 start-dev 模式默认不启用https,但是我的却有https校验,一头雾水。于是决定生成自制证书,让keycloak可以被https访问到。

 二、解决问题

2.1 环境描述

linux : centos-7

keycloak: 18.0.1

2.2 生成证书

# **生成私钥**:

   openssl genpkey -algorithm RSA -out privateKey.pem -pkeyopt rsa_keygen_bits:2048

   #这将生成一个 RSA 私钥,并将其保存在 `privateKey.pem` 文件中。

# **生成证书签名请求 (CSR)**:

   openssl req -new -key privateKey.pem -out certificate.csr

   #在这个步骤中,您需要提供一些证书信息,如国家、省份、城市、组织等。

# **生成自签名证书**:

openssl x509 -req -days 365 -in certificate.csr -signkey privateKey.pem -out certificate.crt

如果遇到问题,同时推荐使用 mkcert 工具生成证书 

2.3 keycloak配置证书

在 ${keycloak}/conf/keycloak.conf 配置文件中设置

https-certificate-file=/user/project/keycloak-18.0.2/cert/public.pem
https-certificate-key-file=/user/project//keycloak-18.0.2/cert/private-key.pem

2.4 keycloak启动

这样,https就配置成功了 

2.5 可能遇到的问题

1、如果浏览器不能访问,请查看是不是防火墙问题。

2、如果证书有问题,可以使用mkcert生成。

3、如果在start模式下遇到/admin/master/console 空白页,F12控制台报错 frame-src如下,

这个问题调试了会儿,发现是我的hostname配置问题,我的hostname配置了https://127.0.0.1:8443,多了个https,应该配置为127.0.0.1:8443

至此,完工~

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值