[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 228
  • Last Modified:

VB Client Communicate with Remote SQL Server via SSL

I am trying to figure out how I can use my existing VB client application (EXE) to post data to a remote SQL Server database using an Internet connection.  I definitely want to use SSL for encryption.

I read that I need to purchase a security certificate and use RDS but I haven't seen any examples or how-to documents.  I would like a set of generic step-by-step instructions for accomplishing this task.  Sample VB code would also be nice.

TIA!
0
imayooper2
Asked:
imayooper2
1 Solution
 
AndrewDevCommented:
Using ADO you can establish a session to a server across an internet connection using the servers TCP/IP address as follows:

'Establishing DSNless Connection
strConn "PROVIDER=SQLOLEDB;SERVER=192.168.0.5;uid=xxx;pwd=xxx;database=xxx;"
Set dbConn = CreateObject("ADODB.Connection")
dbConn.Open strConn
Set rs = dbConn.execute(strSQLQuery)

This ADO utilities class may be of use to you
http://www.freevbcode.com/ShowCode.Asp?ID=1150

I am still investigating the certificate issue you raised but the above code will connect you to a remote SQL database

Regards
Andrew

0
 
dalexisCommented:
If you can't use SSL, you'd want to secure the traffic between the client app and SQL Server by setting SQL Server to only use the "Multi-protocol with encryption" network library, rather than the TCP/IP library.  This works over IP connections, and encrypts all communications to and from the server.

Exposing your SQL Server to the world by allowing direct connections over the Internet is something you want to avoid.  A better solution would be to implement a server-side component that encapsulates all access to the database, so that the client app *never* connects directly to the database.  The component can be secured by running within MTS or COM+ under an account that has rights to connect to the SQL Server.  It can even be run totally inside the firewall for even better security.

You can still use ADO on the client to manage datausing disconnected recordsets.

- David Alexis
0
 
vindevogelCommented:
what we do is this :

Develop an ActiveX component, running on the server that can update the database.

In your object, you can use plain ADO, compiled, so no worries there.

The pages call this object and pass data to it using PostForm. (better than request object)

Your SSL is guaranteed.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
imayooper2Author Commented:
vindevogel,

Are you refering to ASP pages in your solution?  I'm stuck with a vb client app, not a web app.  If you are talking about a client app, how do I utilize the https protocol to call the activex object using PostForm?

Let me know if I misunderstood your comment.
0
 
vindevogelCommented:
No, we're using ASP pages .... sorry.
0
 
DanRollinsCommented:
Hi imayooper2,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will suggest to:

    Accept AndrewDev's comment(s) as an answer.

imayooper2, if you think your question was not answered at all or if you need help, you can simply post a new comment here.  Community Support moderators will follow up.

EXPERTS: If you disagree with my recommendation, please post an explanatory comment.
==========
DanRollins -- EE database cleanup volunteer
0
 
Computer101Commented:
Comment from expert accepted as answer

Computer101
E-E Moderator
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now