从AD(LDAP)获取objectSID

2020-09-26 12:21发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)资深专家,我正在尝试创建From...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


资深专家,我正在尝试创建From LDAP传递,或者甚至使用uGetUserSid内部函数,以从目标存储库中的给定条目获取objectSID属性。 uGetUserSid没有取得任何成功,但是我能够通过From LDAP pass方法恢复一些东西。 问题是,当我调出SQL临时表中显示的结果时,全都是mumbo-jumbo。 该属性以二进制属性的形式存储在LDAP中,因此,在LDAP浏览器或ADUC中查看该属性时,IDM并不是看起来很漂亮的S-1-5-21-xxxxxx-xxxxx格式。

我仔细检查了我的环境,看是否有SAP提供的全局脚本,该脚本会将二进制格式转换为文本,但可惜没有。 有什么建议吗?

5条回答
骆驼绵羊
2020-09-26 12:57 .采纳回答

要在IDM端以纯文本格式获取SID,首先需要"从LDAP"传递。 从AD引入objectSid时,您需要在源列前面加上感叹号,如下所示:

接下来,您将看到此通行证中包含的脚本。 这是该脚本的文本:

//主要功能:z_custom_ad_convertObjectSID


 函数z_custom_ad_convertObjectSID(Par){
//输入:{HEX} 010500000000000515000000561400C443528306533A02202F970000
//输出:S-1-5-21-3288339542-109269571-537016915-38703
//基于链接的算法https://blogs.msdn.microsoft.com/oldnewthing/20040315-00/?p=40253
//为了轻松进行对象SiD转换测试,可以下载此工具https://sidtranslator.codeplex.com/

 var OutString = uHexToByte(Par);
 var bSid = OutString;
     var binarySid = bSid;
   
 如果(bSid.length <8)返回"";
    
 var版本= binarySid [0];
     var nrSubAuth = binarySid [1];
     var identifierAuth = binarySid [2] + binarySid [3] + binarySid [4] + binarySid [5] + binarySid [6] + binarySid [7];
     var returnString =" S-";
     returnString = returnString +版本+"-";
     returnString = returnString + identifierAuth;
 
     for(var subAuthCount = 0; subAuthCount 
 

现在,在临时表中,您将拥有一个SID,看起来像在LDAP浏览器(如Softerra或ADUC)中拉出该属性时的外观。 任何问题? :)

一周热门 更多>