精华内容
下载资源
问答
  • 2019-02-21 14:28:17

    1、按公司标准走
    2、预定义的结构及字段要易懂,如有更改内部结构或字段,及时周知相关人
    3、多考虑安全性,例如,防抓取,防sql注入
    4、接口需要记录关键性日志
    5、接口性能,耗时要少,要有合适的缓存降低数据库压力
    6、即使按预定义格式返回给需求方,也要让自己的代码结构化,易维护

    更多相关内容
  • TPSC 4-2022 海洋环境安全保障平台数据共享接口规范
  • 高可用的接口安全规范

    万次阅读 2019-01-06 17:48:56
    一、前言 ① 上线产品 ...接口安全一般分三部分:调用方身份令牌token(验身份)、参数签名sign(防篡改)、时效性timestamp(防Doss攻击) 一、生成规则: Token:用户登录时,服务器为该用户生成身份令...

    一、前言

    ① 上线产品
    ② 涉及会员时长充值
    ③ …

    这时候,权限安全就显得十分重要了,下面是公司定制的一套高可用的安全机制 v1.0
    有空更新笔者的 SpringBoot 的实现代码。

    二、接口安全

    接口安全一般分三部分:调用方身份令牌token(防CSRF攻击)、参数签名sign(防篡改)、时效性timestamp(防Dos攻击)

    一、生成规则:

    1. Token:用户登录时,服务器为该用户生成身份令牌token、用于刷新token的refresh_token。token有效时间为1天,refresh_token有效时间为一个月。
      在使用过程中,所有接口都需要带该token。当token过期时,使用refresh_token获取新的token。当refresh_token也过期时,重新登录授权

    refresh_token的作用是,代替先前获取token的手机号、openid、密码等敏感参数。

    1. Sign: APP请求接口时附加在url上的参数。sign = (appkey+url+所有参数按照参数名字母升序排列后键值对拼接+timestamp+appkey)
      其中,参数的拼接不包括“=、&”等特殊符号,url字段主要作用在于签名RestFul接口。

    例如:接口为“http://api.acb.com/def/efg”,参数为“key1=value1&key2=value2”,则sign=md5(appkey+http://api.acb.com/def/efg+key1+value1+key2+value2+timestamp+appkey) ,注意明文拼接顺序,sign的作用是保护参数,可以只对关键参数签名。
    服务端收到请求时,验证该sign是否正确,若不正确,表明数据被篡改。

    1. timstamp:服务端收到请求时,如果该时间与此时的系统时间相差很大,表示该次请求无效。

    ex:https://xxxapis.xxx.com/userInfo/insertUserInfoByMobile?sign=7cbda029c0b481593ef4f1ac9be8e6c2&mobile=15111111111&timestamp=1570000000001

    二、使用流程:

    1. 给每套产品,分配一个独立的appkey。(如:app_lin3hong5cun4)
    2. 获取token:用户登录时,服务端接收手机号、或第三方Openid,根据token = md5(Appkey+手机号/Openid+timestamp)计算token。
      将键值对token-user_id存于Redis,并设置该键的生存时间(如:1天)
    3. 接口检验:
      (1)用户验证:使用token查redis。若token存在表明安全,将键值中的user_id用于查询业务。若token不存在,则是伪装用户,或者过期token。返回错误码,重新获取token
      (2)签名验证:使用规则计算sign,若与接口返回的sign一致,表示参数安全,可以继续执行业务。若不一致,表示参数被改,该次请求无效,返回错误码。
      (3)验证时效性:若接口中的timestamp与系统时间相差太大,可能是攻击,直接返回错误码。

    三、返回码

    1、普适码

    返回码描述
    200成功
    400失败,未知错误

    2、授权/令牌返回码

    返回码描述
    10000非法请求参数
    10001无权限访问
    10002token过期
    10003refresh_token过期
    10004sign 无效
    10004app_key无效
    10006timestamp参数无效
    10007访问IP不合法
    展开全文
  • 2020 民用航空网络安全监测数据接口格式规范
  • 民用航空网络安全监测数据接口格式规范MHT0075-2020.pdf
  • GM/T 0017-2012 《智能密码钥匙...本标准规定了基于PKI密码体系的智能密码钥匙应用接口数据格式,给出了接口相关数据的类型、格式、参数的定义和描述、安全性要求。 本标准适用于智能密码钥匙产品的研制、使用和检测。
  • 微信支付接口开发的安全规范

    千次阅读 2017-06-13 17:18:22
    第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。 特别注意以下重要...

    1、

    签名算法------(签名校验工具)

    签名生成的通用步骤如下:

    第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。

    特别注意以下重要规则:

    1. ◆ 参数名ASCII码从小到大排序(字典序);
    2. ◆ 如果参数的值为空不参与签名;
    3. ◆ 参数名区分大小写;
    4. ◆ 验证调用返回或微信主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。
    5. ◆ 微信接口可能增加字段,验证签名时必须支持增加的扩展字段

    第二步,在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。

    key设置路径:微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置

    举例:

    假设传送的参数如下:

    appid: wxd930ea5d5a258f4f

    mch_id: 10000100

    device_info: 1000

    body: test

    nonce_str: ibuaiVcKdpRxkhJA

    第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:

    stringA="appid=wxd930ea5d5a258f4f&body=test&device_info=1000&mch_id=10000100&nonce_str=ibuaiVcKdpRxkhJA";

    第二步:拼接API密钥:

    stringSignTemp=stringA+"&key=192006250b4c09247ec02edce69f6a2d"

    sign=MD5(stringSignTemp).toUpperCase()="9A0A8659F005D6984697E2CA0A9CF3B7"

    最终得到最终发送的数据:

    <xml>

    <appid>wxd930ea5d5a258f4f</appid>

    <mch_id>10000100</mch_id>

    <device_info>1000<device_info>

    <body>test</body>

    <nonce_str>ibuaiVcKdpRxkhJA</nonce_str>

    <sign>9A0A8659F005D6984697E2CA0A9CF3B7</sign>

    </xml>

    2、

    生成随机数算法

    微信支付API接口协议中包含字段nonce_str,主要保证签名不可预测。我们推荐生成随机数算法如下:调用随机数函数生成,将得到的值转换为字符串。

    3、

    商户证书

    (1)获取商户证书

    微信支付接口中,涉及资金回滚的接口会使用到商户证书,包括退款、撤销接口。商家在申请微信支付成功后,收到的相应邮件后,可以按照指引下载API证书,也可以按照以下路径下载:微信商户平台(pay.weixin.qq.com)-->账户中心-->账户设置-->API安全-->证书下载 。证书文件有四个,分别说明如下:

    表4.2:证书文件说明

    证书附件描述使用场景备注
    pkcs12格式
    (apiclient_cert.p12、
    包含了私钥信息的证书文件,为p12(pfx)格式,由微信支付签发给您用来标识和界定您的身份撤销、退款申请API中调用windows上可以直接双击导入系统,导入过程中会提示输入证书密码,证书密码默认为您的商户ID(如:10010000)

    以下两个证书在PHP环境中使用:

    证书附件描述使用场景备注
    CA证书
    (rootca.pem)
    微信支付api服务器上也部署了证明微信支付身份的服务器证书,您在使用api进行调用时也需要验证所调用服务器及域名的真实性该文件为签署微信支付证书的权威机构的根证书,可以用来验证微信支付服务器证书的真实性部分工具已经内置了若干权威机构的根证书,无需引用该证书也可以正常进行验证,这里提供给您在未内置所必须根证书的环境中载入使用
    证书pem格式
    (apiclient_cert.pem)
    从apiclient_cert.p12中导出证书部分的文件,为pem格式,请妥善保管不要泄漏和被他人复制PHP等不能直接使用p12文件,而需要使用pem,为了方便您使用,已为您直接提供您也可以使用openssl命令来自己导出:openssl pkcs12 -clcerts -nokeys -in apiclient_cert.p12 -out apiclient_cert.pem
    证书密钥pem格式
    (apiclient_key.pem)
    从apiclient_key.pem中导出密钥部分的文件,为pem格式PHP等不能直接使用p12文件,而需要使用pem,为了方便您使用,已为您直接提供您也可以使用openssl命令来自己导出:openssl pkcs12 -nocerts -in apiclient_cert.p12 -out apiclient_key.pem

    (2)使用商户证书

    • ◆ apiclient_cert.p12是商户证书文件,除PHP外的开发均使用此证书文件。
    • ◆ 商户如果使用.NET环境开发,请确认Framework版本大于2.0,必须在操作系统上双击安装证书apiclient_cert.p12后才能被正常调用。
    • ◆ 商户证书调用或安装都需要使用到密码,该密码的值为微信商户号(mch_id)
    • ◆ PHP开发环境请使用商户证书文件apiclient_cert.pem和apiclient_key.pem ,rootca.pem是CA证书。

    各版本的调用实例请参考微信支付提供的Demo外链

     

    (3)商户证书安全

    证书文件不能放在web服务器虚拟目录,应放在有访问权限控制的目录中,防止被他人下载。商户服务器要做好病毒和木马防护工作,不被非法侵入者窃取证书文件。

    4、

    商户回调API安全

    在普通的网络环境下,HTTP请求存在DNS劫持、运营商插入广告、数据被窃取,正常数据被修改等安全风险。商户回调接口使用HTTPS协议可以保证数据传输的安全性。所以微信支付建议商户提供给微信支付的各种回调采用HTTPS协议。请参考:HTTPS搭建指南

    本人提供微信、支付宝的银行接口通道,QQ932636688/电话17605918869

    说明:通过银行连微信、支付宝可以更低费率,可以用法人对私账户结算,优势多多

    接口类型:扫码、公众号、APP、H5等

    展开全文
  • 数据接口标准规范

    万次阅读 2019-08-09 16:24:21
    接口规范定义了与其他系统进行数据交换的数据规范和报文规范。 2 规范性引用文件 下列文件中的条款通过本标准的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均...

    1 范围
    接口规范定义了与其他系统进行数据交换的数据规范和报文规范。
    2 规范性引用文件
    下列文件中的条款通过本标准的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。
    GB/T 1.1 标准化工作导则 第1 部分:标准的结构和编写
    GB/T 35778—2017 企业标准化工作 指南
    GB/T 5271.8-2001 信息技术 词汇 第8部分:安全
    GB/T 18811-2002 电子商务基本术语
    DL/T 485—2018 电力企业标准体系表编制导则
    DL/T 800—2018 电力企业标准编写导则
    DL/T 1004 电力企业管理体系整合导则
    3 接口服务描述规范
    3.1 概述
    接口服务描述是业务服务的集中描述,包含其提供的功能以及如何进行调用;是在电力安全系统发布的服务提供方和服务调用方之间的规约。接口服务描述必须包含对各个方面的人员有意义并可理解的信息,接口服务描述要包含概要和详细服务信息,使用平台/技术实现无关的语言进行描述以业务为导向。
    接口服务描述主要由2部分组成:接口服务属性和接口服务规约。
    3.2 接口服务属性
    接口服务属性是业务接口服务的描述,它提供组织和性能相关要求,是接口服务提供方和接口服务消费方之间服务协议的依据。定义一个接口服务应该包含的属性如下所示:
     服务编码(必选):能体现出接口服务的业务含义的唯一识别编码,应遵循统一的编码规则,具体定义请参考交易服务代码规范;
     接口服务中文名称(必选):能体现接口服务的意义,简单概括,应少于30个汉字;
     接口服务描述(必选):清晰描述接口服务的业务功能;
     服务提供方(必选):提供此接口服务的业务系统;
     服务消费方(可选):可能会使用到此接口服务的业务系统;
     服务等级(必选):分为紧急、普通和低级;
     报文XSD文件名:指请求报文XSD文件名和响应报文XSD文件名;
     数据量(必选):运行期间单次访问的数据量均值和范围,比如均值为200K,范围:100K-300K;
     运行效率(可选):单次访问的响应时间均值和范围;
     支持并发(可选):此接口可支持的并发访问量;
     是否可重(可选):接口是否能被多次重试调用;
     超时说明(必选):提供超时时间及其说明。
     返回码说明(必选):业务上需提供返回码和返回信息给服务消费方。
     技术方式(必选):明确此接口的技术方式,其技术方式必须为《电力安全系统接入规范》中规定的技术方式;
     调用说明(必选):提供调用此接口服务的必要条件。根据《应用平台接入规范》中定义的接入技术方式:
    (1)Web Service:WSDL文件或者WSDL地址;
    (2)EJB:EJB访问地址,链接用户名/密码,JNDI名称,EJB的jar文件;
    (3)JMS:请求和返回结构的定义文件,JMS链接地址,Queue或者Topic的JNDI 名字。例如:jms//hostname:port/ConnectFactory/ObjectJNDI。
     安全要求(必选):描述此接口服务的安全要求。
    按照接口服务定义规范生成的《接口服务列表模板》文档,各系统可参考此文档定义并提交接口。
     接口服务调用权限(必选):描述此接口服务的调用权限。
     描述该接口可以被哪些系统调用,即服务的调用权限。
    3.3 接口服务规约
    接口服务规约是接口及参数的技术描述,定义所有绑定和传输信息,以及所有支持的操作及相关输入、输出的格式,EJB或JMS等以XSD格式描述;而Web service协议通常以WSDL形式存在,被称为服务WSDL。接口服务规约包含:详细接口服务操作描述、数据类型、消息格式和结构、绑定的传输协议和服务的位置。
    4 接口服务实现规范
    4.1 设计规范
     接口服务命名要遵循一致的服务命名规范,参见下一章;
     接口服务应该遵守统一的报文规范,参见下一章;
     接口服务为了重用可以适当提高接口的颗粒度;
     接口服务的设计和定义应该与接口的实现分阶段进行;
     接口服务中传输的报文要求都是经过校验的,符合业务规则的,否则不符合报文会被返回;
     接口服务应充分考虑到扩展性,例如-在定义数据结构时多个字段封装为一个可扩展的对象;
     接口服务应尽可能通用,对于同一业务对象,应避免为不同系统开发不同接口服务。
    4.2 检查规范
    接口服务抽取后要对服务的交互进行检查,通过此检查来发现该接口服务是否合理。以下列出的是对接口服务进行检查的指导性原则,这些原则在运用的时候可以根据具体的项目情况进行裁减和选择。
     业务服务能否可以被一个以上的流程使用;
     业务服务是否是灵活和完整的;
     业务服务是否是与业务相关、有业务含义并被业务人员所能理解的;
     该服务在多大程度上依赖于其它业务服务;
     该服务是否是无状态的服务;
     该服务的描述是否和其它服务的描述相冲突;
     是否没有类似或重复的服务存在。
    5 报文规范
    5.1 报文组织格式
    报文在组织形式上划分为技术报文和业务报文两个部分,目的是将一些技术控制信息与业务信息分离开来,一方面可使逻辑上更加清晰,一方面可以提高系统处理的效率。
    根据应用集成标准的要求,为使不同应用系统能够直接有效的进行集成,电力安全系统主要使用XML格式报文。无论在何种传输协议上,如EJB、Web Service、JMS、MQ、FTP等,不同系统之间面对的报文格式需要尽量统一,提高处理的效率。同时为了保障EJB集成的高效,电力安全系统同时提供EJB协议下的标准开放的JavaBean对象格式报文。无论是XML格式还是JavaBean对象格式,只是报文数据的表现形式不同,要求这2者在语义上必须等价。
    5.2 业务报文
    业务报文表达了业务服务的业务语义,包含业务逻辑所需要的业务属性。
    业务报文包括业务请求报文和业务响应报文,对应业务服务的输入参数和输出参数。电力安全系统需要能够根据要求配置这些服务参数是否进行业务语义上的校验,需要能够按照标准通用开放的形式定义业务报文格式及其效验格式。具体定义分别参见下面的XML报文和JavaBean报文中的业务报文规范。
    5.3 XML报文规范
    采用XML方式来传输接口数据,XML报文满足通用性和扩展性原则,能满足业务的各种需要,而且方便开发人员应对不断变化的业务需求,方便新交易的开发。

    1. XML报文结构
      XML从报文结构上体现技术报文和业务报文,如下图:

     service为技术报文根节点;
     head为技术报文头信息;
     body节点为报文体,业务报文填写在此节点中。
    XML的结构是以XSD形式定义,需配套提供技术报文和业务报文的XSD定义,具体见下面2个章节。
    2. 技术报文及XSD
    技术报文的定义结构如下:

    技术报文对应的XSD格式定义如下:

    <?xml version="1.0" encoding="UTF-8"?>

    <xs:schema xmlns:xs=“http://www.w3.org/2001/XMLSchema” xmlns=“http://www.chinatax.gov.cn/spec/” targetNamespace=“http://www.chinatax.gov.cn/spec/” elementFormDefault=“qualified” attributeFormDefault=“unqualified”>
    <xs:complexType name=“headType”>
    xs:sequence
    <xs:element name=“tran_id” nillable=“false”>
    xs:annotation
    xs:documentation交易服务ID</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”/>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“channel_id”>
    xs:annotation
    xs:documentation渠道ID</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“100”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“tran_seq”>
    xs:annotation
    xs:documentation交易流水号</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“32”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“tran_date”>
    xs:annotation
    xs:documentation交易日期</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“8”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“tran_time”>
    xs:annotation
    xs:documentation交易时间</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“9”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“rtn_code” minOccurs=“0”>
    xs:annotation
    xs:documentation交易返回代码</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“1”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“rtn_msg” type=“RtnMsg” minOccurs=“0”/>
    <xs:element name=“file_path” minOccurs=“0”>
    xs:annotation
    xs:documentation文件路径</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:maxLength value=“512”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“serv_version” minOccurs=“0”>
    xs:annotation
    xs:documentation服务版本号</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:maxLength value=“10”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“expand” type=“paramListType” minOccurs=“0” maxOccurs=“unbounded”/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name=“paramListType”>
    xs:annotation
    xs:documentation参数列表类型</xs:documentation>
    </xs:annotation>
    <xs:sequence minOccurs=“0”>
    <xs:element name=“name”>
    xs:annotation
    xs:documentation参数属性名</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”/>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“value”>
    xs:annotation
    xs:documentation参数值</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”/>
    </xs:simpleType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name=“RtnMsg”>
    xs:annotation
    xs:documentation返回信息</xs:documentation>
    </xs:annotation>
    xs:sequence
    <xs:element name=“Code”>
    xs:annotation
    xs:documentation返回码小类代码</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”>
    <xs:length value=“3”/>
    </xs:restriction>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“Message”>
    xs:annotation
    xs:documentation返回信息</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”/>
    </xs:simpleType>
    </xs:element>
    <xs:element name=“Reason”>
    xs:annotation
    xs:documentation原因及处理办法</xs:documentation>
    </xs:annotation>
    xs:simpleType
    <xs:restriction base=“xs:string”/>
    </xs:simpleType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    <xs:element name=“service”>
    xs:annotation
    xs:documentation根节点</xs:documentation>
    </xs:annotation>
    xs:complexType
    xs:sequence
    <xs:element name=“head” type=“headType”/>
    <xs:element name=“body” type=“xs:string”>
    xs:annotation
    xs:documentation报文体</xs:documentation>
    </xs:annotation>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    3. 业务报文及XSD
    业务报文包含请求报文和响应报文,是描述业务服务输入输出的关键结构,在语义描述上必须明确唯一,这是服务数据描述的业务关键内容。请求报文XSD和响应报文XSD定义将会在电力安全系统上进行管理,可以根据需要对传输的报文进行XSD格式的业务语义效验。其定义规范要求及XSD定义请参考下一章的业务报文定义规范。
    在对XML内容传输时,对于统一入口参数的,将技术报文和业务报文组装成一个报文进行传递,为了避免电力安全系统或某些场景对业务报文的不必要解释处理,把业务报文内容放置在“body”节点的<![CDATA[]]>内包裹以提高系统效率,根据W3C组织标准,CDATA关键字内部的XML报文是不会被XML解析器解析。例如:<![CDATA[业务报文内容]]>。
    而对于EJB或Web Service的多入口访问,技术报文和业务报文是分别2个参数传递,则业务报文内容不使用<![CDATA[]]>包裹,直接将技术报文XML和业务报文XML进行传递。
    4. 扩展报文编写方法
    扩展属性放在技术报文的expand节点中,每增加一个扩展属性,则需要增加一个expand节点,如下身份密码、人员和机关有3个扩展expand节点并行编写。

    identityType
    4432b7c8a61243f0a62813f01e47a1bb


    sjry
    24406060733


    sjjg
    14406820018

    5. XML报文示例

    <?xml version="1.0" encoding="UTF-8"?> SWZJ.HXZG.SB.CXSPHM GDGS.ZJNB.HXQD eea4ff11269045068f421dd3d654804e 20120416 083231475 identityType 4432b7c8a61243f0a62813f01e47a1bb sjry 24406060733 sjjg 24406820018 <![CDATA[<?xml version="1.0" encoding="UTF-8"?>aaaaaaaaaaaStringStringString]]>

    5.4 JavaBean对象报文规范

    1. JavaBean对象定义要求
      JavaBean对象报文是XML格式的对象表达形式,包括技术报文对象和业务报文对象。其在语义上等价于XML报文,使用Java平台语言定义,是POJO对象,不能依赖于某个私有框架,应具有通用性和开放性。
      对象报文包含涉及到的所有对象(技术报文对象和业务报文对象)及其子对象都必须实现序列化接口Serializable,同时都需要显示的定义serialVersionUID以解决序列化兼容问题。这些对象的定义应只包含与本业务服务相关的属性,不能包含与后台处理相关的属性。
    2. 技术报文对象定义
      技术报文对象包含报文根对象、报文头对象、报文体对象,等价于XML报文的技术报文XSD定义。
      报文根对象包含2个对象属性即报文头对象和报文体对象。
      报文头对象包含交易服务、渠道系统、交易流水、交易日期和时间等简单属性;如果有扩展属性,则需要有扩展对象集合,以key/value形式展现;对于交易服务的返回,则还需要包含返回对象,包含交易返回码以及交易失败时的错误原因信息。
      报文体对象则是业务报文对象的展现形式,需要通过序列化二进制形式作为报文体对象的属性,这是为了避免电力安全系统对其中的业务报文对象的序列化反序列化,提高系统的处理效率和避免业务报文对象依赖的部署发布影响。业务报文对象定义则具体参见下一节。
    3. 业务报文对象定义
      业务报文对象是业务服务的输入输出参数对象,包含请求报文对象和响应报文对象,分别等价于业务请求报文XSD定义和响应报文XSD定义,XSD定义规范要求请参考下一章的业务报文XSD定义规范。
      考虑到业务报文对象及其结构关系和数据类型的多样性及复杂性,以及对象与XSD之间和XML之间转换以及语义效验的通用标准性,建议业务报文对象遵守业界公开普及的JSR 222标准规范,该规范已经作为Java6内置标准OXM规范,采用Java6内置的JAXB工具即可实现XSD/XML和对象之间的正向反向转换映射。
      6 业务报文XSD定义规范
      6.1 元数据和数据元的要求
      元数据规范要求,同一个业务含义的字段在各个系统中命名要保持一致。数据元需要遵循的数据元规范,数据元公共报文名为TaxMLpublic.xsd,供所有业务报文引用。
      6.2 业务报文分类
      业务报文从不同角度存在多种分类方式:
    4. 从交易过程分:请求报文、响应报文和非交易报文(消息类报文)。
    5. 从交易类型分:提交类报文和查询类报文和校验类报文。
    6. 从报文内容分:表单类报文和非表单类报文。
      6.3 业务报文XSD文件命名
      电力安全系统业务报文XSD文件命名定义为多级字符串,总层级结构为六级,可包括大写字母和数字,各级间通过“_”进行相连。对于统一的业务服务,业务报文XSD文件命名由统一制定;对于其他自行增加的非统一的业务报文,可按照下述规范制定文件命名规范,,但总层级结构不能超过六级,总长度不能超过100位字符。
    7. 业务报文XSD命名规范第一级
      1、所有业务报文文件均以“TaxMLBw”作为命名前缀,其中TaxML做为行业标准要求,Bw为报文的简称。
      2、表单类业务报文编制时,每一张表单对应一个表单类业务报文,如果是依附于主表存在的附表报文,定义报文时要与主表业务报文放在同一目录下,其命名规范如下:
      TaxMLBd_表证单书编号_版本号
      3、表证单书编号详见GxB政务信息系统建设项目工程《代码集》。
    8. 业务报文XSD命名规范第二级(系统标识)
      参见本文5.2.2.2章节 服务命名规范(系统标识)
    9. 业务报文XSD命名规范第三级(主题类型)
      参见本文5.2.2.3章节 服务命名规范(主题类型)
    10. 业务报文XSD命名规范第四级(服务序号)
      服务序号采用5位数值型标识,初始值为00001,顺序累加1,服务序号一经使用,不得更改。
    11. 业务报文XSD命名规范第五级
      所有请求报文都以“Request”作为标识;所有响应报文都以“Response”作为标识;
    12. 业务报文XSD命名规范第六级(版本号)
      所有版本号前缀采用大写字母“V”标识,版本号采用两位数值型,中间使用字符串“.”进行连接,初始值为1.0,数序,如XSD报文有版本变更或升级,版本号顺序累加0.1。
    13. 业务报文XSD命名示例
      以GxB政务信息系统建设项目核心征管系统消费申报事前监控及获取期初数据业务报文为例,其XSD业务报文命名为:
      请求报文:TaxMLBw_HXZG_SB_00001_Request_V1.0.xsd
      响应报文:TaxMLBw_HXZG_SB_00001_Response_V1.0.xsd
      6.4 业务报文XSD编制
    14. 基本原则
       业务报文编制时,对于已存在数据元或聚合数据元的部分,应该引用数据元或聚合数据元;
       在满足交换需求的前提下,尽可能利用已有的数据集合或业务报文,避免重复编制;
       所有业务报文都需要包含(include)TaxMLpublic.xsd文件,从中引用数据元;
       业务报文的第一层结构中,只能使用“复杂类型”(complexType),不得使用“element”、“group”等其他类型;
       所有数据集合之下只能存在一层结构,若需要嵌套多层结构,必须抽象成多个数据集合(complexType),再进行引用。
    15. 业务报文的前导说明
    16. 字符集:encoding属性值为“UTF-8”。
    17. 命名空间:依据SW/T XX—201X《基于XML的数据交换格式设计规则》,
      XML的命名空间定义为:http://www.chinatax.gov.cn/dataspec/。
    18. 前导说明示例:参照《SW/T XX—201X基于XML的数据交换格式设计规则》,如:
    <?xml version=”1.0” encoding=”UTF-8”?>

    <xs:schema xmlns:xs=”http://www.W3C.org/2001/XMLSchema”
    targetNamespace=”http://www.chinatax.gov.cn/dataspec/”
    xmlns=”http://www.chinatax.gov.cn/dataspec/”>
    应在前导说明部分以注释的形式说明以下内容:
    ——数据交换格式的名称;
    ——数据交换格式的版本;
    ——XML模式编写单位或编写人;
    ——XML模式完成时间。
    3. 表单类业务报文
    按照通常的表单样式,表单类业务报文通常存在几个数据集合:
     “xx表单业务报文”:这是表单类业务报文的根元素数据集合,命名通常为“表单名称”+“Ywbw”,此集合下只添加一个元素,这个元素引用“xx表单”集合;
     “xx表单”:这是实际的业务表单内容,包括表头和表体集合;
     表头:对应表单上除表体具体内容外的通用类信息,例如编制方、时间等等;
     表体:对应表单上各行、列等具体内容。
    表单中业务含义明确的集合可以抽取为数据集合。
    例如,所有申报表业务报文的“表头”中都应使用聚合数据元中的“申报表公共表头”(SBBHead),若在该集合之外表单上还有其他的表头信息,应将其他的表头信息组成一个“私有表头”集合,与“公共表头”组合成为该申报表的“表头”集合。
    申报表业务报文中的“xx申报表”集合中,除表头和表体之外,可增加一个可空的“预留:附属表体”(BodyAffix)元素,类型设置为“xs:anySimpleType”。
    申报表表体的编制依据表样可横向抽取明细信息或纵向抽取表列信息。
    一般来说,在编制申报表的标准时,也会同时编制申报表提交和申报表明细查询的接口,这两类接口都有固定的请求、响应报文模式,申报表提交的请求报文和申报表明细查询的响应报文都应直接引用申报表表单业务报文进行编制。
    4. 非表单类业务报文
    非表单类业务报文可根据实际的数据交换需求内容编制,其中存在多行重复的内容可抽取为数据集合。编制中应尽量使用聚合数据元。

    展开全文
  • 5.2 数据采集接口 9 5.3 数据源信息管理 9 5.4 数据接入 10 5.4.1 OMC数据采集 10 5.4.2 其他网管系统数据采集 10 5.5 采集管理 10 6 数据统一存储 11 6.1 数据存储能力 11 6.2 存储管理 11 7 数据统一处理 11 7.1 ...
  • 《成都市城市安全和应急管理大数据共享规范第4部分∶数据交换接口规范》编制说明 pdf文档整理.zip
  • 如何保证API接口数据安全

    千次阅读 2021-01-31 21:03:47
    网页或者app,只要抓下包就可以清楚的知道这个请求获取到的数据,这样的接口对爬虫工程师来说是一种福音,要抓你的数据简直轻而易举。 数据安全性非常重要,特别是用户相关的信息,稍有不慎就会被不法分子盗用,...
  • 转融通参与人数据接口规范.doc
  • 福建省“一品一码”食品安全追溯管理食品生产经营企业数据对接接口技术规范标准.doc
  • API接口安全

    千次阅读 2021-12-29 15:20:00
    (1)通信协议:API 一般利用 HTTPS 等加密通讯协议进行数据传输,以确保数据交互安全。 (2)域名:用于指向 API 在网络中的位置。API 通常被部署在主域名或者专用域名之下,接入方可通过域名调用相关 API。 ...
  • 接口安全性考虑

    千次阅读 2022-03-09 11:49:03
    接口安全
  • API 接口安全处理

    千次阅读 2022-03-16 14:25:42
    开放 API 接口如果没有经过安全处理,则很容易出现三类安全问题,包括信息截获、篡改与泄露。 首先是用户密码容易被截获,比如某家公司在开发开放式 API 时,没有对其进行安全控制,那么该公司的客户信息很容易被...
  • 通过适当的系统功能模块划分、灵活的协议设计和规范的模块间接口设计,配合煤矿监控数据的变值变态处理方法和利用高效的完成端口等网络异步通信技术,提出了一个基于C/S架构的煤矿安全监控联网系统模型,基于该模型的...
  • APP的数据来源就是API接口,所以API接口对于APP的意义来说不言而喻。 设计API接口最重要的考虑点就是安全机制。 我们这边将从三个方面来考虑怎么设计一个安全的API接口。 防篡改 防篡改就是防止请求的URL参数值发送...
  • 《CC2480接口规范》(中).pdf 《CC2480数据手册》(中).pdf 《CC2480环境相容性确认》(中).pdf 《CC24XX 折叠偶极子天线应用说明》(中文).pdf 《CC2530数据手册》(中).pdf 《Z-Stack API 接口》(中).pdf 《Z-Stack中...
  • 数据安全实践指南

    千次阅读 2022-04-07 11:25:30
    随着互联网、物联网、云计算等技术的快速...在此背景下,国内外数据安全相关法律法规相继出台,以完善大数据安全领域的防护和技术要求,助力大数据安全建设。相较于传统网络安全数据安全的标准化起步较晚,目前...
  • 互联网产品如何保障接口安全

    千次阅读 2022-03-02 18:29:29
    用户注册流程:用户注册,用户登录,登录后接口访问。 2. 游客直接访问 后端清晰的知道当前访问属于游客,可以明确控制游客权限,比如限制可访问资源的内容,数量和时间。 3. 用户注册 防止资源消耗:比如短信...
  • 数据安全

    千次阅读 2020-11-24 11:50:49
    在实现大数据集中后,如何确保网络数据的完整性、可用性和保密性,不受到信息泄漏和非法篡改的安全威胁影响,已成为政府机构、事业单位信息化健康发展所要考虑的核心问题。 大数据安全概况 a)标准化现状:  &...
  • 接口安全-Token

    万次阅读 2020-06-20 17:14:28
    根据Cookie规范,浏览器访问Google只会携带Google的Cookie,而不会携带Baidu的Cookie。浏览器判断一个网站是否能操作另一个网站Cookie的依据是域名。 Session Session是另一种记录客户状态的机制,不同的是Cookie...
  • 本标准定义了金融数据密码机的相关术语,规定了金融数据密码机功能要求、接口要求、硬件要求、业务要求、安全性要求和检测要求等内容。 本标准适用于金融数据密码机的研制、使用,也适用于指导金融数据密码机的检测。
  • 本文重点介绍了DSP集成的安全产品(安全技术能力)和差距分析,DSP是以数据安全为核心的保护方案,以数据发现和数据分类分级为基础,混合了多种技术来实现数据安全防护。例如:数据访问控制,数据脱敏,文件加密等,...
  • 数据传输安全(一)

    千次阅读 2021-12-29 20:43:58
    物理接口与AF设备面板上的接口一一对应(eth0为Management口),根据网口数据转发特性的不同,可选择路由、透明、虚拟网线和旁路镜像4种类型,前三种接口又可设置WAN或非WAN属性)。 物理接口无法删除或新增,物理接口...
  • 2.2.2安全数据完整性 2.2.3【新一代寄递平台:订购服务申请】接口 2.2.4【新一代寄递平台:服务审核】接口 2.2.5【新一代寄递平台:下单取号】接口 2.2.6【新一代寄递平台:订单接入】接口 2.2.7【新一代寄递平台:白...
  • 数据安全法整理学习笔记

    千次阅读 2022-04-08 01:11:12
    目的:规范数据处理活动,保障数据安全,促进数据开发利用,保护个人、组织的合法权益,维护国家主权、安全和发展利益。 范围:境内数据处理活动;境外数据处理活动但损害中华人民共和国国家安全、公共利益或者公民...
  • 前后端接口规范

    千次阅读 2021-02-20 14:21:19
    通常我们都会采用 REST 方式来提供接口, 使用JSON来传输数据. 名词 含义 前端 Web前端, APP端, 桌面端等一切属于用户界面的这一层 后端 即服务器端, 指一切属于用户界面之下的这一层 前后端接..
  • 数据安全-整体解决方案

    千次阅读 2022-02-21 18:10:31
    数据安全面临的风险和压力 企业内部监管: 目前企业缺少数据安全方面的技术手段和有效的管理制度,增加数据泄漏风险。 另一个就是由于内部员工安全意识不足造成数据信息泄漏。 外部法律和合规要求: 随着国内外政府...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 235,654
精华内容 94,261
关键字:

数据接口安全规范