sap netweaver开发者指南

上传人:小** 文档编号:55846005 上传时间:2018-10-07 格式:DOC 页数:45 大小:477KB
返回 下载 相关 举报
sap netweaver开发者指南_第1页
第1页 / 共45页
sap netweaver开发者指南_第2页
第2页 / 共45页
sap netweaver开发者指南_第3页
第3页 / 共45页
sap netweaver开发者指南_第4页
第4页 / 共45页
sap netweaver开发者指南_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《sap netweaver开发者指南》由会员分享,可在线阅读,更多相关《sap netweaver开发者指南(45页珍藏版)》请在金锄头文库上搜索。

1、SAP NetWeaver 开发者指南开发者指南 版本版本: SAP NetWeaver 2004s安全编程安全编程-ABAP文档版本文档版本 1.0 2006 年年 5 月月SAP AG Dietmar-Hopp-Allee 16 69190 Walldorf Germany T +49/18 05/34 34 24 F +49/18 05/34 34 20 Copyright 2005 SAP AG. 版权所有.本出版物的任何内容未经SAP AG直接允许不能以任何形式和任何目的进行复制和传播. 此处包含信息的变更 可未经事前告知.由SAP AG和其发行人标记的部分软件产品包含其他软件厂商

2、的专利软件组件.Microsoft, Windows, Outlook, 和 PowerPoint 为微软公司注册商标.IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, 和 Informix为美国国际商用机器公司在美国和其他国家的商标或者注册商标.Or

3、acle为甲骨文公司注册商标UNIX, X/Open, OSF/1, 和 Motif 为Open Group注册商标. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, 和 MultiWin为Citrix Systems, Inc 商标或者注册商标. HTML, XML, XHTML 和W3C为W3C商标或者注册商标, WWW联盟, 马萨诸塞州理工学院. Java 为Sun Microsystems, Inc注册商标. JavaScript为Sun Microsystems, Inc注册商标, 在为由Nets

4、cape发明并且实现的技术license下使用.MaxDB为MySQL AB, 瑞典 商标SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, 以及其他在此提及的 SAP产品和服务, 包括其相应的标示为SAP AG在德国和全球若干其他国家的商标或注册商标. 所有其他被提及的产品和服务名 均为其各自公司的商标. 包含在此文档中的数据仅用于资料目的。国家产品说明可能不同。资料可未经通知进行修改。资料由SAP AG和其关联公司(“SAP Group”)仅为资料目的提供,没有任何形式 的代表或担保,并且SAP Group将不对有关资料的错误或遗

5、漏负责。对于SAP Group产品和服务的唯一担保 为那些在附带于产品和服务上的直接担保声明书中进行声明的部分,如有可能。此处的任何内容不能理解为构 成额外担保。免责条款免责条款本产品的部分组件基于Java. 在这些组件中的任何代码改动可能会引起无法预料的严重功能错误,因此为表 现地禁止,由于这些组件的任何不可编辑。任何随附本产品的Java 源代码仅由SAP支持服务使用并且不得以任何途径进行修改或变更。关于SAP开发者网络的文档: 你可以参考文档于: https:/ 目 录安全编程-ABAP 4目的4目标人群4关于文档4免责申明5安全编程 6密码安全6安全商店和转寄机制(SSF)9安全日志 1

6、1 SAP病毒扫描接口 15安全用户接口 21跨站点脚本(XSS) 21 SQL注入 30 输入验证 35 规范化 38 目录贯穿 40 URL编码和操纵 43 Cookie操纵 46更多信息49免责声明50安全编程-ABAP“安全就像是给你的车加上刹车。 刹车的目的不是来让你停下来: 而是使你变得更快!”-Gene Spafford目的目的本文档提供一个关于开发基于SAP NetWeaver平台的安全应用程序的概览。描述了共通的需要密 切关注的安全性错误和缺陷以及安全过程以使你的应用程序运行地更安全。目标人群目标人群本文档的目标人群为开发基于SAP NetWeaver平台的应用程序的ABAP

7、开发人员。本指南主要针对 在顾客,顾问公司以及合作伙伴的IT部门的开发人员。关于本文档关于本文档本文档分为如下部分:安全编程 o密码安全 o安全商店和转寄机制(SSF) o安全日志 oSAP病毒扫描接口安全用户接口 o跨站点脚本(XSS) oSQL注入 o输入验证 o规范化 o目录贯穿 oURL编码和操纵 oCookie操纵针对上述每一点首先介绍其安全弱点。然后提出任何存在于SAP NetWeaver平台的标准解决方案, 包括需要被用到的功能块和接口。如果在SAP NetWeaver平台中没有可用的方案,那么将提出对 于可采取的适当的安全措施的建议。此外,通过对现存文档的合适链接样例代码将被提

