SQL Azure-type connectivity from on-site SQL Server?

  • This seems like something I should know, but I cannot recall a firm answer, and trying to google this just turns up a mass of irrelevant hits so far... anyway,

    The thing that I like most about SQL Azure is that my client apps can access it from anywhere. No tunneling, VPN, network conflicts, etc. If I can get to the internet, I can connect to my database (firewalls aside). The thing is, at my company, we don't really need or want all of the other features of SQL Azure (hosting, storage, backup, support, etc.). We have our own servers, storage, SQL Server licenses, web sites, etc.

    So what we'd really like is to be able to "publish" one of our databases to our website and then be able to access it from our ADO.net client applications, just like we do with SQL Azure. Is That Possible? Is there any reasonable way at all to do that?

    To be clear, I am not talking about writing a bunch of custom WebServices or anything like that. I mean, being able to, say, take one of my Excel sheets that I have right now pulling data from one of our SQL Azure databases, and just changing the server address so that it can connect to one of the company's on-premise databases, while I am working from home or another site, but without me having to tunnel/VPN into the company network.

    Also, I do realize that there may be security issues, but that's a separate issue that we'll look at after we determine if this is even possible.

    Thanks, ...

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • Hey Barry, interesting question.

    I'm pretty sure you can do this, but I doubt your security people would allow it. You could even test it with your own SQL Server at home. At home you just need to go onto your Cable/Fios/DSL Router and enable port forwarding to the IP Address and port of your SQL Server. I'm not networking expert, but you might be able to do something with a DMZ as well.

    You'd also have to have SQL Authentication enabled.

  • Sure you can. The connection string is a little funky. This is my "server name" for connecting to one of my databases vx6jxrb86b.database.windows.net, well almost. I modified that a little. But you get the idea. Each SQL Database is on a "server" that's that unique number. You can then use that to connect up. It's still just SQL Logins, no AD yet, but connectivity is easy. You can use anything to throw data up there & pull it back down. Just remember, that remote access, pulling data down, that and storage are what you pay for.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Jack Corbett (3/4/2014)


    Hey Barry, interesting question.

    I'm pretty sure you can do this, but I doubt your security people would allow it. You could even test it with your own SQL Server at home. At home you just need to go onto your Cable/Fios/DSL Router and enable port forwarding to the IP Address and port of your SQL Server. I'm not networking expert, but you might be able to do something with a DMZ as well.

    You'd also have to have SQL Authentication enabled.

    Thanks, jack. Do you know anyplace I can check on this? I don't want to push the network folks into this unless I'm sure that I have it right. (Though I'm pretty sure that I can handle the security issues with good router & firewall rule settings, plus good schema security in the database.)

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • Grant Fritchey (3/5/2014)


    Sure you can. The connection string is a little funky. This is my "server name" for connecting to one of my databases vx6jxrb86b.database.windows.net, well almost. I modified that a little. But you get the idea. Each SQL Database is on a "server" that's that unique number. You can then use that to connect up. It's still just SQL Logins, no AD yet, but connectivity is easy. You can use anything to throw data up there & pull it back down. Just remember, that remote access, pulling data down, that and storage are what you pay for.

    Thanks, Grant. But what do I have to do to set that up? That is, how to make that possible? Just do what Jack said? Is that the trick?

    And did you have to do anything additional for the security concerns?

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • RBarryYoung (3/5/2014)


    Jack Corbett (3/4/2014)


    Hey Barry, interesting question.

    I'm pretty sure you can do this, but I doubt your security people would allow it. You could even test it with your own SQL Server at home. At home you just need to go onto your Cable/Fios/DSL Router and enable port forwarding to the IP Address and port of your SQL Server. I'm not networking expert, but you might be able to do something with a DMZ as well.

    You'd also have to have SQL Authentication enabled.

    Thanks, jack. Do you know anyplace I can check on this? I don't want to push the network folks into this unless I'm sure that I have it right. (Though I'm pretty sure that I can handle the security issues with good router & firewall rule settings, plus good schema security in the database.)

    No, I don't know anymore than what I've shared. I've never worked for a company where they wanted to expose the SQL Server via the internet. Here's an article on TechNet about it though, http://technet.microsoft.com/en-us/library/ms175483(v=SQL.105).aspx

  • Jack Corbett (3/5/2014)


    RBarryYoung (3/5/2014)


    Jack Corbett (3/4/2014)


    Hey Barry, interesting question.

    I'm pretty sure you can do this, but I doubt your security people would allow it. You could even test it with your own SQL Server at home. At home you just need to go onto your Cable/Fios/DSL Router and enable port forwarding to the IP Address and port of your SQL Server. I'm not networking expert, but you might be able to do something with a DMZ as well.

    You'd also have to have SQL Authentication enabled.

    Thanks, jack. Do you know anyplace I can check on this? I don't want to push the network folks into this unless I'm sure that I have it right. (Though I'm pretty sure that I can handle the security issues with good router & firewall rule settings, plus good schema security in the database.)

    No, I don't know anymore than what I've shared. I've never worked for a company where they wanted to expose the SQL Server via the internet. Here's an article on TechNet about it though, http://technet.microsoft.com/en-us/library/ms175483(v=SQL.105).aspx

    Holy cow! That's exactly the kind of article I've been trying to find for days now. Thanks, Jack! 😀

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • Some times it's just a matter of hitting the right terms. Usually I'm on your side of the search where nothing comes up for what I'm looking for.

  • Jack Corbett (3/5/2014)


    Some times it's just a matter of hitting the right terms. Usually I'm on your side of the search where nothing comes up for what I'm looking for.

    Heh, tell me about it. So where are you these days? I seem to recall hearing that you had left Florida, but I don't remember where you went to.

    [font="Times New Roman"]-- RBarryYoung[/font], [font="Times New Roman"] (302)375-0451[/font] blog: MovingSQL.com, Twitter: @RBarryYoung[font="Arial Black"]
    Proactive Performance Solutions, Inc.
    [/font]
    [font="Verdana"] "Performance is our middle name."[/font]

  • RBarryYoung (3/5/2014)


    Grant Fritchey (3/5/2014)


    Sure you can. The connection string is a little funky. This is my "server name" for connecting to one of my databases vx6jxrb86b.database.windows.net, well almost. I modified that a little. But you get the idea. Each SQL Database is on a "server" that's that unique number. You can then use that to connect up. It's still just SQL Logins, no AD yet, but connectivity is easy. You can use anything to throw data up there & pull it back down. Just remember, that remote access, pulling data down, that and storage are what you pay for.

    Thanks, Grant. But what do I have to do to set that up? That is, how to make that possible? Just do what Jack said? Is that the trick?

    And did you have to do anything additional for the security concerns?

    For SQL Database, nothing at all to set up. It just works that way out of the box. You have to use a SQL login, so all the associated concerns that raises are there. Nothing beyond that though since this login gets you into one database and only one (although, you can, and I sometimes do, set up the same login on multiple databases. Sort of the equivalent of 'sa'). You can't switch databases anyway (although I can show you a trick), so once people are logged in, they're logged in.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

Viewing 10 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic. Login to reply