midpoint源码阅读八(使用示例:多租户用户管理四——示例操作步骤)

本文介绍了midpoint V3.8版本中多租户用户管理的配置步骤与操作流程,包括租户概念、数据存储方案及通过XML配置文件实现多租户管理的具体细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多租户用户管理示例的官网介绍如下:https://wiki.evolveum.com/display/midPoint/Multitenant+User+Management+for+SaaS ,官网的介绍与midpoint V3.8版本的不是很匹配,现记录一下3.8版本的配置步骤。
该示例的名字Mutitenant User Management for SaaS (软件及服务的多租户用户管理),我们先了解一下多租户的概念。

多租户是指软件架构支持一个实例服务多个用户(Customer),每一个用户被称之为租户(tenant),软件给予租户可以对系统进行部分定制的能力,如用户界面颜色或业务规则,但是他们不能定制修改软件的代码。
多租户技术(multi-tenancy technology)实际是一种软件架构技术,它是在探讨与实现如何在多用户的环境下共用相同的系统或程序组件,并且仍可以确保各用户的业务不互相影响。
多租户在数据存储上的三种方案:
1、独立数据库,即一个租户一个数据库
2、共享数据库,隔离数据架构 ,即多个或所有租户共享Database,但是每个租户一个Schema(也可叫做一个user)
3、共享数据库,共享数据架构 ,即租户共享同一个Database、同一个Schema,但在表中增加TenantID多租户的数据字段。

1、Mutitenant User Management for SaaS示例简介

该示例模拟场景:多个租户在midpoint和数据源系统中 管理自己的员工和管理员。
整体操作流程:第一批管理员级用户通过csv文件导入到midpoint中、各自租户的管理员登陆到midpoint上管理自己的员工信息。

该示例的租户通过组织树来表示,如下图:

该租户结构在OpenLDAP中的结构如下:
openldap

本示例用于 租户仅需在midpoint当中管理用户,同时也管理了OpenLDAP中的用户。

2、Mutitenant User Management for SaaS示例操作步骤

midpoint提供了配置文件配置系统的功能,该示例即是通过xml配置文件来实现的该场景。下图是每个配置文件的简单描述
openldap

配置文件的导入过程如下:
1)用midpoint默认的超级管理员(用户名administrator,密码5ecr3t)登陆系统
2)点击 配置—>导入对象,打开导入对象页面,如下图
导入对象
3)在该页面依次导入如下文件
①org-top.xml
②normal-paassword-policy.xml
③lookup-employee-type.xml
④object-template-org.xml
⑤object-template-user.xml
⑥crm-simulation-sync.xml
该示例使用的是3.6版本以前自带的CSVFileConnector,而3.6版本(不含3.6版本)以后则不再自带该Connector,所以我们需要从官网地址下载其connector-csvfile-1.4.2.0.jar文件,并将其放入到 %midpoint.home%\icf-connectors\文件夹中,启动web服务,midpoint将自动将该连接器配置到本地库中,如下图:
connector
crm-simulation-sync.xml修改如下图所示:
crm
⑦openldap-customers.xml
该文件修改如下图所示:
openldap
⑧metarole-org.xml
⑨role-customer-authz-admin、role-customer-authz-enduser.xml、role-customer-basic-admin.xml、role-customer-basic-poweruser.xml、role-customer-basic-user.xml
⑩ sysconfig-readme.txt(修改系统配置-通知)
4)导入初始的租户系统管理员
资源
import
5)资源导入后,创建了各租户的管理员以及,该租户组织结构
组织
用户信息
projection
资源
ldap

本篇仅从操作上介绍该示例,下篇会从配置文件(xml)入手,记录一下,导入csv后一系列的过程在xml中是如何体现的。

参考资源链接:[应用数值方法与MATLAB:工程师和科学家的第三版教程](https://wenku.csdn.net/doc/6hzyvy09d6?utm_source=wenku_answer2doc_content) 在数值分析中,二分法是一种简单而有效的算法,用于寻找连续函数在某区间内根的存在。MATLAB提供了强大的工具和函数库来实现各种数值计算。要使用MATLAB实现二分法求解方程的根,请按照以下步骤操作: 1. 确定目标函数:首先,你需要定义一个连续函数f(x),并确定一个包含根的区间[a, b],其中f(a)和f(b)具有相反的符号,即f(a)*f(b) < 0。 2. 编写二分法函数:在MATLAB中创建一个函数,接受目标函数f、区间[a, b]以及迭代精度tol作为输入参数。函数的伪代码大致如下: ```matlab function root = bisection(f, a, b, tol) if f(a)*f(b) >= 0 error('函数在区间两端没有相反的符号'); end while (b-a)/2 > tol midpoint = (a + b) / 2; if f(midpoint) == 0 break; elseif sign(f(a)) == sign(f(midpoint)) a = midpoint; else b = midpoint; end end root = (a + b) / 2; end ``` 3. 调用函数并显示结果:定义你的函数f(x),然后调用刚才编写的二分法函数来求解根。例如,若要求解方程x^2 - 3 = 0在区间[1, 3]内的根,可以如下操作: ```matlab f = @(x) x^2 - 3; root = bisection(f, 1, 3, 1e-5); fprintf('方程的根为: %f\n', root); ``` 这段代码将输出方程x^2 - 3 = 0在区间[1, 3]内的根的近似值。 通过这个示例,你可以看到MATLAB如何被用来实现数值分析中的基本算法,并解决实际的科学计算问题。为了进一步理解和掌握MATLAB编程以及数值方法的深入应用,推荐使用《应用数值方法与MATLAB:工程师和科学家的第三版教程》。这本书不仅提供了理论知识,还结合了大量的实例和练习题,帮助读者更好地将理论应用于实践。 参考资源链接:[应用数值方法与MATLAB:工程师和科学家的第三版教程](https://wenku.csdn.net/doc/6hzyvy09d6?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风水月

从心底相信自己是成功的第一步

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值