点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
当前,我正在通过上下文从SAPcpSession中使用SAPcpmsUserRoles来获取用户详细信息。
现在,我已将移动服务的安全性从SAML更改为证书,并且我想使用URLSession和JSONSerialization来获取用户数据,但由于现在不是从入门步骤开始进行身份验证,因此我对如何进行URLRequest感到非常困惑 在SAP Cloud Platform中,但来自JamfKeyChainUtilities框架。
有人可以帮我吗? 或者,还有其他方法可以获取登录用户的详细信息,例如姓名和电子邮件吗?
对于客户端证书处理,应该实现SAPURLSessionDelegate并将其分配给SAPURLSession实例。 看起来应该与对URLSessionDelegate/URLSession进行的操作非常相似,您会在Stack Overflow上看到相关信息。
在委托中,实现didReceive(challenge)。 在不知道JamfKeychainUtilities细节的情况下,我希望您检索证书的sec身份,并将其传递给委托人的完成处理程序。
请参阅此页面"身份验证"部分中的文档: https://help.sap.com/doc/978e4f6c968c4cc5a30f9d324aa4b1d7/Latest/zh-CN/Documents/Frameworks/SAPFoundation/Networking.html 。
我尝试使用来自keychainManager.shared.getCredentials()的URLCredentials
这是我的函数:
func fetchDetails(){
let urlString =" https://hcpms-xxxtrial.cert.hanatrial .ondemand.com "
let settingsParameters = SAPcpmsSettingsParameters(backendURL:URL(string:urlString)!, applicationID:" com.sap.latency")
让sapSession = SAPURLSession(委托:self)
让urlSession:SAPURLSession = sapSession
让applicationID:字符串=" com.sap.latency"
让deviceID:字符串? = UIDevice.current.identifierForVendor?.uuidString
让applicationVersion:字符串? =" 7.0.1"
让观察者= SAPcpmsObserver(应用程序ID:应用程序ID,设备ID:设备ID,应用程序版本:应用程序版本)
urlSession.register(观察者)
let userRoles = SAPcpmsUserRoles(sapURLSession:urlSession,settingsParameters:settingsParameters)
userRoles.load {(userInfo,错误)在
print(userInfo?.givenName ??"")
}
}
func sapURLSession(_会话:SAPURLSession,任务:SAPURLSessionTask,didReceive挑战:URLAuthenticationChallenge,complementHandler:@转义(SAPURLSession.AuthChallengeDisposition)->无效){
myCredential = KeychainManager.sharedInstance.getCredentials()!
completionHandler(SAPURLSession.AuthChallengeDisposition.use(myCredential!))
}
以下是我得到的错误:
originalRequest URL( https://hcpms-xxxtrial.cert.hanatrial.ondemand.com/mobileservices/application/com.sap.latency/roleservice/application/com.sap.latency/v2/我)currentRequest URL( https://hcpms-xxxtrial.cert.hanatrial.ondemand.com/mobileservices/application/com.sap.latency/roleservice/application/com.sap .latency/v2/Me)Real URLSession didCompleteWithError:初始任务状态-枚举具有错误的观察者(错误:发生SSL错误,无法建立与服务器的安全连接。)
一周热门 更多>