通过.net从SAP检索数据的最佳做法

通过.net从SAP检索数据的最佳做法,sap,Sap,我正在寻找业界将SAP与.Net应用程序集成的“最佳实践”。到目前为止,我只需要从SAP读取数据,不需要更新 我发现的最直接的方法是使用SAP连接器并调用BAPI。我正在使用SAP Connector 3.0。但我只是想知道是否有更好的数据检索设计?要求是-尽可能少地接触SAP,并能够批量传输数据 此外,如果使用此设计,除了我可以通过标准加密等方式保护的SAP登录信息之外,是否还有其他安全问题 谢谢 我编写了许多SAP RFC应用程序。我相信.Net连接器和Java连接器一样位于RFC协议之上。

我正在寻找业界将SAP与.Net应用程序集成的“最佳实践”。到目前为止,我只需要从SAP读取数据,不需要更新

我发现的最直接的方法是使用SAP连接器并调用BAPI。我正在使用SAP Connector 3.0。但我只是想知道是否有更好的数据检索设计?要求是-尽可能少地接触SAP,并能够批量传输数据

此外,如果使用此设计,除了我可以通过标准加密等方式保护的SAP登录信息之外,是否还有其他安全问题


谢谢

我编写了许多SAP RFC应用程序。我相信.Net连接器和Java连接器一样位于RFC协议之上。根据我的经验,最佳做法取决于您向SAP咨询的人员。他们确实有一个web应用程序服务器web,我认为这是所谓的这些天…它被重命名了几次,可能可以托管一个web服务,但这取决于你安装了什么。我认为很多人仍然选择.Net或Java连接器。我喜欢C++库,因为它很快,但那只是为了非常愚蠢; 我的信息可能是有日期的,但如果它们是一致的,那么RFC通信层就不是现成的加密。SAP GUI和所有RFC类型连接器.Net/JCo上都使用了一个第三方插件来加密数据流。您必须在rfc.ini文件中设置它


还有IDOC,我认为你不想玩它。它是一种平面文件格式,与EDI非常相似,但更为简单。

关于安全部分,如果您在.Net中使用等效的JCO,则SAP后端有一个用户可以连接

此用户应为Connection类型,这样就没有人可以将其与SAPGUI一起使用,并且应具有仅限于所需内容的授权,这样就没有程序可以使用它执行您不认为的其他操作。虽然有人设法获得此用户/密码的几率很低,但您不会冒险使用生产性数据。此外,密码不应该是简单的

这听起来可能像是基本的安全性,但由于我刚刚在一个生产系统上发现了完全相反的情况,所以我更倾向于陈述它


就我所知,RFC不是加密的,而是压缩的。嗯……不,我认为它们不是压缩的。您可以从跟踪中获取二进制转储,并在Wireshark中查看原始数据流。测试后,您是对的,我可以查看原始数据。我从之前一个项目的文档中得到了这个信息,在这个项目中我提到了这一点。我会试着从顾问那里得到答案。感谢您的更正。是否可以使用SAP.NET连接器连接到SAP HR并进入业务?它是“正常工作”还是我们需要OpenHub或类似的东西?请记住,我主要是在寻找替代设计。BAPI作为web服务公开如何?与SAP.Net Connector相比,它有多好?您可以轻松地将BAPI公开为web服务,但特别是对于批量数据传输,速度将比rfc调用更为重要。我目前正从.Net连接器转向web服务,因为我希望使用不依赖专有协议和某些SAP实现的标准传输。我不知道NCo 3,我只使用了以前的版本。它们工作正常,但如果不支持当前的VisualStudio版本,代理生成会有点问题。因为几乎所有的语言都理解web服务,所以我选择了这种方式。