This is a summary of the requirements and possible solutions regarding the architecture of a Content Studio system. The exact details, with the most recently published information, are found on the home pages of Teknikhuset and Microsoft. Content Studio relies on many of the underlying functionalities and security mechanisms. It is therefore important to fulfill all of the following software requirements to enable a stable and well performing server environment.

Content Studio is a multi-layered, module-based server application based on the Microsoft Server technology. The most central parts are the server application Content Studio Server (CS Server) which runs on the web server (IIS), and the document database (SQL Server). CS Server uses Microsoft.NET 2.0 as execution platform.

Conceptually, two servers are used when running Content Studio. The web server hosts CS Server and acts are the entry point for all user communication. The database server hosts the database that stores all information that is managed by Content Studio. The two servers may be located on the same physical (or virtual) server, on separate servers or even located in a server pool. CS Server runs on the web server and must have direct and trusted access to the database server.

The choice of architecture depends on the requirements for performance, cost, access, security, scalability and possibly adjustments to the existing system architecture. The standard recommendation is to have one web server and one database server, with a very good network connection between them. It gives good performance and security at a reasonable price.

Microsoft Windows

Content Studio only works in a Windows operating system environment. The current version of Content Studio does not support 64-bit versions of the Windows operating system, because there are a small number of modules that use legacy 32-bits code. Support for 64-bit operating i available in version 5.1 and later. However, if SQL Server runs on a separate server, the database server can use 64-bit versions of both SQL Server and the Windows operating system.

One of the following operating system is required for the Web server.

Starting with Content Studio version 5.1, also the following server operating systems are supported

If the web server is used only for test and development, one of the following operating systems can also be used.

Starting with Content Studio version 5.1, also the following client operating systems are supported for development and testing.

If the database runs on a separate server, you can also use the following operating systems for the database server.

The following software (or operating system features) must be installed and running on the web server before installing Content Studio.

Using 64 bit operating systems

Starting with Content Studio version 5.1 the product now has full support for 64-bit operating systems. If you are in the position of purchasing a new server for Content Studio a 64-bit server with an 64-bit operating system should be your first choise. The primary advantage with this platform is the possibility to use far more memory. On the web server this can give you far better performance for large Web sites. For these Web sites you install at least 4 Gb of RAM on you 64-bit server. That amount of memory gives the possibility to use caching extensively and thus radically improve performance for heavily visited pages.

Microsoft .NET Framework

All code in Content Studio is executed within the managed runtime environment provided by the .NET Framework 2.0. The .NET Framework supplies a managed memory handling that isolates all code executed within Content Studio and ASP.NET from the computer's physical memory and hardware. This is a great advantage for security reasons, because a managed memory prevents code from accessing protected memory and eliminates the problem found in earlier systems where a buffer overflow could allow injection of hostile code into protected system memory areas.

The .NET Framework is also frequently used for easy integrations with other systems. It easily manages XML and many other data execution standards efficiently. There is a large set of available functions, classes and methods that can be used to develop the web site.

The memory management also allows different optimizations to be performed on a server management level. The .NET Framework has a powerful built-in cache mechanism that now is used as the native cache mechanism by Content Studio.

Internet Information Server (IIS)

IIS is a web server that is included in the Windows Server environment. IIS is a stable and flexible platform to use, with good support for the security of the Windows Server. All communication with the web clients is managed by IIS, including the administrative interface and all pages on the web site.

IIS can manage several web sites with different profiles on the same server. The number of web sites is limited only by the capacity of the server itself, but it is not recommended to keep mot than 20 Content Studio web sites running in parallel.

The installation program of Content Studio manages all necessary settings of the IIS.
By default the web site is set up to use allow anonymous access and if authentication is necessary, the Windows Integrated authentication method is used primary and Basic clear text is used if integrated authentication is not possible. The adminstrative site is always set up as a virtual directory but with no anonumous access possible. The use of Integrated Security is encouraged, but there are cases where it not is possible due to firewalls and other network limitations.

Content Studio web sites are installed in virtual folders under an existing Web site or as a new Web site, named during the installation process. The Web site can be configured in the same way as all other web sites in the IIS. It is for instance possible to apply third-party products (i.e. ISAPI filters) once the installation is completed.

Windows Service

Starting with version 5, the underlying Content Studio software runs as a Windows service and access to this software is done via the .NET Remoting infrastructure. The Content Studio service listens for incoming requests from clients either via the TCP/IP protocol on port 9792 or via the IPC named pipe protocol. The former is supported between different machines while the latter only works when the client and server exists on the same server.

Background jobs and asynchronous event handling is performed by the Service Manager service. It is a multi-threaded program that asks the installed sites it there are any jobs to execute. The Service Manager executes these jobs using an event handler that can be user-defined or built into the Service Manager itself. Typical examples include the events OnDocumentApprove and OnDocumentSave that are raised when updating documents or an XML index maintenance job that is triggered by changes to the indexed fields in an EPT data category.

Active Directory

Active Directory is a directory service that store information about resources across a domain. It is typically used to manage the access rights of users and user groups within a system. Content Studio stores the relevant information from the AD and can perform all necessary security checks without explicitly calling the AD server. The local security NTLM database of the server can be used as well, also in combination with AD. Therefore, the security management becomes very efficient. If Content Studio is installed on a stand-alone server that is not a member of an Active Directory the local security system of the machine must be used. 

Content Studio is by default fully integrated with the security database in Windows, and can get its information from the local security database and all versions of Active Directory (AD). Security settings can be applied to categories, document hierarchies, single documents and even elements within a document as well as a number of other objects in Content Studio. For practical reasons, the security settings are usually based on the AD or local group definitions.

If any other directory mechanism than AD or the local security database is used, a custom logon provider must be implemented and integrated. This is an advanced task which is documented separately.