8、供。声明声明本文档中关于安全编程的全部描述和全部样例代码(在本条款下文引用为“示例”) 仅仅出于演示的目的,并未在所有条件下经过充分的测试。因此,SAP 不保证或 者暗示其可靠性、适用性以及功能。您必须自行承担使用这些示例的风险和责任, SAP 将不对使用这些示例带来的损失负责,除非这些损失是由 SAP 的重大疏忽或 故意误导所导致的。安全编程安全编程实现安全实现安全开发人员一个常见的问题就是缺少时间,他们总是为设计、功能、性能、可用性等 问题伤透脑筋,因此几乎很少有时间来思考安全方面的问题以及可能不安全的软件 设计和软件技术;而另一方面,攻击者们却有用他们全部的时间来思考软件系统的 弱点。一

9、个聪明的设计肯定是一个好的开始,然而仅此却不足以得到安全的软件,软件实 现也有其诀窍。在接下来的章节中,我们将帮助你编写安全的代码。本文还将特别 阐述一些常见错误和缺陷,以及已被验证的过程。密码安全密码安全描述描述密码是人们非常熟悉的一种验证用户和系统身份的方法。相对于其它更安全的方式, 比如说智能卡或者生物扫描仪,密码更简单也更便宜。它提供了一种简单而直接的 保护系统或者帐号的方式。然而,缺点也是显而易见的。密码破解是计算出或者破 坏密码从而对系统或者帐号进行未授权访问的过程。许多密码都不是随机的而很容 易被猜出来。一个更有技术含量的方法是通过网络嗅探器监视通过网络传送的原始 数据并且截取其

10、内容,包括密码。而且,一旦攻击者可以获取网络传输中或者一个 不安全的密码存储地中的加密的密码字符串,他们还可以尝试离线破解密码。 使用基于密码的认证方法来保护系统时,需要考虑下列几个方面。我从我从SAP NetWeaver平台中得到什么?平台中得到什么?基于密码的身份识别和认证的全部过程是这样的:首先,应用程序请求用户确认身 份,通常是用户的帐号名称;然后,系统读取该用户的密码,计算其加密值,这个 值是一个随机的字符串,用来防止攻击者尝试已知字典中的单词,有些密码组件还 清除存储密码的内存;最终,系统检查用户输入的密码的加密值是否和以及存储在 系统中的密码加密值是否匹配。如果是,该用户就被验证

11、通过了。 SAP NetWeaver 平台也提供一个如上所述的验证机制。通常地,推荐使用 SAP NetWeaver 平台已经提供的验证机制,而不是自己实现。我需要做什么?我需要做什么?上面描述的问题使得你必须小心处理你的用户 ID 和密码。如下的建议可以帮助你 防止未经授权者访问你的系统: 1. 有密码用明文显示的么? 不要使用明文显示密码而使用星号代替。 2. 有密码使用明文保存和传输的么? 用明文传输的密码容易被截获。更好的方法是使用安全网络通讯协议 来传送密码。 不要在明文中保存密码。 防止管理员获取密码。使用安全的加密函数以防止逆向破解密码。 SAP NetWeaver 平台使用安全

12、的加密值来存储密码。 不要发明你自己的代码去加密原始密码。 3. 有密码被硬编码到源代码中么? 使用类似一次性密码的技术。 在中心函数中应用一个可改变的密码,例如事务 SM59。 不要发明你自己的加密算法。 4. 有密码被记录在日志/协议/跟踪文件中么? 不要使用 HTTP GET 请求,而应该使用 POST 请求,因为 GET 请求 的所有的参数都是在 URL 中可见的。通常,你应该避免为每个请求 都传送密码。你可以使用安全的方法,比如数字证书。 考虑 Web 服务器在日志中记录所有的 URL。 根据设置的不同,密码也可能在跟踪的时候以一种可读的形式被显示。5. 内存中的密码不再被使用时是否

13、被覆写? 确保覆写内存中的密码,否则它们甚至在程序终止后还存在于内存中 从而能够被恶意程序读取。 6. 是否用户 ID 和密码既没有被预先配置也不能在程序开始运行时通过下拉菜 单调出? 最好避免使用任何下拉菜单来输入用户 ID 和密码。这一点对于密码 来说尤为重要。 7. 是否所有的密码,ID 以及用户名都可以被改变? 不可改变的 ID 和密码常常成为对一个程序进行攻击的起点。更多信息更多信息 1安全编程注意事项 ( “密码安全”章节 )https:/ 0601-0010-7b82-e392df20392a 安全存储和转发机制安全存储和转发机制 (SSF)描述描述 你可以利用数字签名和文档加密来保障文档的安全性。这些文档将被安全存储和转 发机制(SSF)视为独立的对象加以保护。也就是说,文档的安全性与它们的存储 地址以及传递方式无关。你可以在任何数字文档和消息中使用数字签名,如同在书面文件上签名一样。数字 签名唯一地标识了文档和消息的签署者。这是不可伪造的同时也保护了文件的完整 性。如果文档在签署了数字签名以后被修改,那么数字签名就不再有效。而文档的 签署者对曾经签过的数字签名是无法否认的。另外, 你可以加密文档,使得只有经过授权的接收者才能

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号