-
前提条件 请确保您已拥有
OneAccess 管理门户的访问权限。 请确保您已实现通过OneAccess免密登录华为云。如需配置请参考通过OneAccess免密登录单个华为云账号(SAML-虚拟用户SSO)或者通过OneAccess免密登录华为云(OIDC)。 请确保您已在OneAccess实现
WeLink 认证源配置,如需配置,请参考配置WeLink认证源。 请确保您已拥有WeLinkPC端账号,已拥有WeLink开放平台账号管理员权限。
-
OneAccess最佳实践汇总 本文汇总了基于
应用身份管理 服务 OneAccess中常见应用场景的操作实践,为每个实践提供详细的方案描述和操作指导,帮助用户轻松在不同应用场景中使用OneAccess。 表1 集成身份源最佳实践一览表 最佳实践 说明 集成钉钉身份源 OneAccess支持通过钉钉身份源导入用户和组织信息,实现OneAccess实时同步钉钉身份源中用户和组织信息。 本文为您介绍OneAccess集成钉钉身份源的方法。 集成企业微信身份源 OneAccess支持通过企业微信身份源导入用户和组织信息,实现OneAccess实时同步企业微信身份源中用户和组织信息。 本文为您介绍OneAccess集成企业微信身份源的方法。 集成AD身份源 OneAccess支持通过AD身份源导入用户和组织信息,实现OneAccess实时同步AD身份源中用户和组织信息。OneAccess集成企业AD,支持LDAPv3协议。 集成LDAP身份源 OneAccess支持通过LDAP身份源导入用户和组织信息,实现OneAccess实时同步LDAP身份源中用户和组织信息。OneAccess集成企业LDAP,支持LDAPv3协议。 集成飞书身份源 OneAccess支持通过飞书身份源导入用户和组织信息,实现OneAccess实时同步飞书身份源中用户和组织信息。 本文为您介绍OneAccess集成飞书身份源的方法。 集成薪人薪事身份源 OneAccess支持通过薪人薪事身份源导入用户和组织信息,实现OneAccess实时同步薪人薪事身份源中用户和组织信息。 本文为您介绍OneAccess集成薪人薪事身份源的方法。 集成泛微OA_E9身份源 OneAccess支持泛微OA-E9身份源导入用户和组织机构信息至OneAccess平台,实现OneAccess实时同步泛微OA-E9身份源中用户和组织信息。 本文为您介绍OneAccess集成泛微OA-E9身份源的方法。 表2 集成企业应用最佳实践一览表 最佳实践 说明 使用OneAccess用户门户登录华为云 华为云支持基于SAML、OIDC协议的单点登录,企业管理员在华为云和OneAccess进行配置后,普通用户登录OneAccess用户门户,即可免密进入华为云Console系统或者是某个具体的华为云应用。 通过SAML协议单点登录至应用 SAML即安全断言标记语言(Security Assertion Markup Language),是OASIS安全服务技术委员会的一个产品,是基于XML的开源标准数据格式。SAML可以解决Web端应用系统的单点登录(SSO)需求,在不同的安全域(security domain)之间交换认证和授权数据。 通过OAuth2.0协议单点登录至应用 OAuth2.0(开放授权)是一个开放标准,允许用户授权第三方应用访问其存储在资源服务器上的信息,而不需要将用户名和密码提供给第三方应用。 通过OIDC协议单点登录至应用 OIDC是OpenID Connect的简称,是一个基于OAuth 2.0协议的身份认证标准协议。关于OIDC的详细描述请参见欢迎使用OpenID Connect。 本文主要介绍OneAccess以OIDC协议集成应用的方法。 通过CAS协议单点登录至应用 CAS是一个基于HTTP2、HTTP3的协议,要求每个组件都可以通过特定的URL访问。通过CAS协议将OneAccess作为身份服务提供商,使第三方应用可以读取OneAccess的用户账号数据。支持CAS1.0、CAS2.0、CAS3.0三种协议。 以插件代填的方式集成应用 OneAccess可在PC端集成不支持标准协议(OAuth2、SAML、OIDC、CAS)且不可改造的应用。 本文主要介绍OneAccess以插件代填的方式集成应用。 WeLink使用OneAccess进行二次认证 OneAccess支持和WeLink的组织SSO认证功能结合,实现WeLink登录时,调用OneAccess进行二次认证,用户使用更安全。 本文主要介绍OneAccess以及WeLink实现二次认证的配置方法。 单点登录至云速邮箱 云速邮箱是华为提供的SaaS邮箱服务,支持通过OAuth协议对接OneAccess系统,实现通过OneAccess单点登录的功能。 本文主要介绍OneAccess以OAuth协议集成云速邮箱的方法。 单点登录至观远BI 观远BI是观远数据提供的数据接入、智能ETL、可视化、大屏、移动BI等一站式解决方案业务,支持通过OAuth协议对接OneAccess系统,实现通过OneAccess单点登录的功能 本文主要介绍OneAccess以OAuth协议集成观远BI的方法。 单点登录至泛微e-cology 泛微e-cology是泛微公司为中大型组织创建全新的高效协同办公环境,支持通过OAuth协议对接OneAccess系统,实现通过OneAccess单点登录的功能。 本文主要介绍OneAccess以OAuth协议集成泛微e-cology的方法。 表3 同步企业数据最佳实践一览表 最佳实践 说明 通过SCIM协议同步数据至Atlassian SCIM(System for Cross-domain Identity Management),主要用于多租户的云应用身份管理。SCIM 2.0建立在一个对象模型上,所有SCIM对象都继承Resource,它有id、externalId和meta属性,RFC7643定义了扩展公共属性的User、Group和EnterpriseUser。 本文主要介绍OneAccess以SCIM协议同步用户至Atlassian的方法。 通过LDAP协议同步数据 LDAP(Lightweight Directory Access Protocol)即轻量目录访问协议。它是一种树状结构的组织数据,可以简单理解成一个存储用户和组织信息的树形结构数据库。单点登录是LDAP的主要使用场景之一,即用户只在公司计算机上登录一次后,便可以自动在公司内部网上登录。 同步数据至钉钉 把OneAccess中的组织和人员数据同步到钉钉,实现数据从OneAccess到钉钉的流转。 同步数据至WeLink 把OneAccess中的组织和人员数据同步到WeLink,实现数据从OneAccess到WeLink的流转。 将AD域数据同步到钉钉 OneAccess可以全面打通AD到钉钉的身份数据同步链路:定时同步AD域数据,自动变更钉钉通讯录数据。通过该能力,企业可以将AD作为传统的身份管控来源,并自动地向钉钉以及其他下游应用同步身份数据,实现“一处修改,处处生效”的效果。 将AD域数据同步到WeLink OneAccess可以全面打通AD到WeLink的身份数据同步链路:定时同步AD域数据,自动变更WeLink通讯录数据。通过该能力,企业可以将AD作为传统的身份管控来源,并自动地向WeLink以及其他下游应用同步身份数据,实现“一处修改,处处生效”的效果。 表4 集成认证源最佳实践 最佳实践 说明 内置认证源 本文为您介绍通过FIDO2认证源(人脸、指纹等生物认证)来登录OneAccess平台集成的应用系统。您可以在OneAccess平台中配置FIDO2认证源,在登录页面选择FIDO2登录方式登录各应用系统,从而实现单点登录的效果,在给用户带来更简易便捷的登录方式的同时提供更安全可靠的登录体验。 微信认证登录 微信认证登录是用户以微信为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置微信作为认证源,用户可以通过微信认证登录各应用系统以及实现应用系统间单点登录效果,为企业用户带来更简易便捷的登录方式和更好的用户体验。 支付宝认证登录 支付宝认证登录是用户以支付宝为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置支付宝作为认证源,用户可以通过支付宝认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 微博认证登录 微博认证登录是用户以微博为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置微博作为认证源,用户可以通过微博认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 QQ认证登录 QQ认证登录是用户以QQ为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置QQ作为认证源,用户可以通过QQ认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 钉钉认证登录 钉钉认证登录是用户以钉钉为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置钉钉作为认证源,用户可以通过钉钉认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 WeLink认证登录 华为云WeLink,源自华为内部实践,为企业打造联接团队、设备、业务、知识的全联接数字化工作平台,构建企业专属的安全、开放、智能的工作空间,助力企业数字化转型。OneAccess平台支持配置华为云WeLink作为认证源,用户可以通过华为云WeLink认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 企业微信认证登录 企业微信认证登录是用户以企业微信为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置企业微信作为认证源,用户可以通过企业微信认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 飞书认证登录 飞书认证登录是用户以飞书为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置飞书作为认证源,用户可以通过飞书认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 泛微eteams认证登录 泛微eteams认证登录是用户以泛微eteams为认证源安全登录第三方应用或者网站,为方便企业用户的认证登录,OneAccess平台支持配置泛微eteams作为认证源,用户可以通过泛微eteams认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 SAML认证登录 为方便企业用户的认证登录,OneAccess平台支持配置SAML协议作为认证源,用户可以通过SAML协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 OIDC认证登录 为方便企业用户的认证登录,OneAccess平台支持配置OIDC协议作为认证源,用户可以通过OIDC协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 OIDC是OpenID Connect的简称,是一个基于OAuth 2.0协议的身份认证标准协议。关于OIDC的详细描述请参见欢迎使用OpenID Connect。 CAS认证登录 CAS是一个基于HTTP2、HTTP3的协议,要求每个组件都可以通过特定的URL访问。通过CAS协议将OneAccess作为服务提供商,使第三方应用的用户账号数据可以访问OneAccess。支持CAS1.0、CAS2.0、CAS3.0三种协议。 CAS 协议涉及两个主体。两个主体通过用户浏览器进行信息交换。如 CAS Client可以返回带参数的重定向,将信息转发给CAS Server。登录验证成功后CAS Server会返回CAS Client一个包含用户信息的XML, CAS Client验证用户信息后会返回给用户访问资源。 CAS Client:CAS客户端,资源提供方,如第三方应用。 CAS Server:CAS服务端,身份认证提供方,如OneAccess认证服务。 为方便企业用户的认证登录,OneAccess平台支持配置CAS协议作为认证源,用户可以通过CAS协议认证登录各应用系统以及实现应用系统间单点登录效果,为企业用户带来更简易便捷的登录方式和更好的用户体验。 OAuth认证登录 OAuth(开放授权)是一个开放标准,允许用户授权第三方应用访问其存储在资源服务器上的信息,而不需要将用户名和密码提供给第三方应用。 为方便企业用户的认证登录,OneAccess平台支持配置OAuth协议作为认证源,用户可以通过OAuth协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 Kerberos认证登录 Kerberos是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。具体请参考https://web.mit.edu/kerberos。 AD(Active Directory),即活动目录。您可以将AD简单理解成一个数据库,其存储有关网络对象的信息,方便管理员和用户查找所需信息。 SPN(Service Principal Name),即服务主体名称。是服务实例的唯一标识符。 在Kerberos认证过程中,使用SPN将服务实例与服务登录账号关联。所以,必须在内置计算机账户或用户账户下为服务器注册SPN。对于内置账户,SPN会自动注册。如果需要在域用户账户下运行服务,必须要为使用的账户手动注册SPN。 为方便企业用户的认证登录,OneAccess平台支持配置Kerberos协议作为认证源,用户可以通过Kerberos协议认证登录各应用系统,为企业用户带来更简易便捷的登录方式和更好的用户体验。 AD认证登录 AD全称Active Directory,即活动目录。您可以将AD简单理解成一个数据库,其存储有关网络对象的信息,方便管理员和用户查找所需信息。 为方便企业用户的认证登录,OneAccess通过LDAP协议把认证指向AD域,AD通过认证后,根据AD返回的用户属性与OneAccess用户关联属性做匹配校验,验证通过即可登录OneAccess。 LDAP认证登录 LDAP(Lightweight Directory Access Protocol),即轻量目录访问协议。 它是一种树状结构的组织数据,可以简单理解成一个存储用户和组织信息的树形结构数据库。单点登录是LDAP的主要使用场景之一,即用户只在公司计算机上登录一次后,便可以自动在公司内部网上登录。 表5 其他最佳实践一览表 最佳实践 说明 授权
IAM 用户访问OneAccess实例管理门户 IAM用户是账号在IAM中创建的用户,是云服务的使用人员,具有独立的身份凭证(密码和访问密钥),根据账号授予的权限使用资源。 OneAccess支持IAM用户通过华为云访问服务实例,方便企业管理员安全的控制OneAccess服务和资源的访问权限。 企业API使用 OneAccess提供第三方API的授权管理功能,API提供者将API配置到OneAccess之后,API消费者在使用API之前需要先到OneAccess获取鉴权Token,在使用API时携带该鉴权Token,API提供者根据鉴权Token判断是否可以提供服务,用以实现API的授权管理功能。 用户登录二次认证配置 OneAccess支持用户登录时进行二次认证的功能,提供更为安全的保障,本文以用户门户为例,为您介绍如何实现二次认证的配置以及使用。
-
前提条件 请确保您已拥有OneAccess管理门户的访问权限。 请确保您已实现通过OneAccess免密登录华为云。如需配置请参考通过OneAccess免密登录单个华为云账号(SAML-虚拟用户SSO)或者通过OneAccess免密登录华为云(OIDC)。 请确保您已在OneAccess实现飞书认证源配置,如需配置,请参考配置飞书认证源。 请确保您已拥有飞书PC端账号,已拥有飞书开放平台账号管理员权限。
-
续费与退订实例 购买OneAccess实例,只有包年/包月一种计费模式,当购买的OneAccess实例到期后,请在OneAccess华为云控制台单击“续费”进行续费操作,也可在管理控制台续费管理页面进行续费操作,详细操作请参考续费管理。 客户购买包年/包月资源后,如需停止使用,请在OneAccess控制台,单击“退订”执行退订操作。退订资源实例包括资源续费部分和当前正在使用的部分,退订后资源将无法使用。退订资源实例需收取手续费。可在OneAccess华为云控制台单击“退订”进行退订实例操作
-
云桥部署包更新日志 下表为云桥部署包更新日志。 版本号 更新内容 V24.9.1.2 优化了一些已知问题。 V24.5.1.1 升级JDK版本到17。 V23.12.1.1 优化了一些已知问题。 V23.6.1.0 支持使用更安全的安全随机数。 V23.2.1.0 支持LDAP认证源及启动日志优化。 V22.11.1.0 新增功能:增加签名校验及优化日志打印。 V22.6.1.0 新增功能:管理员通过管理门户查看云桥客户端运行日志的能力。 V22.3.1.0 针对AD身份源Agent功能进行优化。 V21.9.2.0 新增看门狗机制。 V21.9.1.0 云桥重连机制优化。 优化了一些已知问题。
-
获取云桥软件部署包 表1 云桥软件部署包 软件包名称 获取途径 cloudAgent-*.zip 云桥身份源包: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-identitySource-24.9.1.2.zip 云桥身份源包校验文件: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-identitySource-24.9.1.2.zip.sha256 云桥认证源包: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-authSource-24.9.1.2.zip 云桥认证源包校验文件: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-authSource-24.9.1.2.zip.sha256 云桥包下载地址是不带sha256后缀结尾的链接,带sha256后缀结尾的下载链接为对应软件包的校验文件。
-
校验云桥Agent软件包完整性 文中软件包版本号为示例,请以实际为准。 使用PuTTY/FTP等工具连接待部署服务器,以root用户登录待部署服务器,使用SFTP工具将云桥Agent软件包和对应的SHA256文件上传到待部署服务器,执行ll查看已上传的软件包和校验文件。 [root@cluster-test-eq9ku xxx]# ll
total 75724
-rw-r--r-- 1 root root 32696037 Dec 1 16:12 cloudAgent-authSource-24.5.1.1.zip
-rw-r--r-- 1 root root 101 Dec 1 16:11 cloudAgent-authSource-24.5.1.1.zip.sha256
-rw-r--r-- 1 root root 44832098 Dec 1 16:12 cloudAgent-identitySource-24.5.1.1.zip
-rw-r--r-- 1 root root 105 Dec 1 16:11 cloudAgent-identitySource-24.5.1.1.zip.sha256 执行以下命令校验网关软件包完整性,当回显信息显示OK,表明完整性校验成功。 sha256sum -c cloudAgent-identitySource-24.5.1.1.zip.sha256 [root@cluster-test-eq9ku xxx]# sha256sum -c cloudAgent-identitySource-24.5.1.1.zip.sha256
cloudAgent-identitySource-24.5.1.1.zip: OK sha256sum -c cloudAgent-authSource-24.5.1.1.zip.sha256 [root@cluster-test-eq9ku xxx]# sha256sum -c cloudAgent-authSource-24.5.1.1.zip.sha256
cloudAgent-authSource-24.5.1.1.zip: OK 如果完整性校验不通过,则软件包可能在下载过程中损坏,请重新下载或联系技术支持人员解决。
-
华为云配置示例 以华为云为例说明简单登录的配置方法。 访问华为云,打开F12,定位账号输入框,取唯一属性 type。 图3 定位账号输入框 定位密码输入框,取唯一属性 type。 图4 定位密码输入框 定位“登录”按钮,取唯一属性id。 图5 定位登录按钮 配置简单登录的参数。
CSS 选择器可参考https://www.w3school.com.cn/cssref/css_selectors.asp。 表1 基本配置 参数 说明 应用地址 应用的访问地址,建议设置为应用首页。 登录页面地址 应用的登录页面地址。选择简单登录、三字段登录、两页面登录时,需配置该参数。 Frame地址 应用的Frame地址。选择带Frame元素登录时,需配置该参数。 用户名输入框 用户名输入框的
CS S选择器。 下一步按钮 下一步按钮的CSS选择器。选择两页面登录时,需配置该参数。 密码输入框 密码输入框的CSS选择器。 额外输入框 额外输入框的的CSS选择器。选择三字段登录时,需配置该参数。 额外字段映射 额外字段的映射属性,可选择账号名、名字、密码。选择三字段登录时,需配置该参数。 登录按钮 登录按钮的CSS选择器。 自动提交 表单(用户名、密码等)是否需自动提交。如选择否,只会填充用户名和密码,不会自动提交。 说明: 涉及人机交互的验证码页面,如手机验证码,不建议勾选自动提交。 表2 账号配置 参数 说明 账号创建人 登录应用的账号归属,可选择管理员、用户。 说明: 当账号创建人为管理员时,需配置“允许用户设置的字段”。如选择密码,只允许用户设置登录应用的密码。
-
OneAccess用户登录验证 使用授权用户中已授权用户访问用户门户,成功登录以后,按照页面提示下载插件或者通过下面链接进行下载: https://oneaccess-cn-north-4-obs.obs.cn-north-4.myhuaweicloud.com/plug/autoFill.zip 解压插件包,将其添加至浏览器扩展程序并开启。 图6 添加扩展程序 刷新用户门户,单击目标应用,页面弹出输入密码的窗口,输入密码后,单击“登录到 插件代填”,即可进入应用。 若4中设置“允许用户设置的字段”为“密码”,则此步只允许用户设置密码。
-
概述 OAuth2.0(开放授权)是一个开放标准,允许用户授权第三方应用访问其存储在资源服务器上的信息,而不需要将用户名和密码提供给第三方应用。 基于该协议进行授权的整体流程为: 用户访问第三方应用系统,第三方应用系统向OneAccess发起授权登录请求,用户同意授权第三方应用系统后,OneAccess将携带授权码code,重定向到第三方应用系统。 第三方应用系统使用授权码code调用OneAccess的API接口换取授权令牌access_token。 第三方应用系统使用授权令牌access_token(access_token有效且未超时)调用OneAccess的API接口获取用户信息。 本文主要介绍OneAccess以OAuth协议集成应用的方法。
-
概述 SAML即安全断言标记语言(Security Assertion Markup Language),是OASIS安全服务技术委员会的一个产品,是基于XML的开源标准数据格式。SAML可以解决Web端应用系统的单点登录(SSO)需求,在不同的安全域(security domain)之间交换认证和授权数据。 从抽象的角度来看,SAML主要包括:主要术语和授权流程。 主要术语 表1 主要术语 术语 说明 IdP 身份提供商(Identity Provider,简称IdP)。负责收集、存储用户身份信息,如用户名、密码等,在用户登录时负责认证用户的服务。 SP 服务提供商(Service Provider,简称SP)。与IdP建立信任关系,使用IdP提供的用户信息,为用户提供具体的服务。 SSO 单点登录(Single Sign-On,简称SSO)。用户在OneAccess系统登录后,就可以通过跳转链接访问已建立互信关系的SP系统。 授权流程 用户通过浏览器访问Web应用系统。 Web应用系统生成一个SAML身份验证请求。 Web应用系统将重定向网址发送到用户的浏览器,重定向网址包含应向SSO服务提交的编码SAML身份验证请求。 IdP对SAML请求进行解码。 IdP对用户进行身份验证。认证成功后,IdP生成一个SAML响应并编码返回到用户的浏览器,其中包括经过验证的用户的用户名。 浏览器将SAML响应转发到Web应用系统ACS URL。 Web应用系统使用IdP的公钥验证SAML响应,验证成功,ACS则会将用户重定向到目标网址。 用户将重定向到目标网址并登录到 Web 应用系统。
-
在OneAccess中配置元数据文件 配置元数据文件,即在OneAccess中配置企业SP的Metadata文件。OneAccess支持“上传文件”和“手动编辑”两种配置,选择其中一种即可。如果后续元数据有更新,需要重新上传或者编辑元数据,否则会影响企业用户通过OneAccess登录企业应用。 单击在OneAccess中添加企业应用中添加的企业应用,在应用信息页面单击应用图标。 在通用信息模块,单击“认证集成”后的打开认证集成设置,此处选择SAML协议,单击“保存”。 应用认证集成协议一旦设置不可修改。 在通用信息模块,单击“认证集成”后的“配置”,进入“参数配置”页签配置元数据文件,可以选择上传文件和手动配置两种方式。 配置参数会明文展示所输入的信息,请防止信息泄露。 上传文件 单击“上传文件”,选择获取的企业SP的元数据文件。 当显示“上传成功”时,即系统已提取元数据。 如果提示“文件格式错误,仅支持上传xml格式文件”,需要您确认元数据文件的正确性后,重新上传或者通过手动编辑提取元数据。 企业应用的元数据获取方法请参考SP提供商的帮助文档。 手动配置 在“参数配置”页签,单击“手动配置”。 在手动编辑元数据页面,输入从企业SP元数据文件中获取的“SP Entity ID”、“ACS URL”和“签名证书”等参数,单击“保存”。 表2 认证参数 参数 是否必选 说明 SP Entity ID 是 SP唯一标识,对应SP元数据文件中的“Entity ID”的值。 断言消费地址(ACS URL) 是 SP回调地址(断言消费服务地址),对应SP元数据文件中“AssertionConsumerService”的值,即当OneAccess认证成功后响应返回的地址。 Name ID 是 用户在应用系统中的账号名对应字段,可以选择用户的属性或者对应的账号属性,此字段的值将作为断言中的subject。 NameID Format 是 SP支持的用户名称标识格式。对应SP元数据文件中“NameIDFormat”的值。 Audience URI 否 允许使用SAML断言的资源,默认和SP Entity ID相同。 Single Logout URL 否 服务提供商提供会话注销功能,用户在OneAccess注销会话后返回该地址。 默认Relay State 否 使用在idp发起的认证中,作为默认的一个值。 支持ForceAuth 是 默认为否。如果SP要求重新认证,则强制用户再次认证。 Response签名 是 默认为否。是否对SAML Response使用IdP的证书签名。 断言签名 是 默认为是。断言需使用IdP的证书签名,对应SP元数据文件中“WantAssertionsSigned”值。 数字签名算法 是 默认为RSA_SHA256,是SAML Response或者断言签名的算法,可在下拉框选择。 数字摘要算法 是 默认为SHA256,是SAML Response或者断言的算法摘要算法,可在下拉框选择。 断言加密 是 默认为否。是否对断言进行加密。 验证请求签名 是 默认为是。用来对SAML Request签名进行验证,对应SP元数据文件中“AuthnRequestsSigned”值。 验证签名证书 是 SP公钥证书,用来验证SAML request的签名,对应SP元数据文件中use="signing"证书内容。
-
同步状态说明 本节主要介绍同步完成后,各种状态的含义。方便您对异常状态进行排查定位。 以应用账号App_acc01、应用机构App_org01、原同步事件E0、新同步事件E1为例。 待处理 英文为“PENDING”,当应用账号App_acc01在生成新的同步事件E1时,如果该应用账号App_acc01之前的同步事件E0未执行完成,则生成的新事件E1的状态为待处理。 排队 英文为“QUEUING”,当应用账号App_acc01的同步事件E1可以执行时,会将该事件发送至Kafka执行消息队列,发送成功后,修改ES中存储的同步事件E1的状态为排队,表示该事件已成功加入执行队列。 发送 英文为“RUNNING”,当同步事件E1可执行时,在开始执行前将存储在ES中的同步事件E1的状态修改为RUNNING,修改成功后,调用下游应用系统的接口开始同步,表示该事件已成功处于运行状态。 成功 英文为“SUC
CES S”,同步事件执行成功后,会将该事件的状态SUCCESS写入ES,表示该事件已执行成功。 失败 英文为“FAILURE”,同步事件执行失败后,会将该事件的状态FAILURE写入ES,表示该事件已执行失败。 忽视 英文为“IGNORED”,该状态涉及2种场景: 当应用账号 App_acc01 在执行一个更新的同步事件时,如果发现后续有新的更新事件,则直接忽视该事件,并执行新的更新事件。 执行全量同步时,会忽视之前所有的同步事件。 略过 英文为“SKIPPED”,该状态暂时未使用。 挂起 英文为“WAITING”,当应用账号App_acc01对应用机构App_org01存在依赖关系时,应用机构App_org01未同步成功,则该机构下应用账号App_acc01的所有同步事件状态为挂起。
-
代码规则 在编写映射脚本时,OneAccess对脚本做了一些限制。包括禁止使用Java class、限制使用CPU的时间、限制内存的使用量、限定脚本格式、限制使用部分函数。 禁止使用Java class。 如果使用下面的代码: var File = Java.type('java.io.File'); File; 会抛出下面的异常: java.lang.ClassNotFoundException: java.io.File 限制使用CPU的时间。 默认限制执行时间为1秒,超过时间将抛出异常。 如果使用下面的代码: do{}while(true); 会抛出下面的异常: ScriptCPUAbuseException 限制内存的使用量。 默认大小为10M,超过将抛出异常。 如果使用下面的代码: var o={},i=0; while (true) {o[i++] = 'abc'} 会抛出下面的异常: ScriptMemoryAbuseException 限定脚本格式。 为了方便重写脚本,脚本中的if、while、for语句必须使用大括号,否则将出现格式错误。 如果使用下面的代码: var o={},i=0; while (true) o[i++] = 'abc'; 会抛出下面的异常: BracesException 限制使用部分函数。 如下的函数不允许在代码中使用,如果使用,将没有任何效果。 print
echo
quit
exit
readFully
readLine
load
loadWithNewGlobal
-
脚本示例 用户属性 在脚本中可以使用用户(user)这个对象,这个对象中包含了用户的所有属性,具体的属性以属性定义中的属性代码为准。用户属性定义可参考用户属性定义,账号属性定义可参考9。 示例1:映射用户注册时间: var createdAt = user.createdAt;
var date =new Date(createdAt);
date.toISOString(); 示例2:映射用户的手机号,并隐藏中间4位: var mobile = user.mobile;
var result = "";
if(mobile.length == 15) {
result = mobile.slice(0,7) + "****" + mobile.slice(-4);
}
result; 示例3:根据用户名生成用户邮箱: var username = user.userName;
username.toLowerCase()+"@huaweicloud.com"; 组织属性 在脚本中可以使用组织(organization)这个对象,这个对象中包含了组织的所有属性。 示例1:映射组织名称: var orgName = organization.name;
orgName.toString(); 示例2:映射组织编码: var orgCode = organization.code;
orgCode.toString(); 示例3:映射组织id: var id= organization.id;
id.toString(); 系统属性 获取系统属性,如日期。 示例:映射明天的当天时间: var date =new Date();
date.setDate(date.getDate()+1);
date.toISOString();