SAP fiori 第三方网页认证登录(伪)

2024-04-26 05:44

本文主要是介绍SAP fiori 第三方网页认证登录(伪),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景

        项目需要对sap的网页端应用(如sap fiori WDA等)的访问支持免密登录。

        在PC端,一般使用AD域集成单点登录实现免密登录。在移动端单点登录实现相对较为复杂,需要额外的产品支持。而移动端更多的场景是第三方认证登录,比如企微和钉钉。

分析

        查询资料,翻阅官方文档,咨询basis顾问,sap fiori暂不支持基于oauth2.0的第三方认证登录的,此处提供一种曲线实现第三方网页登录的实现方式。

第一种方式

        从需求来讲,一般使用第三方网页登录针对的是单个网页,所以对SAP账号的标准功能依赖度不是很高,可以通过代码逻辑处理。基于这种思路,使用预先设置登录数据的fiori应用页面,在页面打开时调用后端接口进行认证,认证成功则返回对应的账号,认证失败,则跳转错误页面,或者认证登录页面。

需要注意

        1. 区分第三方跳转和磁贴点击。

        2. 免登录页面登录验证需要优先其它标准登录验证,保证正常登录验证

        3. 考虑账号硬代码逻辑,避免使用免登录账号跳过认证校验

        4. 其它关于账号的安全,比如后端记录验证账号,防止接口篡改

第二种方式

        通过已设置免登录的BSP应用程序或者ICF接口处理认证部分。如果认证成功,获取账号后重置密码,重定向到一个新的BSP应用程序并将账号密码拼接在url参数中完成ICF服务登录(隐藏账密),最后再次重定向到最终页面。如果认证失败直接跳转登录页面。

需要注意

        1. 需要考虑中间cookie安全性问题导致的登录失败

        2. 中间跳转过程中的账密安全性

        3. 密码为临时密码,不再支持直接账密登录

参考

SAP Fiori 应用程序的 SSO 机制

SAP Help Portal

OAuth 身份验证

SAP Help Portal

用户身份验证和单点登录

SAP Help Portal

https://help.sap.com/doc/saphelp_nw74/7.4.16/en-US/4a/112f1a2228101ee10000000a42189b/content.htm?no_cache=true

SAML和OAuth2这两种SSO协议的区别

https://www.cnblogs.com/flydean/p/14224139.html

这篇关于SAP fiori 第三方网页认证登录(伪)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/936803

相关文章

SpringSecurity JWT基于令牌的无状态认证实现

《SpringSecurityJWT基于令牌的无状态认证实现》SpringSecurity中实现基于JWT的无状态认证是一种常见的做法,本文就来介绍一下SpringSecurityJWT基于令牌的无... 目录引言一、JWT基本原理与结构二、Spring Security JWT依赖配置三、JWT令牌生成与

SpringSecurity6.0 如何通过JWTtoken进行认证授权

《SpringSecurity6.0如何通过JWTtoken进行认证授权》:本文主要介绍SpringSecurity6.0通过JWTtoken进行认证授权的过程,本文给大家介绍的非常详细,感兴趣... 目录项目依赖认证UserDetailService生成JWT token权限控制小结之前写过一个文章,从S

springboot security使用jwt认证方式

《springbootsecurity使用jwt认证方式》:本文主要介绍springbootsecurity使用jwt认证方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录前言代码示例依赖定义mapper定义用户信息的实体beansecurity相关的类提供登录接口测试提供一

springboot security验证码的登录实例

《springbootsecurity验证码的登录实例》:本文主要介绍springbootsecurity验证码的登录实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录前言代码示例引入依赖定义验证码生成器定义获取验证码及认证接口测试获取验证码登录总结前言在spring

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

SpringSecurity 认证、注销、权限控制功能(注销、记住密码、自定义登入页)

《SpringSecurity认证、注销、权限控制功能(注销、记住密码、自定义登入页)》SpringSecurity是一个强大的Java框架,用于保护应用程序的安全性,它提供了一套全面的安全解决方案... 目录简介认识Spring Security“认证”(Authentication)“授权” (Auth

一文详解kafka开启kerberos认证的完整步骤

《一文详解kafka开启kerberos认证的完整步骤》这篇文章主要为大家详细介绍了kafka开启kerberos认证的完整步骤,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、kerberos安装部署二、准备机器三、Kerberos Server 安装1、配置krb5.con