动态获取凭证

2020-09-01 22:00发布

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

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


大家好,

我们需要根据动态传递的别名从Keystore动态获取凭据,作为回报,它应该发送用户名和密码。 是否有任何常规或标准的骆驼语法? 如果他们愿意,请告诉我。

感谢与问候,

达纳什。

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

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


大家好,

我们需要根据动态传递的别名从Keystore动态获取凭据,作为回报,它应该发送用户名和密码。 是否有任何常规或标准的骆驼语法? 如果他们愿意,请告诉我。

感谢与问候,

达纳什。

付费偷看设置
发送
6条回答
Haoba3210
1楼 · 2020-09-01 22:47.采纳回答

Hello Gensha,

您可以读取请求并使用content修饰符将凭据名称设置为property(将其命名为ARC_CRED)。然后在脚本中读取属性值以获取响应。

导入com.sap.it.api.ITApi
 导入com.sap.it.api.ITApiFactory
 导入com.sap.it.api.securestore。*;
 导入com.sap.gateway.ip.core.customdev.util.Message;
 导入java.util.HashMap;

 def消息processData(消息消息){
       
      //身体
        def主体= message.getBody();
        字符串密码;
        字符串_output ="";
        def pMap = message.getProperties();
        字符串CREDENTIAL_NAME = pMap.get(" ARC_CRED")。toString();
        def服务= ITApiFactory.getApi(SecureStoreService.class,null);
        def凭证= service.getUserCredential(CREDENTIAL_NAME);
       
 如果(凭证==空)
        {
  抛出新的IllegalStateException("找不到别名" CREDENTIAL_NAME"的凭据"");
        }
        其他
 {
          密码=新的字符串(credential.getPassword());
        }
        message.setProperty(" P_Password",密码);
        返回消息;
 } 

致谢,

Sriprasad Shivaram Bhat

大简至美
2楼-- · 2020-09-01 22:53

非常感谢Sriprasad。 我是Dhanush,最近刚加入公司工作,但是我使用的是Ganesh A M的帐户。 无论如何,你们人民正在帮助我很多。 感谢大家的宝贵意见。

土豆飞人
3楼-- · 2020-09-01 22:39

嗨Dhanush,

您可以使用UserCredential接口的getUsername()和getPassword()。

选中此链接了解更多详细信息:

感谢 ,

Manoj

蓋茨
4楼-- · 2020-09-01 22:40

感谢Manoj。

但是我正在尝试使用那些getPassword()和getUsername()进行Groovy操作,但仍然无法编写正确的Groovy。 如果您不介意,请在此处发送完整的说明。

南山jay
5楼-- · 2020-09-01 23:05

Hello Ganesha,

下面的内容可能会对您有所帮助,您可以在连接器中传递为pass和user设置的属性

导入com.sap.it.api.ITApi
 导入com.sap.it.api.ITApiFactory
 导入com.sap.it.api.securestore。*;
 导入com.sap.gateway.ip.core.customdev.util.Message;
 导入java.util.HashMap;


 def消息processData(消息消息){
       
      //身体
        def主体= message.getBody();
        字符串密码;
        字符串_output ="";
        def服务= ITApiFactory.getApi(SecureStoreService.class,null);
        def凭证= service.getUserCredential(" CREDENTIAL_NAME");
       
 如果(凭证==空)
        {
  抛出新的IllegalStateException("找不到别名" CREDENTIAL_NAME"的凭据"");
        }
        其他
 {
          密码=新的字符串(credential.getPassword());
        }
        message.setProperty(" P_Password",密码);
        返回消息;
 }
 

致谢,

Sriprasad Shivaram Bhat

Bunny_CDM
6楼-- · 2020-09-01 23:02

感谢Sriprasad。 但是我正在寻找动态获取的手段,即如果从ARC工具触发了凭证别名,则意味着应该为传递的凭证别名提供用户名和密码。

一周热门 更多>