油气液体化工品物流监控企业接入规范.doc_第1页
油气液体化工品物流监控企业接入规范.doc_第2页
油气液体化工品物流监控企业接入规范.doc_第3页
油气液体化工品物流监控企业接入规范.doc_第4页
油气液体化工品物流监控企业接入规范.doc_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

附件3南京海关物流监控信息化管理系统报文交换方式技术要求一、应用方式介绍南京海关于外联网上设置报文接收MQ通道,企业将符合格式要求的报文,按南京海关MQ报文交换标准进行自动传输,同时提供相应接收MQ通道,海关负责将有关回执信息写入该通道,由企业自行读取处理。报文交换基本流程图流程说明:1企业将报文(运抵报告、理货报告),加签,压缩、通过IPSEC VPN安全通道,发送至南京海关外联网上的服务器端程序指定的MQ队列中。 2南京海关从外联网的指定MQ队列取出企业报送的报文,经过解压缩,验证签名,存证后发往海关管理网,供海关关员业务处理。同时发送接收回执。3海关关员在物流系统进行审批处理或新舱单系统中进行舱单业务处理。4海关系统将生成的业务回执签名、压缩、通过IPSEC VPN安全通道,写入企业端回执信息接收队列中;5企业系统从企业队列中读取回执,解压、验签,进行进一步的业务处理。二、技术要求采用该方式的企业,需进行如下准备工作:(一)实现与海关的VPN联网企业准备一条具有固定公网IP地址的互联网接入线路,配备VPN接入设备。建议VPN设备型号和规格如下:Juniper Netscreen SSG5(南京海关端使用的是Juniper的产品,推荐使用该产品)其他可选设备:Cisco ASA 5505Fortinet Fortigate 30B 按照采用IPSec VPN技术与南京海关联网的设备配置规范(详见本文第三部分)的规范配置实施与海关网络的互联。南京海关技术处提供相关技术支持,联系方式为南京海关技术热线(二)购置与本系统配套的CA认证卡(USB Key)该Key的购置方法与网站程序录入方式相同,但企业需要基于该Key进行编程,实现报文发送接收的加验签。CA公司提供报文签名、验签控件等相应编程接口,各企业可在开发中使用,相关的技术支持由CA公司承担。报文数字签名要求:与海关交换的报文和回执均须进行数字签名,可采用省CA公司或联通CA公司的CA体系,由用户自行选择。企业用户需基于USBKey对向海关申报的XML报文内容进行加签,并对海关回执报文验签。加签验签的标准以海关总署2008年81号公告中中国海关进出境水运、空运货物舱单报文格式制定说明有关报文数字签名的要求为准。经与两CA公司协商,两家公司均已开发出符合上述规范的报文加签验签的标准接口,企业用户如开发程序需要,可与相关CA公司联系,有关CA公司提供相应开发接口程序及技术支持CA公司技术开发接口联系人如下:联通CA 公司联系人:吉庆祥, 电话邮箱165.com省CA公司联系人:刘洋,电话手机邮箱:(三)生成符合标准的报文企业按照南京海关报文规范,从自身业务系统中抽取形成标准报文。具体报文规范及格式要求见南京海关相关公告。(四)开发报文传输软件企业需开发报文传输系统,按照海关确定的标准接口,把海关规定申报的报文数字签名后发送给海关,同时接受海关回执报文。报文传输采用MSMQ3.0软件,CA体系支持江苏CA和联通CA两类。1.具体传输方式企业端需要建立2个MQ队列。其一为接收海关业务回执的队列,此队列为事务性队列。企业需要提供相关MQ地址信息(格式FORMATNAME:DIRECT=TCP:private$client_sample_response,其中“”应填海关在VPN网上分配给企业MQ服务器的地址)。其二为接收报文是否验签成功的传输回执接受队列,此队列为非事务性队列。企业需要提供相关MQ地址等信息(格式FORMATNAME:DIRECT=TCP:private$client_sample_receipt,其中“”应填海关在VPN网上分配给企业MQ服务器的地址),海关端程序将向两个队列中写入相应回执信息。企业端程序负责从相应队列中读取回执,如企业需要可以进行相关报文存证,企业要对队列进行实时监控,保持MQ报文传输服务器的稳定性和消息队列的畅通。针对海运部分系统及监管点部分系统,海关分别提供2个报文接收队列,业务报文接收队列为MSMQ事务性队列,传输回执接受队列为非事物性队列。业务报文接收队列用于接收企业申报的业务报文数据,传输回执接收队列用于接收海关业务回执报文是否验签成功的信息。2.目前海关接受队列地址。l 新舱单及海运部分报文海运业务报文接收队列(事务性队列)FORMATNAME:DIRECT=TCP:24private$east_sample_message_qy海运传输回执接受队列(非事务性队列)FORMATNAME:DIRECT=TCP:24private$east_sample_responsel 监管点部分报文监管点业务报文接收队列(事务性队列)FORMATNAME:DIRECT=TCP:24private$east_eci_message_qy监管点传输回执接受队列(非事务性队列)FORMATNAME:DIRECT=TCP:24private$east_eci_response3.企业报文传输分两个阶段:企业申报报文发送阶段及企业回执报文接受阶段。具体流程图如下企业申报报文发送阶段,主要步骤为6步:(1)企业应用系统生成符合海关规范的申报报文,(2)调用相应的CA控件队报文进行数字签名(3)将数字签名后的报文进行ZIP压缩(4)将压缩后的数据内存流转换成字符数组,并作base64编码。(5)将Base64编码后的报文数据写入海关企业报文接受队列中。 注意:写入规范为将申报报文的文件名赋值给消息的标签(Label)属性,报文内容赋值给消息的报文体(Body)属性。企业传输回执接受队列地址赋值给消息的回执报文队列(ResponseQueue)属性。(6)从企业传输回执接受队列中收取海关传输回执消息。回执消息的标签(Label)属性为回执报文的文件名(即企业申报报文的文件名),回执消息的报文体(Body)属性为回执报文的内容。回执报文的内容为布尔值“TRUE”或“FALSE”,“TRUE”表示该企业申报报文海关验证通过,“FALSE”表示该企业申报报文海关验证未通过。企业回执报文接收阶段,主要步骤也分为6步:(1)企业应用系统将接收海关业务回执的队列中的回执报文读出。报文内容为回执消息报文体(Body)属性中的内容,报文名为回执消息的标签(Label)属性的内容。海关传输回执接受队列地址为回执消息的回执报文队列(ResponseQueue)属性的内容。(2)将报文内容(BASE64编码)转化为字节数组。(3)将字节数组解压缩转换成报文原文。(4)调用相应CA控件验证海关数字签名。(5)生成传输回执消息发送至海关传输回执接受队列。同样,传输回执消息的标签(Label)属性为报文的文件名(即海关回执报文的文件名),传输回执消息的报文体(Body)属性为回执报文的内容。回执报文的内容为布尔值“TRUE”或“FALSE”,“TURE”表示该海关回执报文企业验证通过,“FALSE”表示该海关回执报文企业验证未通过。(6)企业应用系统使用海关回执报文。4.开发报文传输程序可参考本文第四部分“报文传输软件参考程序片断”。三、采用IPSec VPN技术与南京海关联网的设备配置规范(一) 采用IPSec VPN技术与海关联网项目拓扑图以互联网为底层网络、符合PKI安全协议族规范的、站点到站点的VPN技术,一般使用IPSec VPN技术。(二) 联网单位IPSec VPN网关的选型联网单位选用的IPSec VPN网关建议采用具备IPSec VPN功能的硬件防火墙,可以选用的设备包括Juniper Netscreen SSG系列(最低端的产品为SSG 5)、思科ASA系列(最低端的产品为ASA 5505)、Fortinet、SonicWall等厂商的产品。(三) 联网单位提供信息联网单位提供以下信息:申请联网单位全称;申请线路的公网ip地址、子网掩码;申请线路的电信网关;企业申请线路的性质(Lan或者ADSL)。(四) 南京海关提供信息根据联网单位提供的网络信息,由海关向联网单位提供以下信息:该联网企业端设备的内部ip地址网段、子网掩码、网关;南京海关IPSec VPN采用AutoIKE,提供建立VPN通道所需要的信息,包括PresharedKey、Phase 1 Proposal算法、Phase 2 Proposal算法、南京海关端公网ip地址。(五) 联网单位设备配置规范南京海关使用的IPSec VPN设备是Juniper Netscreen系列产品,本配置规范以Juniper Netscreen 5GT为例,Netscreen系列其他型号或者采用其他品牌的可参照该配置指导方案进行配置。1.设备的工作模式netscreen设备不允许上英特网,模式配置成为dual-untrust模式。与海关联网的网段设置在trust区域。2.地址列表定义各个客户端设备trust区域地址列表名称为:local。Untrust区域地址列表名称为:customs,地址为/16。端口信息配置trust地址填写分配的网段第一个可用地址做为端口地址,同时Web UI、Telnet、Ping都选中;untrust口信息填写公网ip地址的第一个可用的ip地址,如某企业公网ip为12/27,电信网关ip为13,公网地址就使用网关之后的第一个地址,即14。3.VPN配置新建一条tunnel,zone untrust,unnumbered 选中,interface选择连接外网的端口号。建立的第一阶段:Gateway Name:名称统一为vpn_to_customs_p1,Remote Gateway Type选择Static IP Address,IP Address/Host :填写南京海关端公网ip地址。Preshared Key和Prase 1 Proposal按照南京海关所发文档配置。建立的第二阶段:VPN Name:名称统一为vpn_to_customs_p2,Remote Gateway选中Predefied ,下拉列表中选择vpn_to_customs_p1,Prase 2 Proposal按照所发文档配置,Bind to 选中,并选新建的tunnel,proxy-ID选中,Local IP/Netmask填写客户端的ip网段和掩码,Romote IP/Netmask填写/16,选中VPN Monitor即可。 4.路由配置新建2条路由,第一条路由Network Address/Netmask填写/0,选中Gateway ,Interface选择连接外网的端口号,Gateway IP Address填写该宽带的网关地址,点击OK按钮;第二条路由Network Address/Netmask填写/16,选中Gateway ,Interface选择新建的tunnel,点击OK按钮。5.策略配置首先把any any策略去除;从untrust到trust区域,源选择customs,目的选中local,service 选中any,logging选中;从trust区域到untrust,源选中local,目的选择customs,service 选中any,logging选中。6.修改用户名口令修改系统默认的用户名、口令。四、报文传输软件参考程序片断(一)签名public static string SignXml(string xmlContent) if (provider.ToLower() = uni) if (signaturer.ToLower() = server) SignatureInterface.SignatureInterfacePortTypeClient sig = new MsgTrnsCommon.SignatureInterface.SignatureInterfacePortTypeClient(); return sig.getXMLSignature(ConfigurationManager.AppSettingsSystemId, xmlContent); else return UniClient.XMLSignMQ(xmlContent); else if (provider.ToLower() = jsca) if (signaturer.ToLower() = server) JsServer.SetServer(ConfigurationManager.AppSettingsJsServer,int.Parse(ConfigurationManager.AppSettingsSignPort); return JsServer.gtSignXmlString(xmlContent, ConfigurationManager.AppSettingsJsCert); else return JsClient.gtSignXmlString(xmlContent); else return string.Empty; (二) 验签public static string VerifySign(string xmlContent) if (provider.ToLower() = uni) if (verifier.ToLower() = server) VerifySignature.VerifySignatureInterfacePortTypeClient ver = new MsgTrnsCommon.VerifySignature.VerifySignatureInterfacePortTypeClient(); return ver.xmlVerifySignature(xmlContent); else return UniClient.XMLVerifyMQSign(xmlContent); else if (provider.ToLower() = jsca) if (verifier.ToLower() = server) JsServer.SetServer(ConfigurationManager.AppSettingsJsServer,int.Parse( ConfigurationManager.AppSettingsValiPort); return JsServer.gtVerifyXmlString(xmlContent); else UTF8Encoding ut = new UTF8Encoding(); Byte encodedBytes = ut.GetBytes(xmlContent); String decodedString = ut.GetString(encodedBytes); return JsClient.gtVerifyXmlString(decodedString); else return string.Empty; (三) 压缩public static Stream Compress(Stream s) s.Seek(0, SeekOrigin.Begin); MemoryStream cs = new MemoryStream(); try DeflaterOutputStream cs1 = new DeflaterOutputStream(s, new Deflater(Deflater.BEST_COMPRESSION); StreamCopy(cs, cs1, streamCopyBufferSize); catch (Exception ex) Logging.LogManager.GetLogger().Error(压缩程序出错, ex); throw ex; cs.Seek(0, SeekOrigin.Begin); return cs; (四) 解压缩public static Stream Decompress(Stream s) InflaterInputStream inflaterInputStream = null; try s.Seek(0, SeekOrigin.Begin); inflaterInputStream = new InflaterInputStream(s); catch (Exception ex) Logging.LogManager.GetLogger().Error(解压缩出错, ex); throw (new Exception(出错函数 + Decompress

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论