成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

外聯網關平臺實踐之車支付渠道改造

開發 架構
簡單來說,系統的主要功能就是通過對請求的一些配置,選擇系統預置的一些插件(系統內置了常用的通訊協議、加簽驗簽、加密解密過程,也可以通過規則引擎腳本實現對請求和響應數據的個性化處理),以實現在不編寫代碼的情況下,實現對請求的鑒權、參數預處理、參數與響應結果映射等。讓業務開發同學更關注業務邏輯。

1.項目背景

車支付系統對接很多的外部渠道,如蘋果支付、支付寶、微信、銀聯等,在實際開發與實施的過程中,發現了其中存在的一些問題,比如:

  • 需要一定精力在與渠道進行非業務邏輯的聯調與測試。
  • 渠道的對接可能分布在不同的業務子系統中,沒有進行統一有效的出口管控。

針對以上類似問題,外聯網關應運而生,以保證內部系統與外部系統之間進行安全、有效、便捷的通訊。

2.設計方案

2.1系統交互流程圖

圖片

簡單來說,系統的主要功能就是通過對請求的一些配置,選擇系統預置的一些插件(系統內置了常用的通訊協議、加簽驗簽、加密解密過程,也可以通過規則引擎腳本實現對請求和響應數據的個性化處理),以實現在不編寫代碼的情況下,實現對請求的鑒權、參數預處理、參數與響應結果映射等。讓業務開發同學更關注業務邏輯。

平臺還提供Mock數據的能力,在外部接口未提供可調用環境時,可以根據渠道提供的文檔,進行Mock數據的返回。

系統提供兩種接入方式:

  • 客戶端如果采用spring cloud,可以接入統一注冊中心Consul;
  • 如果是其他系統,可以通過HTTP方式調用。

3.實踐過程

在獲取到對接方的接口文檔之后,通過分析接口的通訊與鑒權方式,在外聯網關的配置管理后臺配置相應的參數,配置完成之后會有相應的模板編號,客戶端通過模板編號+對接接口的請求參數進行接口的請求。

3.1組管理

系統通過組管理,對同一系列的接口的通用配置,實現對一個外部渠道中一個或多個接口的的請求響應處理配置,包括:

  • 加簽驗簽
  • 加密解密
  • 預設字段

圖片

系統預置加密及簽名:

  • 加密分為三種:

對稱加密(symmetric),例如:AES、DES等

非對稱加密(asymmetric),例如:RSA、DSA等

摘要加密(digest),例如:MD5、SHA-1、SHA-256、HMAC等。

  • 摘要算法:


算法

說明

MD5-LOWER

摘要函數-128位-小寫

MD5-UPPER

摘要函數-128位-大寫

SHA-1

摘要函數-160位

SHA-256

摘要函數-256位

SHA-384

摘要函數-384位

SHA-512

摘要函數-512位

SHA1withRSA

先用 SHA-1 去摘要,然后使用 RSA 加密

SHA256withRSA

摘要后加密

SHA384withRSA

摘要后加密

SHA512withRSA

摘要后加密

MD2withRSA

摘要后加密

MD5withRSA

摘要后加密

  • 加解密算法:

算法

說明

備注

AES

對稱加密。更快,兼容設備,安全級別高

AES|128|AQIDBAUGBwgJAAECAwQFBg==|AES/CBC/PKCS5Padding

DES

對稱加密。本地數據,安全級別低


RSA

非對稱加密。有公鑰和私鑰


SM4

國密算法-對稱加密SM4

encrypt_key、decrypt_key配置通過“|”間隔key和iv

注意:

AES|秘鑰長度|IV向量(byte-->Base64)|AES/mode (加密模式)/padding (填充方式)

AES|128|AQIDBAUGBwgJAAECAwQFBg==|AES/CBC/PKCS5Padding

  • 簽名策略(SignStrategyEnum)

簡寫

過程

KV_JOIN_BODY_URL

對請求參數中body和urlParam值,根據配置的連接方式組成字符串

V_JOIN_BODY

請求參數(body)值拼接

V_JOIN_BODY_SORT

請求參數(body)值拼接(需排序)

KV_JOIN_BODY_HEADER

對請求參數中body和header值,根據配置的連接方式組成字符串

KV_JOIN_BODY_ENCRYPT

對請求參數中body和encrypt(加密前)值,根據配置的連接方式組成字符串

KV_JOIN_BODY_ENCRYPTED

對請求參數中body和encrypt(加密后)值,根據配置的連接方式組成字符串

BODY_JSON

對請求參數中body數據轉換為JSON字符串

BODY_ENCRYPT_SORT_JSON

body+encrypt 參數字段排序后 json 化

BODY_JSON_RSA

對請求參數中body數據轉換為JSON字符串在經過RSA加密(Base64編碼)

ENCRYPT_RSA

對請求中的加密字符串進行再簽名

V_JOIN_HEADER_NO_SORT

header 內容拼接,無排序

KV_JOIN_BODY_URL_REJECT_SIGNMETHOD

對請求參數中body和urlParam值,根據配置的連接方式組成字符串,并且剔除SingMethod的key和value

  • 驗簽策略(VerifySignStrategyEnum)

簡寫

過程

V_JOIN_BODY

請求參數(body)值拼接

BODY_SORT_JSON

返回結果集字段排序后 JSON 化

BODY_SORT_JSON_E_WALLET

返回結果集字段排序后 JSON 化(E錢包專用)

  • 簽名鹽值位置:

標識

