大规模团队的数据库开发,如何用OceanBase工具快速建立企业级账号体系

前言

为了让数据库开发的安全性与可靠性得以充分保障,数据库开发工具的管控能力显得尤为关键。构建一个健全的账号体系,能够协助开发团队实现对数据库开发工具的全方位管控,从而有效防范各类数据安全隐患,确保数据库开发的顺利进行。

得益于分布式数据库的强大的可扩展性,数据量在快速增长,数据库实例数量在快速增长,行业的从业人员也在快速增长,但是不同角色并不是等比例增长。DBA需要管理越来越多的协同人数,这对数据库开发工具的账号管理系统提出了更高的要求。特别是针对于大规模团队协同的场景,企业通常已经建立员工的账号权限系统,作为一个数据库开发工具如何快速地对账号系统的集成,如何对不同账号、不同部门的人员进行自动化的账号权限管控,就成为了破题的关键。

如何快速集成企业级的账号体系?

随着管理制度的现代性,越来越多的企业已经开始建立自己的账号体系进行团队人员的管理,账号体系可以通过SSO的方式,基于一定的授权认证的协议,进行企业级所有应用的账号管控。熟知的有GitHub、GitLab、Google,开源应用比如CAS,企业级IM比如钉钉等。企业通过在建立统一的账号体系,打通了不同应用之间的壁垒,真正做到了同一个账号登录所有的企业应用。

随着OceanBase ODC V4.2版本的发布,对原本的SSO集成的能力做了产品级的优化,让一个DBA最快不到三分钟,就可以完成SSO系统的集成。

创建SSO应用

我们以GitHub的OAUTH服务为例,实际上ODC支持任意支持标准OAUTH2协议OIDC协议的SSO服务的集成。

配置外部集成配置

在github的设置中创建一个SSO的应用,获取到对应的client ID 和 Client Secrets连同对应授权的Endpoint(不同应该参照各自的SSO服务的文档)填入ODC后,点击测试连接即可获取到当前登录人的登录信息的结构。

通过配置用户字段映射,选择odc的用户名和昵称怎么从SSO的账号体系中获取。外部集成增加了自定义的用户信息的字段的配置,通过解析JsonPath,来获取到所需要的字段。

为了更好的适配丰富多样的SSO服务,ODC针对OAUTH2和OIDC做了很多的兼容性配置,详细的配置可以参照官网的配置文档。

使用第三方登录

保存后配置后重新回到登录页面,即可通过GitHub的账号进行odc的登录了。

如何对账号进行自动权限管理?

仅仅对SSO集成仅仅解决的账号的创建和登录的问题,解决了账号体系搭建的第一块砖。最重要的就是要基于创建的账号自动进行相关的权限、资源的管理。真正做到人员的登录信息一改变,工具内的管控相关的权限也会自动进行相应的权限的赋予。

随着ODC的420的发布,原来的自动授权的能力也得到了增强。针对性的对存量的用户增加了 登陆成功、用户创建、用户修改 三个事件。 用户的信息在上述事件触发的时候,可以直接选择用户的属性进行判断,来决定是否赋予某个权限。比如上述例子中配置的工作区域、公司名称等相关字段进行比较判断。在同一个企业内,这些字段更有可能是部门、职级、角色等相关的字段。DBA可以根据自己企业的账号体系中的字段,进行自动权限规则的配置。

完成自动授权规则的获取之后,就可以为触发对应事件,并且符合相应的匹配规则的用户,就会被赋予相关的权限。这一切权限的赋予都会在用户登录的时候自动进行,做到了DBA一次配置之后,所有的账号权限的管理都可以自动进行,完成了账号集成到权限赋予的闭环。

关于ODC的权限体系,可以参照文章 DBA 日常:规模用户数据库访问权限管理,详细解释了ODC权限体系的建立和设计。

相关推荐
OceanBase数据库官方博客1 天前
OceanBase 中常用的查询语句
sql·oceanbase·分布式数据库·查询语句
OceanBase数据库官方博客4 天前
如何解决JAVA程序通过obloader并发导数导致系统夯住的问题 | OceanBase 运维实践
java·运维·oceanbase·分布式数据库
OceanBase数据库官方博客4 天前
如何配置 Flink CDC 连接 OceanBase 实现数据实时同步
大数据·flink·oceanbase·分布式数据库
OceanBase数据库官方博客4 天前
如何实现主备租户的无缝切换 | OceanBase应用实践
oceanbase·分布式数据库·高可用
靖顺6 天前
【OceanBase 诊断调优】—— ocp上针对OB租户CPU消耗计算逻辑
oceanbase
一名数据库爱好者6 天前
OceanBase 闪回查询
数据库·oceanbase·dba
OceanBase数据库官方博客6 天前
ODC 如何精确呈现SQL耗时 | OceanBase 开发者工具解析
sql·oceanbase·分布式数据库·开发者·生态工具
一名数据库爱好者7 天前
OceanBase单表恢复(4.2.1.8)
adb·oceanbase
靖顺7 天前
【OceanBase 诊断调优】—— OceanBase 数据库统计信息被禁用,状态为 broken 的原因和解决方法
数据库·oceanbase
OceanBase数据库官方博客10 天前
如何在 Ubuntu 上 部署 OceanBase
ubuntu·oceanbase·分布式数据库·安装部署