使用OAuth进行SAP和其他系统进行网络通信的例子

之前在SAP系统(ABAP)上实现了和ServiceNow的OAuth通信(ServiceNow是一个IT服务系统),本文将会介绍具体实现步骤,考虑到ServiceNow在国内用的公司少,我会把重点放在SAP部分。另外建议去了解一下OAuth标准协议,这样可以更好地理解OAuth的整体流程,也对以后在其他系统上实现OAuth有帮助。

 

我先用简单的文字描述一下OAuth的使用场景,A(客户端)访问B(服务器),一种比较普遍的方式是A用B的用户名和密码访问,这样有一个问题是,当A不是可信任系统时,把用户名及密码告诉A会有安全风险。而使用OAuth的话,A首先需要获得B的授权,获得一个token(令牌),之后根据这个token访问B,这样A就不需要B的用户名和密码了。这里举一个微信授权的使用场景,平时我们在访问一些小程序的时候,会弹出一个框让我们确定是否允许小程序使用微信的头像及昵称等信息,这个就是授权,当你同意的时候,微信会授予小程序一个token,之后小程序根据token就可以访问微信里的头像等资料,而不需要微信的用户名及密码。需要注意的是,OAuth侧重的是授权(Authorization),而非认证(Authentication)。

 

先讲SAP系统作为客户端,ServiceNow作为服务器的场合。在讲具体实现步骤之前,首先分析下在当前使用场景中,OAuth的各个角色分别是什么,虽然这不是具体实现的一部分,但是有助于理解OAuth

Resource Owner: ServiceNow user

Resource Server: ServiceNow

Client: Postbox

Authorization Server: ServiceNow

Authorization Grant: Authorization Code

 

相关的权限

ServiceNow: admin

SAP: https://help.sap.com/viewer/3c4e8fc004cb4401a4fdd737f02ac2b9/7.5.9/en-US/6f679081b5444f91bf68e600025c2cf6.html

 

相关的服务或者配置

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值