17

I am looking to set up a Web server for a project.

The server would be using a custom application developed in VB.Net using SQL Server for data storage. The application uses 3rd party components (DLL's) that are available for Windows only.

In a previous similar deployment, I had used Windows Server Standard Edition with SQL Server Standard.

For reasons I don't want to go into, the server would not be in-house, but located with a third party hosting provider.

As this server is not part of any AD nor has interactive users, I was wondering whether I need MS Windows Server license at all as that costs quite a lot.

Can I install SQL Server Standard on a Windows 10 along with IIS and TeamView (for monitoring) and use that as a Web server or would that be against any license?

As I said, this is not a question regarding the merits of Linux, Mac and others. Nor am I interested in rewriting the application for a non-Windows solution.

Can I please get an answer regarding Win10 / SQL licensing?

4
  • You should be able to get a Windows Server virtual machine to use as a web server at a reasonable price from a hosting provider. Look around a bit more. – Andrew Morton Oct 28 '19 at 14:32
  • 1
    Microsoft makes the Windows license available publicly - did you by chance consult that, as the information you're requesting, which @amtoo quoted a portion below, is contained within it. While there is legalese within a license/warranty, Microsoft has tried to make their licenses more consumer-friendly to read. – JW0914 Oct 28 '19 at 17:46
  • If you are only using for yourself, and stay within the device limit, you are fine. Firewall out the rest of the world. Anything accessing shared folders also counts. This is actually way more generous than XP, which I think had 11 as a limit? – mckenzm Oct 28 '19 at 23:51
  • 1
    Use Apache and Postgres and this licensing nonsense goes away. – Flexo Oct 29 '19 at 10:27
25

On Windows 10 Pro, the number of connected devices is limited to 20. The Windows 10 license states:

Device connections. You may allow up to 20 other devices to access the software installed on the licensed device for the purpose of using the following software features: file services, print services, Internet information services, and Internet connection sharing and telephony services on the licensed device.

This limitation will severely limit concurrent users on your website, though the limitation language is actually to limit to people or devices, regardless of concurrency.

I'd also recommend carefully considering if you want to host SQL Server on the same box as your website.

  • SQL Server is licensed by the CPU core. (CAL licensing generally doesn't make sense for websites because you have to license every random user to connect from the internet.) SQL Server Standard Edition is licensed at $1,859 per core, with a 4 core minimum. You must license every core on the server. Usually you want to have every CPU cycle available to SQL Server. Having your website chew up expensive CPU cycles is expensive.
  • If you're storing any passwords or personally identifiable data, the security of running SQL Server on a machine exposed to the internet is a security risk that increases the risk your website and data will get pwned.
0
3

You cannot legally use Windows 10 to serve public websites with IIS/SQL server due to the 20 device limit. Please also note that the limit is not for concurrent connections but for the named devices (similar to per device CALs for server OSes).

You also mentioned that the VM is going to be run at the remote datacenter. You are not allowed to run a retail copy of Windows 10 in a virtual environment, you'll need to purchase a Windows 10 VDI license which is significantly more expensive.

Given the constraints, your best option will be a combination of Windows Server Standard and SQL Server Standard configured for Web Workloads (which I previously mis-labelled as Windows Web Server). Web Workloads allows you to run a web server software (IIS), database server (MS SQL) to support the web server frontend, and DNS service to assist the two but nothing else. This usage does not require any CALs so you only need to license the basic operating system and SQL server, which is a reasonable cost (especially since you already seem to have SQL Standard license).

Disclaimer: Even though I am pretty familiar with Microsoft licensing due to having to deal with it on more-or-less monthly basis, my advice should not be taken as final and I expressly disclaim any responsibility for any licensing errors and any losses arising from it. Please consult your Microsoft licensing partner. MS licensing is hella confusing.

2
  • As per comparex-group.com/web/microsites/microsoft/products/os/… there are only two versions of Windows 2019 Server. Which would one use for a Web server which is to be accessed by the general public? – Hussain Akbar Oct 29 '19 at 6:17
  • I mis-remembered the name. It's not a separate edition but a combination of allowed software to run without requiring any CALs. Edited the answer to expand on it. – Draco-S Oct 29 '19 at 8:29
-3

The owner of a computer can use it as he sees fit.

If a software product is to be used only on Windows Server, it will just not let itself be installed on a client version of Windows. This is true for almost all Microsoft products.

In short, any software you have legally installed can be used as you see fit, according to the principle of "fair use". You may support as many SQL Server users on the Windows 10 computer as the hardware and software will successfully support.

Microsoft already took care of the SQL Server license by limiting the number of allowed concurrent connection for a Windows client version, so even if you tried you cannot exceed the specified maximum without illegal hacking of your Windows setup.

EDIT: Many persons wrongly thought that I was advocating software piracy. Please note that I said "legally installed", meaning bought for that computer and used on the licensed computer without hacking.

EDIT2: Although many people have upvoted my answer, there are more downvoters. I'm not a lawyer, but I have been following "fair use" decrees by US courts, so I would like to include here some of my answers to criticism.

The EULA of a product may contain new restrictions on the use of the product

Wrong. The EULA cannot add new conditions of sale that were not communicated previous to the sale. Once the EULA is displayed after the sale, the product is no longer the property of the manufacturer, so he has no authority to rewrite the contract.

Clauses such as "Continuing means agreement with" are invalid in the EULA. In contradiction, clauses such as "Breaking this seal will void guarantee" do work, because these are conditions on future services.

I installed a 4-core product on a 24-core computer and it's using all of them. Am I in violation?

No. The vendor of the product cannot force you to buy a new computer! The most he could have done was to limit his product to using 4 cores, and he would have been within his rights. The user cannot be held responsible for such a defect in the product.

I installed a 10-connections product in my office network of 20 computers

This is exactly the same case as before. The installed product can limit its own functioning, but not to ask you to fire 10 employees.

Microsoft was in a position to enforce its 20-connections limit on client Windows, by the brute-force method of limiting the number of connections it allows to a Windows client computer. Other developers must enforce their own limits inside their own product, but certainly cannot force the client to make any changes in his existing hardware that they didn't themselves manufacture.

1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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