单点登录等功能该用 Keycloak 这种开源框架实现吗?

news2024/12/25 9:26:21


Keycloak 是一个开源软件产品,旨在为现代的应用程序和服务,提供包含身份管理和访问管理功能的单点登录工具。

开源软件虽然能够定制和修改源代码,还可以降低开发成本,但是 Keycloak 实现起来还是有不少问题:

  • 用户迁移
    Keycloak 不能实现无需修改密码进行用户迁移。
  • Webhooks 和事件
    Keycloak 不支持 Webhooks,但可以通过复杂的扩展 SPI 来定制,实现起来很复杂。
  • 用户体验 UI/UE
    从用户体验角度看,Keycloak 控制台是比较传统的工业风格,在交互体验上偏老旧,用户操作不友好。
  • 默认支持的标准认证协议
    Keycloak 目前只支持 OIDC 和 SAML2.0 协议,而不支持 OAuth 2.0, OIDC,SAML, AD/LDAP, WS-Fed 等认证协议。
  • 安全补丁
    Keycloak 作为开源软件,更新速度比较慢。

总的来说,Keycloak 作为一款开源软件,在简单的场景下可以做到开箱即用,但是如果想要配置更加复杂的场景,其操作难度和工作量也会正向递增。

往大了讲,面对着复杂的商业环境和市场竞争,开源软件本身就存在许多共性的问题。

首先,开源软件并不是完全免费的。开发者根据自己的意愿开发产品并开放源代码,但这不是消费者的需求,从而导致用户体验降低,需要花费额外的时间或费用获得技术帮助。

其次,开源软件的安全性低。当一个开源组件存在漏洞时,这个漏洞会被迅速公布,以便开发者可以执行必要的修复。然而,黑客也可以看到这些信息,他们不需要付出任何努力,就能了解哪些组件易受攻击以及如何进行攻击,这不免会对用户造成潜在的威胁。

还记得去年年底,一个堪称核弹级的漏洞被曝出。

Apache Log4j-2 是一个开源的日志记录组件,使用范围广泛。然而,其中却存在 JNDI 注入漏洞。当程序将用户输入的数据进行日志记录时,即可触发此漏洞。一旦成功利用此漏洞,就可以在目标服务器上远程执行任意代码。

再次,由于开源软件可以在互联网上免费得到,因此带来大量用户对 bug 修复的建议。这可能会导致大量的补丁,使得源代码更加复杂,甚至出现结构问题,而这些问题往往都会导致高额的维修费用,产生过高的维护成本。

况且,没有一条裤子适合所有人,没有一款软件适用于所有企业。
哪怕如 Keycloak 这样基于商业应用友好的 Apache Licence 协议的开源产品,要想商用仍然有一些工作要做,效率很低。

实际上,针对企业的软件解决方案和服务永远比软件产品本身更重要。

像 Keycloak 一样做身份管理和访问管理的,还有不少企业级的产品。

如果偏向于电商,那可以考虑阿里云,阿里云的最早一批用户都是基于淘宝生态的 ISV 服务商。
如果偏向于文娱,可以考虑腾讯云,他们在这个行业积累的资源、提供的解决方案和产品组件更加合适有类似需求的用户。

国内两大头部云厂商,云服务器性能都还是不错的,数据可靠性倒是有一些坊间传言说有丢失用户数据的…

而就中小企业来说,随着企业业务的发展,OA 系统、财税系统、CRM 系统等各类系统只增不减,身份认证不再是件小事。

又想上云,又想考虑性价比的话,IDaaS 中不乏 Authing 这种专业做单点登录的厂商,可能更符合这类企业级的需求。腾讯云的普惠上云价格也还可以,轻量应用服务器这种比阿里便宜。

不过,每个企业的实际需求五花八门。Authing 针对企业级用户提供私有化部署服务,提供一键部署安装包,能够将 Authing 秒级部署到企业内部服务器。

总之,找到适合自己的专业产品,顺畅且简单,集成所用的时间也更少。如果企业想要快速提高生产效率、增强安全性、推动业务发展,还是得找企业级的产品。

点击链接,立刻了解 Authing!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/23387.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python实现五子棋游戏(pygame版)(附零基础学习资料)

前言 使用python实现pygame版的五子棋游戏; 环境:Windows系统python3.8.0 (文末送读者福利) 游戏规则: 1、分两位棋手对战,默认黑棋先下;当在棋盘点击左键,即在该位置绘制黑棋&a…

APT 攻击溯源方法

