电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

金蝶云·苍穹V5.0_API安全介绍 - 2022.12.14.pdf

金蝶云·苍穹V5.0_API安全介绍 - 2022.12.14.pdf_第1页
1/20
金蝶云·苍穹V5.0_API安全介绍 - 2022.12.14.pdf_第2页
2/20
金蝶云·苍穹V5.0_API安全介绍 - 2022.12.14.pdf_第3页
3/20
1993-2019金蝶国际软件集团有限公司④内部公开请勿外传架构师:邹洪开放平台API安全介绍2022年12月13日2目录开放平台-API安全•认证鉴权•加密脱敏•访问控制•一键发布webserviceCatalogAPI安全加强•支持更多认证业务场景•支持灵活的访问控制•支持多维度限流策略•支持接口数据安全•支持一键发布webservice3认证鉴权-介绍注册第三方应用后,外部系统可以通过AccessToken、JWT、摘要身份认证、基本身份认证(适用于接口回调)、签名认证调用苍穹开放平台的OpenAPI。菜单路径:开发服务云-开放平台–安全策略/第三方应用。苍穹OpenAPI开发认证指南:https://vip.kingdee.com/article/218694224386822400系统默认支持AccessToken认证,如果要开启其他认证,需要打开对应的开关。各种认证对比如下:对比项实用性安全性Token生命周期管理是否防篡改是否防重放报文是否加密AccessToken认证适用API,免密跳转一般需要NNN摘要认证适用API高不需要YYNJWT认证适用API,前后端分离,支持跨越较高不需要NNN签名认证适用API,支持双向认证,金融交易,海关接口最高不需要YYY基本认证适用API,回调,支持pathvariable低不需要NNN4认证鉴权-AccessToken认证获取appToken请求Body参数:{"appId":"test","appSecret":"123456789qwe!123456789","tenantid":"tenant_devother_dev","accountId":“1236545874","language":"zh_CN"}请求结果:{"data":{"app_token":"ccf6c219-85ac-418f-a6f4-50a0349857ff","success":true,"error_desc":"","expire_time":1666080438642,"error_code":"0"},"state":"success","status":true}示例:{host}/api/getAppToken.do请求Body参数:{“user":“130****2580","apptoken":"ccf6c219-85ac-418f-a6f4-50a0349857ff","tenantid":"tenant_devother_dev","accountId":“1236545874",“usertype":“Mobile“}请求结果:{"data":{"access_token":"1331204445995794432_bs2Z55KF1mOwoIXGxt7rn5bjvB871W8CwFjA9CUe5A47OMHVKv6rP53vf9PZBVMBJJxISa6maDYLFvutr7Fk6bRFdIWuulCeZFbG","success":true,"error_desc":"","expire_time":1666086003053,"error_code":"0"},"state":"success","status":true}示例:{host}/api/getAppToken.do获取accessToken5认证鉴权-JWT认证请求Body参数:{"appId":"test","appSecret":"123456789qwe!123456789","tenantid":"tenant_devother_dev","accountId":“1236545874",“usertype":“Mobile",“keytype":“JWT"}请求结果:{"data":{"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmaWQiOiIxMzMyNDQyNzc2NDk0NjY5ODI0Iiwic3ViIjoia2Rqd3QiLCJmcGhvbmUiOiIxMzAyNjM5MTc1NSIsImVpZCI6IjAiLCJmdHJ1ZW5hbWUiOiLliJjmr4UiLCJmb3JnaWQiOiIxMDAwMDAiLCJpc3MiOiJrZCIsInVIjoxNjY2MDkxMjY3LCJpYXQiOjE2NjYwODQwNjcsImZpc3JlZ2lzdGVkIjoiMSIsImZwc3dzdHJhdGVneWlkIjoiMzM4MzMzODg0ODUwNjQ4MDY0IiwidXNlcm9wZW5pZCI6IiIsInVzZXJuYW1lIjoi5YiY5q-FIn0.PWzyVSGgSuazp650cAFfdoNz9jU-YB8aQVrNvd-CO_8","success":true,"error_desc":"","expire_time":1666091267113,"error_code":"0"},"state":"success","status":true}示例:{host}/api/login.do获取JWTToken6认证鉴权-JWT认证接口中使用JWTToken访问苍穹开放平台接口7参数字段类型说明Header参数:Content-Typestring固定值:application/jsonOpenApiAuthstring认证类型,”1“是AccessToken认证,”2“是摘要认证,”3“是JWT认证,”4“是基本认证,”5“是签名认证,这里摘要认证是”2“openApiSignstring第三方应用中代理用户中的SecretkeysignatureNoncestring访问随机数,最好32位uuid,如果随机数已经访问过,则再次访问无效timestampstring当前时间,和服务器时间相差10分钟就为无效请求,目前格式为yyyy-MM-ddHH:mm:ss,以后为时间戳parametersstring参与摘要的参数列表,多个参数用“,”隔开,GET请求专用signaturestring摘要后的结果摘要认证使用摘要代替密码的传输,并且采用SHA256之类的不可逆哈希算法对参数生成摘要。客户端请求时,通过第三方应用指定的认证算法将随机数、时间戳和其他参数信息生成摘要。服务端拿到摘要后,根据请求信息并根据相同的认证算法和认证密钥计算并与得出的摘要进行对比,匹配则身份验证通过。认证鉴权-摘要认证8认证鉴权-摘要认证接口中使用摘要访问苍穹开放平台接口9URL:{host}/kapi/v2/kdtest/gl/gl_voucher/gl_voucher?billno=cugyi5&pageSize=10&pageno=1&openApiSign=Slh4bFF3Mnh0LXZLUE9fRUtzRnItc2JTblgyM0RtNk9RN2V5ODR2WU13QT06MTMzMTIwNDQ0NTk5NTc5NDQzbg==&OpenApiAuth=4请求结果:{"data":{"lastPage":true,"pageNo":1,"pageSize":10,"rows":[{"id":"1393492185164283904","billno":"cugyi5",}],"totalCount":1},"errorCode":"0","message":"","status":true}示例认证鉴权-基本认证苍穹开放平台基本认证,是结合了HTTPSBasicAuthentication的一种认证方式,在通过基本认证登录系统并调用接口的过程中,需要在请求的URL参数或请求header中带上openApiSign凭证,形式如下:{host}?openApiSign=xxx。10苍穹开放平台签名认证是一种第三方系统和金蝶云苍穹双向签名认证+加密/解密的一种认证方式,解决了第三方系统和金蝶云苍穹安全高效的接口交互,支持接口参数防篡改,数据完整性和隐私安全性,可支持金融交易,海关等高安全性应用场景。API接口签名认证开发流程1.配置签名认证相关参数2.编写签名认证相关签名和加密/解密代码或直接下载SDK代码3.编写业务接口处理代码4.调试接口认证鉴权-签名认证111.第三方系统产生随机会话密钥randomKey,把data域按配置的加密策略加密,同时将会话密钥通过平台公钥RSA加密,放入字段dgtlEnvlp中;2.第三方系统通过SHA256将随机数,时间戳及整个body报文进行加签后发请求到金蝶云苍穹开放平台API接口3.金蝶云苍穹开放平台通过openApiSign(SecretKey)基本验证后,获取代理用户,第三方应用ID及数据中心,通过后进行验证签名,验证签名过程中,要检查随机数是否合法,检查时间戳时间合法及参数的有效性。4.金蝶云苍穹开放平台验证签名通过后解密数据,还原原来的数据,进行API接口处理,查询或保存等5.金蝶云苍穹开放平台产生随机会话密钥randomkey,加密返回结果数据;6.金蝶云苍穹开放平台对返回结果数据进行SHA256加签7.第三方系统接收到返回结果进行验证签名,通过后下一步8.第三方系统解密返回的结果,进行相关业务处理认证鉴权-签名认证12API入参/API查询返回脱敏,默认采用平台脱敏方案,即平台设置了脱敏,则API接口会执行平台的脱敏方案,部分场景可能希望API接口字段不进行脱敏,可以在接口配置页面进行配置。加密脱敏13API授权:按第三方应用维度进行权限控制,调用方只允许调用API授权清单范围内的接口。IP白名单:提供IP访问控制的配置,只允许白名单内的IP可访问,提升安全性。第三方应用简介:https://vip.kingdee.com/article/225286231511115008?productLineId=2访问控制-API授权/IP白名单14特性亮点•限流维度:基于第三方应用、API、匿名维度。•限流策略:调用方在单位时间调用次数超过限流次数,快速失败。用户价值•安全可信:对客户端的访问频率进行限制,可以有效防止因为客户端大量的过载访问请求造成系统崩溃的风险,确保系统稳定性。访问控制-限流策略15特性亮点•发布WebService接口:支持将OpenAPI一键发布为WebService接口,支持SOAP1.1、SOAP1.2协议标准。用户价值•提升集成能力:支持客户企业内部所有使用WebService接口的集成需求。一键发布webservice16特性亮点•直接可以根据开放平台接口参数模型生成WSDLwebservice接口描述文件,可以直接通过SoapUI导入测试验证webservice接口用户价值•快速替换传统webservice接口,快速进行验证测试,相比传统webservice接口开发效率提高8倍以上。一键发布webservice17签名认证+自定义API接口\案例演示请求header:{"openApiSign":"SU9hV3Y2MUFYVl9Qb0diVURtb2Y4NFg4bXNWSUVGWFloTTBvbXA5Y0RuWT06MTM1NTYzMzUxOTYxMDU2MTUzNg==","openApiAuth":"5"}请求body报文{"dgtlEnvlp":"5521BE98B6203CBDB67E058316A023CFDCEEE04D81B0FE82AB11FACC2CD1C50093CD628039FA8998D91B88494A746738BAF871651BF3A8B88CFAFB49AD0D05AAD8859468D1013B1FC4E07AA654BB9B628201E708387F2B085623DB2A3156F2A63E0AB361B27CCAD22640351872C4A60A0CBF36CCE77E51D230D3281C864E9BA2","encryptData":"AAAADMqmmbtC96fj2WP2+XqsNHCWTxjCnxwq+rHNGx3GM2V1AjIyIMk8oB7txVqOV9J7qkJuP4z/Jn5sDfpJNo+DRKsX/ucYervIo893ezGBNIg1sTYqtqNjX4Z1PQ==","signature":"11f5060c22cd15555a69467ed8489b5b22dd69fa3f39dd87f92eece0351a8f08","signatureNonce":"99aedaa2-6fea-42e6-b3da-cd9f779c8556","thirdId":1520516744903424000,"timestamp":"2022-12-1916:41:48"}示例18本章小结API安全1.认证鉴权①AccessToken认证:支持从第三方系统免密跳转到苍穹,需要管理token生命周期,需要先获取appToken,再获取accessToken,请求接口时URL或header参数时带上accessToken即可访问;②摘要认证:支持SHA256算法,必须传时间戳和随机数,防止重放,支持参数防篡改;③JWT认证:全称是JSONWEBTOKEN,是一种用于双方之间传递安全信息的表述性声明规范,无需查DB,通过JWTtoken解析,访问资源的令牌;④基本认证,无需传数据中心,支持回调和pathvariable,类似/kapi/test/save/$/openApiSign/key1/value1/key2/value2;⑤签名认证:支持双向加密认证,包括签名和加/解密环节,签名采用SHA256算法,支持data域加密/解密,加密策略支持SM4,AES算法,支持参数防篡改,防止重放。2.脱敏加密①操作类API支持入参和返回结果根据苍穹平台设置的隐私方案进行脱敏,也可以根据业务需要针对某些接口设置不脱敏;脱敏处理还包括API日志都会同步进行脱敏;②API加密需要结合签名认证实现,加密策略需要在第三方应用配置,同时配置加密API列表,启动签名认证,配置好代理用户,接口的data域会被加密传输。3.访问控制①API授权,可以授权第三方应用只能访问固定的API接口,开启基本认证后,通过API授权缩小访问范围;②第三方应用IP白名单,可以授权某些IP或IP范围通过该第三方应用访问接口。19本章小结4.一键发布webservice(配置webservice参数,在线webservice测试验证,生成WSDL,导入soapUIc测试)①支持一键发布webservice,只需配置好webservice相关参数即可;②支持webservice在线测试,支持SOAP1.1,SOAP1.2标准webservice协议;③支持根据API接口模型生成WSDL接口描述文件,支持直接导入soapUI进行测试验证。WebserviceAPIThanksterimakasih感謝谢谢ありがとうขอบคุณ1993-2019金蝶国际软件集团有限公司

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

金蝶云·苍穹V5.0_API安全介绍 - 2022.12.14.pdf

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信