Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 868401
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T10:08:03+00:00 2026-05-15T10:08:03+00:00

This question is an updated version of a previous question I have asked on

  • 0

This question is an updated version of a previous question I have asked on here.

I am new to client-server model with SQL Server as the relational database. I have read that public access to SQL Server is not secure. If direct access to the database is not a good practice, then what kind of layer should be placed between the server and the client? Note that I have a desktop application that will serve as the client and a remote SQL Server database that will provide data to the client. The client will input their username and password in order to see their data. I have heard of terms like VPN, ISA, TMG, Terminal Services, proxy server, and so on. I need a fast and secure n-tier architecture.

P.S. I have heard of web services in front of the database. Can I use WCF to retrieve, update, insert data? Would it be a good approach in terms of security and performance?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T10:08:03+00:00Added an answer on May 15, 2026 at 10:08 am

    A web-service tier is pretty common for smart-clients as a layer between the user-client and the server. This allows:

    • simple networking (http only)
    • you have an app-layer in which to put validation etc without upsetting the db
    • you can have security that isn’t tied to the db
    • the db can run as fewer accounts (app accounts), allowing greater connection pooling
    • you can “scale out” the app layer
    • you can cache etc above the db
    • you can have a richer app layer, with more services than sql server provides
    • the client has a known API, and never knows about the db (which is an implementation detail)

    You can use WCF to talk to the app layer, but you shouldn’t think in terms of “INSERT”, “UPDATE” etc – you should think in terms of operations that make sense to your domain model – the “CreateOrder” operation, etc. ADO.NET Data Services allows an API more similar to your “INSERT” etc, but it isn’t necessarily as controlled as you might like for a secure service.

    Performance is really a factor of “what queries am I running?” and “how much data am I transferring?”. As long as you keep the operations sane (i.e. don’t fetch the entire “Orders” data over the wire just to find the most recent order-date), then you should be OK.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This question comes on the heels of the question asked here . The email
Update: this question, including the title, was rephrased, see history for details I know
Update: Please read this question in the context of design principles, elegance, expression of
Update: Check out this follow-up question: Gem Update on Windows - is it broken?
The same as this question but for java Update Based on the comments and
Duplicate of this question . update - This is not an exact duplicate. See
I think the question is pretty self explanatory. Anyone done this before? UPDATE :
This question is kind of an add-on to this question In C#, a switch
This question and answer shows how to send a file as a byte array
This question would probably apply equally as well to other languages with C-like multi-line

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.