Spludlow Web Header

Footprint of the Framework


Contents

Introduction. 1

Framework Namespace. 1

Port Number Base. 1

OS Users & Groups. 1

File System.. 1

Message Queues (MSMQ). 1

Windows Services. 1

Web Server. 1

Port Numbers. 1

Database. 1

 

Introduction

This page describes how the framework physically exists upon the operating system.

Framework Namespace

A Framework instance is configured with a namespace, the default being “SpludlowV1”, used to keep resources on a host separated from other instances.

This is used for installing future version upgrades in parallel before they go live.

ADVANCED: The namespace can be used for testing modified versions in parallel.

Port Number Base

Port numbers are used, by the Framework, for WCF TCP servers.

The default V1 base port number is 32100. This is following the pattern 32V00, where V is the last digit of the version number. Version 2 will have a base number of 32200. So each instance has 100 port number blocks available V1 would have 32100 – 32199.

NOTE: If this port number arrangement clashes with something else on your host then use the overloaded version of the setup “MakeFile” method.

OS Users & Groups

The Framework requires 2 users and a security group be available.

·         SpludlowUser    Standard User that code will run as on the web service and service process.

·         SpludlowAdmin Administrator User that the Admin Web Service will run as this to perform application pool and service process operations.

·         SpludlowGroup Security Group that Framework’s users are a member of. Developers can also be added to this group in test environments.

All host resources used by the Framework; file system, database, message queues, must have permission for “SpludlowGroup” to access them.

“SpludlowAdmin” should be a member of the local Administrators group on each host.

In a Windows Domain you can have these as domain users, this will make it much easier when assigning permissions. In a workgroup you will have to set the accounts up separately on each host.

WARNING: In a Windows Domain the “SpludlowAdmin” account should be a standard domain user, belonging to individual hosts Administrators group, and not in the Domain Administrators group.

The Framework does not store any of these users’ credentials. They are only entered when creating a web application pool or installing a service process, they are stored by the OS not the Framework. No one will ever need these credentials except for setting up.

File System

The framework uses the following directories.

C:\Program Files\SpludlowV1                     Main location of applications. The “SpludlowGroup” should have permission to modify this folder.

C:\Program Files\SpludlowV1 Admin       This directory only contains the Admin Web Service; it should be left with the default Program Files permissions. It should not be possible for “SpludlowGroup” to modify this directory.

C:\ProgramData\SpludlowV1                     Configuration and many other things are kept here, “SpludlowGroup” should have permission to modify this folder.

If your code is doing things with the file system make sure “SpludlowGroup” is assigned permissions to the directory.

Message Queues (MSMQ)

The Framework requires a “Sys” and “Run” message queue on all hosts with a “Log” queue on the master. A queue should also exist on each router host for remote networks, all prefixed with “Route”, for example; “Route.MyCompNet”. User defined queues may also be used.

Within the network configuration record there is a “QueueNamespace” column this is to keep the queues separate when more than one version of the framework is running on a host. The default is “SpludlowV1” so for example the “Run” queue is physically called “SpludlowV1.Run”.

All queues used by the framework must give permission for “SpludlowGroup” to Send and Receive messages.

SECURITY NOTE: At present MSMQ permissions are not “locked down” at install. The 2 users; “Everyone” and “ANONYMOUS LOGON” are given “Send” permission when Spludlow Setup creates message queues. The message queue will also be running in “Workgroup” mode (I still need to test exactly how MSMQ permissions work in this mode).

Windows Services

As standard the framework uses one service process called “Spludlow-ServiceV1” located at “C:\Program Files\SpludlowV1\Spludlow-Service\Spludlow-Service.exe”. The service is set to start automatically and is dependent on MSMQ.

Spludlow-Service is a generic process that can be configured to run many “Method” and “Server” tasks. Please refer to the Formats page for details on configuring tasks:

·         “Method” – indefinitely run a method specified by ATM and parameters.

·         “Server” – Easy way to run a .net WCF TCP server.

There may be situations where you may want to run more than one Spludlow-Service on a host:

·         Isolation – Something crashes the process and you don’t want the whole show to stop. If something crashes outside of .net it can bring the whole process down, in this case Spludlow-Service. Something like an ODBC driver that on rare occasion will crash, don’t matter just start the process again, nothing else is running on the process.

·         Architecture – You may have to call a legacy 3rd party driver or component that will only run in 32 bit. Rather than handicapping everything to run in 32 bit you can just have the bits you need running 32 bit.

·         Permissions – For whatever reason the code you need to run needs to run as a user other than “SpludlowUser”. You don’t want to run everything as this other user just the code you need to.

“Spludlow-Service32V1” is supplied as a ready to go 32-bit version that you can use if you need 32 bit.

Web Server

The standard framework uses 2 web service applications; the standard generic web service, and the Admin Web Service that can only start and stop web application pools and service processes.

The Admin Web Service’s application pool runs under the “SpludlowAdmin” user all other application pools should use the “SpludlowUser” user.

Database

The standard system requires access to a database from the master host only. Configuration settings are and Logs are stored here.

 


 
 
 
 
 
 
 
 
 
Spludlow Web Footer