概述: 当今世界正值百年未有之大变局,网络空间成为继陆、海、空、天之后的第五大疆域,安全威胁也随之延伸至网络空间。没有网络安全就没有国家安全,在新时代网络空间安全已经上升至国家安全的高度。高级持续性威胁(Advanced Pers…

yolov1模型

目录 一、机器视觉算法 二、yolov1 预测阶段(向前推断)​ 三、预测阶段的后处理 (声明:本文章是在学习他人视频的学习笔记,图片出处均来自该up主,侵权删 视频链接:为什么要学YOLOV1_哔哩哔哩_b…

拿铁DHT-PHEV座舱智能程度体验笔记(超详细)

评测时间: •第一次 2022年10月1日-10月7日 •第二次 2022年10月25日 评测配置: •两驱超大杯 18.98万元好评功能盘点 座舱芯片及内存:高通骁龙 8155,算力8TOPS,存储8GB,内存12G,一流的配置。 四…

领悟《信号与系统》之 连续时间信号的时域分析法

连续时间信号的时域分析法一、LTI 连续系统的响应1. LTI 微分方程的建立与求解2. LTI 连续系统的零输入响应与零状态响应1. 零输入响应2. 零状态响应3. 全响应二、冲激响应和阶跃响应1. 冲激响应2. 阶跃响应三、卷积积分及其性质1. 任意信号的分解2. 任意信号作用下的零状态响应…

一个合格的中级前端工程师需要掌握的 28 个 JavaScript 技巧

1. 判断对象的数据类型 使用 Object.prototype.toString 配合闭包,通过传入不同的判断类型来返回不同的判断函数,一行代码,简洁优雅灵活(注意传入 type 参数时首字母大写) 不推荐将这个函数用来检测可能会产生包装类型…

【跨境电商】6种实用有效的策略帮助改善客户沟通

关键词:跨境电商卖家、客户沟通 1.什么是客户沟通? 客户沟通是公司与消费者的互动。品牌识别接触点并通过各种渠道(例如电话、电子邮件和实时聊天)在每个接触点建立关系。公司可以通过始终如一的参与并将消费者置于这种互动的中心…

【Redis】内存回收:内存淘汰策略

【Redis】内存回收:内存淘汰策略 文章目录【Redis】内存回收:内存淘汰策略一、Redis内存回收-过期key处理二、Redis内存回收-内存淘汰策略一、Redis内存回收-过期key处理 如果你发现,平时在操作 Redis 时,并没有延迟很大的情况发生…

Watermelon Book(二)线性模型

文章目录线性回归对数几率回归线性类别分类多分类学习类别不平衡问题基本形式:若给定 d个属性描述的示例x(x1,x2,x3…xd),则线性模型试图学得一个 通过属性的线性组合来进行预测。f(x)W1*X1W2*X2...Wn*Xnw(T)xbw(w1;w2;w3;wn;)线性模型形式简单、易于建模…

[附源码]java毕业设计校园共享单车系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

排序算法——七种排序算法汇总,详细

文章目录排序排序的概念及应用一、直接插入排序1. 简介2.动图展示3.过程4.代码5.总结二、希尔排序1.简介2.过程3.代码4.总结三、选择排序1.简介2.代码3.总结四、堆排序1.代码2.总结五、冒泡排序1.过程2.代码3.总结六、快速排序1.简介2.过程3.两种优化快速排序的思想4.代码-递归…

【附源码】计算机毕业设计JAVA学生校内兼职管理平台

【附源码】计算机毕业设计JAVA学生校内兼职管理平台 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: JAVA…

什么是 SSH 密钥? 生成、身份验证、密钥对信息等

SSH 密钥不仅可以提高安全性,还可以实现当今企业所需的大规模连接流程、单点登录 (SSO) 以及身份和访问管理的自动化。 什么是 SSH 密钥? SSH 密钥是安全外壳 (SSH) 协议中使用的安全访问凭证。 SSH 密钥使用基于公钥基础设施 (PKI) 技术(数…

Android12窗口模糊(二)高斯模糊API源码解析

前言 在 Android 12 中,提供了一些用于实现窗口模糊处理效果(例如背景模糊处理和模糊处理后方屏幕)的公共 API。窗口模糊处理或跨窗口模糊处理用于模糊处理给定窗口后方的屏幕。 有两种窗口模糊处理方式,可用于实现不同的视觉效果…

不小心清空了回收站怎么恢复,回收站删除的东西可以恢复吗

不小心清空了回收站怎么恢复?回收站是操作系统提供的一个非常实用的功能,专门为用户保存从电脑硬盘删除的各种数据,因而很多时候我们都会用到回收站,它能够保存各种数据,我们也能够在里面恢复自己想要的数据&#xff0…

Flutter组件--AppBar相关属性

AppBar介绍 AppBar是基于Material Design设计风格的应用栏,一般使用在Scaffold内部,作为顶部导航栏。 为什么需要AppBar 1、因为导航栏里面一般由左侧功能键(返回键、菜单键)、标题、右侧功能键组成,而AppBar里面内置…

django的使用步骤详细

一、安装django pip install django 二、创建django项目 放django文件的的文件路径上输入cmd进入终端输入下面的命令 django-admin startproject 项目名称 三、app的创建 进入创建好的项目里面输入一下的命令 python manage.py startapp app名称 四、注册app 五、编写U…

计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析(PCA)

计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析🏳️‍🌈 文章目录计算机视觉:基于Numpy的图像处理技术(二):图像主成分分析:rainbow_flag:图像主成分…

企业数据泄漏事件频发,如何防止企业数据泄漏?

2022年即将接近尾声,这一年受疫情和国际经济形势影响,各行各业都不太好过,同样互联网领域发展不平衡、规则不健全、秩序不合理等问题日益凸显,虽然互联网的快速发展为企业数字化转型提供了支撑,但是互联网发展进程中“…

Android App开发动画特效之利用滚动器实现平滑翻页(附源码和演示 简单易懂)

需要图片集请点赞关注收藏后评论区留言~~~ 一、利用滚动器实现平滑翻页 在日常生活中,平移动画比较常见,有时也被称为位移动画,左右翻页和上下滚动其实都用到了平移动画,譬如平滑翻书的动画效果,就是位移动画的一种应…