点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
我的客户要求设置强制重新配置。 无论选择哪种系统,IDM都应将用户属性和分配信息推送到目标系统。
- 我创建了一个自定义任务以使用uProvision函数重新触发各个连接器软件包中提供的ModifyUser和AssignUserMembership任务。我将用户mskey,存储库ID和Auditid传递给函数作为输入
- 以上任务正在ABAP,Java系统中按预期方式工作。
- 对于AD(Microsoft目录-LDAP),仅修改用户任务可以按预期运行,而assignuser成员身份无法正常运行。
失败时分配用户成员资格任务的错误消息:
错误putNextEntry存储失败!错误:条目不存在 来自Modify操作的异常:javax.naming.InvalidNameException:!ERROR:条目不存在:[LDAP:错误代码34-0000208F:NameErr:DSID-03100225,问题2006(BAD_NAME),数据8350,最佳匹配项:'!ERROR :条目不存在']; 剩余名称'!ERROR:条目不存在'
在进一步分析了原因之后,由于我正试图根据用户mskey触发任务而导致分配失败,但是分配是基于AD组进行的(将用户分配给AD组,反之则没有) )
如何在AD和IDM之间实现AD组特权之间的同步。 不想删除特权并将其分配回去。
请让我知道如何为Active Directory实现这一目标。 非常感谢您的帮助。
输入屏幕:
提交请求后,idm将触发自定义任务,并调用以下脚本
代码:以下是用于触发AssignUserMemberShip设置任务的javascript代码。
以下脚本的输入参数是用户MSkey和用户在UI中选择的存储库列表
功能retryForceProvisionUserAssignments(Par){ var script =" retryForceProvisionUserAssignments ::"; var debugKey = uGetConstant(" pck.ENABLE_DEBUG"); var仓库=''+ Par.get(" REPOSITORIES")+''; //进入JS模式 var mskey = Par.get(" MSKEY"); var RetryRepositories =""; 如果(debugKey ==" 1" || debugKey ==" TRUE"){ uWarning(脚本+"输入存储库:[" +存储库+"]")); } if(repositories == null || repositories.length <2){ 如果(debugKey ==" 1" || debugKey ==" TRUE"){ uWarning(脚本+"未找到存储库...静默退出"); } 返回""; } var tempArr = repositories.split('|'); for(var i = 0; i= 0){ var msg1 =脚本+":mskey =" + mskey +" ExecuteTask =" + executeTask +"。执行uProvision时发生错误。原因:" + OutString; uError(msg1); uSkip(2,2,msg1); } }其他{ var msg2 =脚本+" executeTask变量为null或为空"; uInfo(msg2); uSkip(2,2,msg2); } } } }
此致
Deva
(67.9 kB)
Hello Deva,如前所述,AD接口和LDAP的工作方式与ABAP接口的特权分配不同。 STANDARD ABAP连接器(ToSAP)进程" AssignAllABAPPrivileges"获得为SAP IDM中的存储库提供的所有特权。
(仅供参考:*还有另一个ABAP连接器ToSAPIdentity,也只是将增量提供给了ABAP系统)。
这很容易进行您要创建的对帐流程。 标准LDAP/AD连接器(ToLDAP)进程" AssignUserToADSGroup"使用标准成员属性将存储库的增量(仅分配[+]和撤销[-])写入组。
通过触发现有的标准挂钩/插件来保持升级概念的简单方法是,使用LDAP/AD的新部分来增强与我们共享的javascript,您可以在其中确定增量(分配和 帐户/存储库必须撤消),并为每个组触发标准的LDAP/AD挂钩/插件。
还有其他可能性可以满足您客户的要求,但是我喜欢这个, 因为您触发了现有的挂钩/插件(接口),它们也在正常的身份/帐户生命周期中触发。 如果这些挂钩/插件(接口)有任何更改,这些更改也会在您的对帐过程中生效。
最好的问候,
Christoph Reckers
Steffi Warnecke -嗨,Steffi,如上所述,我曾尝试更新用户,但遇到错误
属性值
dn dnvalue
更改类型修改
+成员组dn
甚至尝试使用memberOf属性
putNextEntry无法存储cn = xyz,OU = Users,OU = IDM,DC = txyz,DC = local
修改操作中的异常:javax.naming.directory.SchemaViolationException:
[ LDAP:错误代码65-0000207D:UpdErr:DSID-0315166D,问题6002(OBJ_CLASS_VIOLATION),数据31]; 其余名称'cn = xyz,OU =用户,OU = IDM,DC = txyz,DC =本地'
您好
您能在两个脚本sap_core_getGroupACCOUNTFromPrivilege和sap_core_checkAccountAttributeValueExists两个脚本的末尾添加uWarning并发布值吗?
嘿,Deva,
看起来像不是"成员" 用户帐户的属性。 :/
。
您是否尝试过以其他方式创建工作?
。
问候,
Steffi。
# p #Deva Prakash B
您无法签出配置 引擎程序包,因此即使您愿意,也无法编辑标准SAP脚本(或其中的任何其他标准)。
如果您可以在LDAP连接器(或AD)中找到一个属性(通过该属性将组链接到帐户),则只需更改密码的参数即可:用户帐户的专有名称,然后输入 +该属性的名称与该组的DN组合在一起。
。
我们没有使用此属性,但是我有一个密码,它添加了一个 组使用与标准相同的信息(通过属性"成员")分组到另一个组。 因此,也许"成员"也可以以其他方式工作?
如果您有一个链接了test-ad的测试环境,则可以尝试一下。 :)
。
致谢,
Steffi。
一周热门 更多>