Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm considering SQL Azure as DB for a new application I'm developing. The reason I want to go with Azure is because I don't want to have to maintain yet another database(s) and I want my users to be able to access the data from anywhere. The problem is that I'm not clear regarding how to users will connect. The application is a basic CRUD type of windows app.

I've read that you need to add your IP to SQL Azure's firewall to connect to it, but I don't know if it's only for administration purposes only. Can anyone clarify if anyone (anywhere) can access the data with the proper credentials?

Which of the following scenarios would work best (if at all)?

A) Add each user to SQL Azure and have the app connect directly to Azure as if it was connecting to SQL Server

B) Add an anonymous user SQL Azure and pass the real user's password/hash with every call so the Azure database can service the requests accordingly.

C) Put a WCF service in between so that it handles the authentication stuff. The service will only serve the appropriate information to the user given his/her authentication and SQL Azure would be open to the service exclusively.

D) - ideas are welcomed -

This is confusing because all Azure examples I see are for websites. I have a hard time believing SQL Azure wouldn't handle the case of desktop apps connecting to it. So what's the best practice?

share|improve this question
    
This question erally belongs on StackOverflow. Voted to migrate. –  Adam Crossland Mar 20 '12 at 19:59
    
I thought it was best suited here but if you think it should be moved (and it can be moved) then by all means let's do it. I'm also open for deletion and reposting over there. –  Manuel Mar 20 '12 at 20:10
    
It's my opinion, Manuel, but if enough others agree with me, it will be migrated automatically. Generally, I think that questions like this that apply to specific technologies belong more on SO. –  Adam Crossland Mar 20 '12 at 20:20
add comment

1 Answer

up vote 0 down vote accepted

SQL Azure does require each client's IP to be registered in Azure's firewall.

In this case the only option is to have an intermediary service (WCF service for my purposes) that accepts user's requests, authenticates them, and provides the data. This service in turn would communicate with SQL Azure.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.