创建连接到远程数据库并使用公钥加密的服务

发布于 2024-09-05 18:06:47 字数 390 浏览 8 评论 0原文

我一整天都在搜索并阅读了很多教程,但我仍然很困惑。我正在开发一个项目,该项目具有客户端(客户 - 不要与客户端应用程序混淆)指定的以下要求:

  1. 连接到远程服务器并验证连接是否成功。
  2. 通过 SOAP 连接到所述服务器上的 Web 服务。
  3. 使用公钥加密对服务进行身份验证
  4. 身份验证成功后,通过 Web 服务将产品和类别列表推送到远程服务器上的 MSSQL 数据库。

客户端是一个用 C# 编写的 Winforms 应用程序。到目前为止,我已经创建了一个 WCF 服务应用程序,其中包含针对产品和类别的单独服务,但我无法弄清楚其余的内容。

任何人都可以为我指出涵盖这些要求的一个或多个教程的方向吗?

非常感谢!

I have been searching all day and reading many tutorials and still I am confused. I am working on a project that has the following requirements as specified by the client (customer - not to be confused with client app):

  1. Connect to a remote server and verify that connection was successful.
  2. Connect to Web service on said server via SOAP.
  3. Authenticate with service using public key encryption
  4. Upon successful authentication, push a list of products and categories to a MSSQL database on remote server via the Web service.

The client is a Winforms application written in C#. So far, I have created a WCF Service Application with separate services for the products and categories but I cannot figure the rest out.

Can anyone point me in the direction of a tutorial or tutorials that cover these requirements?

Many thanks in advance!

Joe

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

段念尘 2024-09-12 18:06:47

嗯..您需要使用某种数据访问层与数据库进行交互。您的选择是滚动您自己的..或使用预制的解决方案,例如 Linq2SQL、Entity Framework、nHibernate、SubSonic 等。

就安全性而言,如果使用 Web 服务传输数据是问题,您可以简单地使用 HTTPS。

Well.. you'll want to interface with the database using a Data Access Layer of some sort. Your options are rolling your own.. or using pre-made solutions such as Linq2SQL, Entity Framework, nHibernate, SubSonic etc.

In regards to security, if transmission of data with the webservice is the issue you could simply use HTTPS.

想挽留 2024-09-12 18:06:47

我已经制定了以下解决方案:

  1. 用户输入用户名、密码和公钥
  2. 程序连接到远程 WCF 服务,该服务根据服务器上的数据库检查提供的用户名和密码,以确保它们正确 - 用户名和密码通过自定义 MessageContract 发送。
  3. 身份验证成功后,服务器将响应发送回客户端以告知其继续。
  4. 用户选择要发送到远程服务器的产品和类别。
  5. 选定的信息由客户端使用用户的公钥进行加密,并在服务器上使用相应的私钥进行解密。
  6. 解密后的信息存储在数据库中。

我走在正确的轨道上吗?

I have worked out the following solution:

  1. User enters username, password and public key
  2. Program connects to remote WCF service which checks provided username and password against database on server to ensure that they are correct - username and password are sent via custom MessageContract.
  3. Upon successful authentication, server sends response back to client to let it know to proceed.
  4. User selects products and categories to send to remote server.
  5. Selected information is encrypted by the client with user's public key and decrypted at the server with the corresponding private key.
  6. Decrypted information is stored in database.

Am I on the right track?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文