說明

left

拼接左側

right

拼接在右側

both

兩側都有

  • 加密策略(EncryptStrategyEnum)

簡寫

過程

SPECIFIC_JSON

在請求體??encrypt??中指定要加密的內容,轉換成JSON字符串

BODY_JSON

在請求體??body??中指定要加密的內容,轉換成JSON字符串

  • 解密策略:

簡寫

過程

SPECIFIC_JSON

指定的字段,解密后為JSON字符串

  • 接口預設參數:

{
"body": {
"requestNo": "$simple_uuid$",
"requestTime": "$millisecond_long$",
"charset": "UTF-8",
"signType": "SHA256withRSA",
"encryptType": "AES"
}
}

示例:$simple_uuid$

預設值

類型

說明

simple_uuid

String

UUID

millisecond_long

Long

毫秒

timestamp_long

Long

時間戳

持續完善中



3.2請求項配置

在配置好接口組之后,接下來就可以通過對請求項實現對某一個接口的具體配置,其中包括:

  • 選擇對應的接口組
  • 是否需要Mock數據
  • Mock數據的模板配置(每個屬性由 3 部分構成:屬性名、生成規則、屬性值,可以實現返回動態Mock數據。)
  • 請求的方式(POST、GET)
  • 請求與響應的Content-type,編碼格式等
  • 請求超時的配置
  • 請求參數映射(參數名稱的轉換)
  • 請求參數腳本(通過規則引擎腳本對請求參數進行二次處理)

圖片

Mock模板示例:

'name|min-max': value
'name|count': value
'name|min-max.dmin-dmax': value
'name|min-max.dcount': value
'name|count.dmin-dmax': value
'name|count.dcount': value
'name|+step':

3.3模板配置

模板是打包一個或者多個請求(目前僅支持一個,后續通過接入規則引擎平臺,實現對請求項的編排能力),對外暴露給客戶端,通過模板編號進行請求。

圖片

 4.規劃 

外聯平臺目前實現了基本的對請求的處理與封裝,還是有很多需要集成與完善的功能,比如對請求的監控與性能統計,直觀感受外部接口的響應效率,更好的優化自己的系統。

還有可以接入規則引擎系統,可以實現對請求更靈活的配置,讓系統更加靈活,適應更多的場景。

 5.總結 

外聯網關是針對請求外部接口的一套實現方案,以低代碼的形式實現復用,以減少接口對接工作量為目標,最終實現提高工作效率,實現對接口的統一管理與控制,確保交易在各支付渠道之間安全、無縫的傳遞。

  • 作為之家內部業務系統與外部系統的隔離與統一管理:
  • 實現外部支付清算系統的統一接入和接入管理;
  • 完成通訊協議及信息的轉換;
  • 完成報文組包解包、報文解密和加密;
  • 完成信息的路由分發;
  • 完成報文的發送和接收。

圖片

作者簡介:鄭剛 

  • C端及中臺產研中心-效能平臺部-業務平臺團隊。
  • 2017年加入汽車之家,主要負責中臺及金融相關業務服務器端設計與開發工作。
責任編輯:武曉燕 來源: 之家技術
相關推薦

2016-05-23 16:22:49

大眾點評支付網關系統

2023-12-04 11:17:20

2024-05-17 12:53:54

IOT網關物聯網平臺物聯網

2013-11-12 13:33:40

天翼開放平臺互聯網金融

2017-02-28 16:23:28

支付清結算渠道側

2014-10-31 15:05:05

英特爾智能家庭網關

2021-03-09 09:16:35

5G車聯網物聯網

2023-11-29 10:58:28

AIoTIOT數據平臺

2018-07-17 05:48:34

車聯網互聯網物聯網

2018-07-18 14:59:43

車聯網互聯網通信

2016-07-01 11:34:42

華為

2022-09-02 15:35:37

Android實踐

2022-05-24 09:30:00

消息吞吐車聯網平臺車聯網

2022-05-23 09:30:00

MQTT車聯網QoS

2022-05-19 09:02:39

車聯網MQTTTSP

2022-05-25 09:52:36

車聯網通信安全SSL/TLS

2020-09-15 13:55:22

密碼技術車聯網

2020-06-04 09:24:26

微服務數據框架

2022-01-13 09:14:48

車聯網汽車智能
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 婷婷激情在线 | 精品久久网 | 一级免费黄色 | 欧美黄色一区 | 国产欧美日韩一区二区三区 | 亚洲国产精品久久久 | 久久国产一区二区三区 | 亚洲成人在线免费 | 亚洲欧美日本在线 | 欧美精品成人一区二区三区四区 | 国产成人综合久久 | 九九av| 青青草原综合久久大伊人精品 | 亚洲精品在线看 | 一区二区三区视频在线观看 | 91久久精品一区二区二区 | 国产乱人伦 | 国产网站在线免费观看 | 亚洲免费在线观看 | 在线国产中文字幕 | 日本亚洲精品 | 欧美美女一区二区 | 亚洲成人福利 | 国产一级一级 | 国产精品一区二区三区四区 | 91在线视频网址 | 日韩av三区 | 999久久久免费精品国产 | 久久久久国产精品一区二区 | 亚洲a视频 | 久久艹免费视频 | 国产ts一区 | 一级久久久久久 | 午夜影院 | 欧美a∨ | 波多野结衣电影一区 | 亚洲精品视频免费看 | 精品久久网 | 成人高清在线 | 一级黄片一级毛片 | 99久久精品视频免费 |