IIS Integrated Technology


When MTS introduced, the only resource manager supported was SQL Server (MSDTC and OLE Transaction Resource Managers).
In version 2.0, MSDTC is still the Transaction Manager, and it still uses OLE Transaction protocol. However, a specification has been written to allow MTS to support X/Open Resource Managers using X/’ protocol.

One of the changes to Microsoft Internet Information Server version 4.0 (IIS) is the integration of Active Server Pages (ASP) technology and Microsoft Transaction Server (MTS.) The ASP technology built into IIS makes it possible to apply the client-server model to Web-based applications. It means faster responses to queries and less network traffic.

Under nS, ASP functionality has been extended further to accommodate scalable three-tier applications. Active Server Pages are now based on MTS. It means individual pages can be declaratively transactional and ASP applications can run in separate address spaces for reliability and security. Transactions cannot span pages; this is not usually good practice in a scalable application since it dictates that the server would need to keep state over multiple user interactions.

In IIS, each subtree of pages defined as an application can run either in the main IIS process (Inetinfo.exe) or in a particular MTS process (Mtx.exe). Process Isolation can be used to run a test or for staging version of new applications separately from the stable applications. Each server can run a combination of isolated and non-isolated applications.

The ability of the Webmaster to control how and where applications run means new versions of COM components or the IS API DLL could be loaded without stopping the entire Web server.

Since these types of separate applications based on MTS, they benefit from the reliability features of MTS. It means these apps will restart automatically after a component-based failure.

All of the Internet Server Application Programming Interface (ISAPI) management and Active Server Pages (ASP) code moved into a component called the Web Application Manager (WAM). Each application given a Globally Unique Identifier (GUID), and the WAMs registered as MTS components. Each application is a unique object.

IIS applications that are declared to run in-process registered in the MTS default in-process package. It is referred to in the MTS snap-in as “IIS In-Process Applications.” Any application can be moved in-process or out-of-process and started or stopped at will since it is hosted in an MTS package

All of the usual MTS services are available to the WAM, including connection pooling, distributed transaction processing, and creating the object context.

When an HTTP request comes into the server, processed, and the Web server determines whether it is plain HTML (or other plain MIME types) or a request for an ISAPI or ASP application. If it is ISAPI or ASP, the WAM map consulted, and the request routed to the appropriate WAM. As previously mentioned, WAMs can manage in-process or out-of-process applications.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

MSMQ as an MTS Resource Manager


Application developers can include MSMQ operations within transactional units of work that access other recoverable resources, such as databases.

MSMQ operations commit or abort along with other resources in the transaction to preserve data integrity. For example, if an application updates a database and sends a message to another application within a transaction, any abort condition will cause the database updates to roll back. MSMQ will also roll back by canceling the send operation. MSMQ never completes sending operations until transactions commit. It prevents receivers from getting messages from transactions that abort.

MSMQ takes similar actions when receive operations occur within a transaction. If the transaction aborts, MSMQ rolls back the receive operation by putting the received message back in its queue.

This message becomes available for receipt by subsequent transactions. The MSMQ transactional features are important because many types 9f problems will occur if abort logic does not include queue operations. For example, if a receive operation does not roll back when associated database operations rolled back, the message effectively becomes lost because no database processing occurs.

MSMQ tightly integrated with MTS. All calls to MSMQ from transaction-enabled ActiveX components running under MTS automatically join whatever transaction is active.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

MTS Explorer snap-in


Microsoft Transaction Server (MTS) is configured using the MTS Explorer snap-in, a graphical management tool used to deploy and manage solutions across a network. MTS Explorer provides developers and administrators with a complete view of all the components deployed within a solution.

To open Microsoft Transaction Server snap-in

  1. On the Start menu, point to Programs, Microsoft Internet Information Server, Microsoft Transaction Server, and then click Transaction Server Explorer.
  2. The Microsoft Transaction Server snap-in opens in Microsoft Management Console.
  3. The Microsoft Transaction Server Explorer includes point and click wizards for assembling and configuring a solution from pre-built packages and components. A package is a set of components that perform related application functions.

These wizards include:

  • Package Wizard. To create packages.
  • Component Wizard. To add components to a package. The wizard either lists all components already registered in the system, or enables the administrator to register new components.
  • Add Server Wizard. To .export a package to a remote server, dynamically adding servers to a distributed solution.
  • Add Clients Wizard. To add client systems to a distributed solution.
  • Configure Wizard. To set the transactional properties of components deployed within a package.
  • Security Wizard. To configure the security attributes of components and packages.

The Microsoft Transaction Server Explorer includes the following GUI utilities:

  1. Transaction Lists. To list the properties of the running transactions.
  2. Transaction Statistics. To track transaction performance.
  3. Trace Messages. To view trace messages.

The following is an example of a standard transaction that occurs in the banking industry.

Architecture

The bank application consists of four components:

  1. Account. Uses ODBC calls to modify an account record in a single database.
  2. MoveMoney. Performs debit, credit, and transfer operations against different bank databases.
  3. Receipt. Generates a unique ED number for each bank transaction.
  4. UpdateReceipt. Allocates ranges of unique ED numbers for receipts.

Transaction

This is an example of a simple application getting all of the benefits of a sophisticated, high-end server infrastructure—including transactions, location transparency, thread and process management, and database connection pooling—through integration with Microsoft Transaction Server (MTS).

  • The client initiates a bank transaction by invoking MoveMoney.
  • MoveMoney invokes an Account component for each database that it needs to modify. MoveMoney‘also invokes the Receipt component for each bank transaction.
  • MTS makes sure that the work of all these components executes as a single unit (or transaction), even though these are different components that could be written in different languages.
    Each one of these components is built as a simple, single-user ActiveX component, yet executes as “multiuser” through MTS thread and process management services.
  • The Account Components access the SQL Server database via MTS ODBC resource dispensers, a mechanism for high-performance database access.
Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Microsoft Messaging


Microsoft Messaging Queue (MSMQ) makes it easy for application programs to communicate with other application programs quickly, reliably and asynchronously by sending and receiving messages.

Up until this point, the prevalent type of client-server communication used was synchronous communication. Although this provides real-time online transaction behavior, it is inappropriate where a slow link separates resources.

Another type of communication, known as store-and-forward, provides real-enough-time behavior and is used to overcome the limitations of slow links and unavailable servers in an asynchronous method.

Rather than update a resource immediately, store-and-forward saves a message in a holding area (or queue) for later delivery.
When the line is available, the message forwarded along the path to its final destination. It is similar to the way Internet-based e-mail works.

Microsoft Message Queue Server (MSMQ)

MSMQ provides an easy way for applications to communicate with other applications over a network by sending and receiving messages. MSMQ messages can contain data in any format that makes sense to both the sender and the receiver.

When an application receives a request message, it processes the request by reading the contents of the message and acting accordingly. If required, the receiving application can send a response message back to the original requestor.

While in transit between senders and receivers, MSMQ keeps messages queues—henee the name message queuing. MSMQ queues protect messages from being lost in transit and provide a place for receivers to look for new messages when they are ready. Most importantly, applications can use MSMQ to send messages and continue processing, regardless of whether the receiving application is running or reachable over the network. The receiver may be unreachable because of a problem or may have been naturally disconnected, as is the case with applications used by remote or mobile users.

Whenever the network becomes available, or the receiving application is ready to process requests, MSMQ will deliver any waiting messages—with the reliability required by mission-critical applications.

MSMQ offers a broad range of other features such as ActiveX support, dynamic routing and configuration, multiple delivery and acknowledgment options, and integration with Windows NT security facilities.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Microsoft Transaction Server (MTS)


Microsoft Transaction Server (MTS) provides a reliable environment for running applications. Besides, it provides error recovery protection for all transactional applications running on Microsoft® Internet Information Server version 4.0 (HS.)

Microsoft Transaction Server (MTS) is designed for flexibility, providing businesses with many deployment choices based on their existing systems and continuously changing requirements.

Location Transparency

MTS application components are location transparent. It is unnecessary for the client of a component to know the physical location of the component in the file system or on the network. If this knowledge is unavailable to the client, it forces a consistent approach for interaction with components.

The same exact components can be deployed so that all users can share them. This means that only one set of source code needs to be supported for multiple configurations. This lowers the costs associated With maintaining code and it increases deployment options.

Note It is a good idea to place business objects in a central location on the network. Objects can be shared among applications, and unit testing can be conducted before any components are deployed. Maintenance costs are decreased because changes to rules only occur at a single point.

Integration with DOOM

MTS uses the distributed version of Component Object Model (COM) for component-to-component communications across a network. DCOM is a fast, native object transport for Windows NT and Microsoft Windows 95 and is licensed as an open-industry standard to technology vendors through the Open Group.

Database and Resource Manager Flexibility

MTS is designed to work with any resource manager, including relational databases, file systems, and image stores, that supports a transactional two-phase commit protocol. This enables businesses to deploy high-performance applications on MTS that take advantage of existing investments in UNIX and mainframe data stores.

Integration with Microsoft SQL Server

MTS is tightly integrated with Microsoft SQL Server™ through support of the OLE Transactions two-phase commit protocol, and through common use of the Distributed Transaction Coordinator.

Support for Clients from Win32 to HTML

Microsoft Win32 “fat” clients and HTML “thin” clients can access MTS applications at the same time. This provides businesses with an unlimited number of client deployment options for MTS applications.

No Client Footprint

MTS does not require any specific code or libraries to operate on a client system that accesses MTS applications; thus lowering the cost and complexity of distributed applications.

Application Partitioning

Administrators can easily partition an application across ‘multiple servers by deploying an application NTs components into several packages, with each package running on its own server. This improves system fault isolation, while increasing application performance and scalability.

Automatic Support for Transactions

MTS automatically provides transaction support to applications running on the server, providing a reliable failure isolation and recovery mechanism. Transaction support is transparent to the application programmer. This is a considerable improvement compared to previous generations of transaction processing systems, where developers had to program low-level operation control primitives into their applications explicitly.

Process Isolation

Using MTS packages developers and administrators can easily isolate components, so they operate in their system process. It provides an additional level of failure isolation and data protection.

When a component registered with MTS, it runs as a separate process. The InProcServer32 key from the code is replaced with LocalServer32. It specifies Mtx.exe as a surrogate for the in-process server. Acting as a surrogate allows MTS to provide a wrapper for the real component.

Automatic Distributed Security Service

MTS provides a distributed security service integrated with Windows NT security. It allows developers to prevent unauthorized access to business applications, even if the application includes components purchased from third parties.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Straightforward and inexpensive with MTS


Application server development with MTS is less complicated and less expensive because of the following features:

Three-Tiered Application Model

Three-tiered applications—where the application server, client computer, and data source separated from each other—provide more deployment flexibility than two-tiered client/server programming, where application code is location-dependent.

  • Presentation – The client consists mostly of a graphical user interface (GUI) such as a browser used to display Web pages. Services such as database connection and business services obtained from middle-tier servers. It results in less overhead for the user, but more network traffic for the system as components distributed among different machines.
  • Business /Data Components – Middle tier components can implement data rules or business rules. These components provide the logic between the client computer and the data source. It is the layer where necessary line-of-business standards and logic exist. Business rules can consist of business algorithms or legal or government regulations. Data rules consist of rules to keep the data structures consistent, within a particular database as well as among multiple databases. These components can exist on a server computer to assist in resource sharing. They can be used to enforce business and data rules. Since they are not tied to a particular client, they can be employed by all applications.
  • Data Source – The data source tier represents a computer running a database where information stored. It is the actual database management system (DBMS) access layer. You can access the data source tier though the data/business rules layer, and on occasion directly through the presentation layer itself. The data source tier consists of data access components (rather than raw DBMS connections)*to aid in resource sharing and to allow clients configured without installing an application comprised of libraries or drivers on each client.

ActiveX Language Support

Developers build MTS applications as software components using tools that support ActiveX, including Microsoft Visual Basic, Microsoft Visual C++, and Microsoft Visual J++.

Automatic Thread and Process Management

MTS manages low-level system resources. It enables components to operate automatically in a multi-user environment without forcing developers to build this complexity into their applications.

Object Management

MTS provides “just-in-time” instantiation, allowing developers to use components to deliver high-performance applications on servers.
If a client encountered a component with enhanced functionality when it was expecting a component with only a base level of functionality, such as an older version of the component, it would not fail. It is because it has no dependency on the newer features.

If a client that expects the enhanced functionality supplied by a current object encounters an older version of the object with fewer features, the client can degrade its exposed services to match those provided by the older object.

Component Packaging

MTS includes a component packaging service that manages the complicated logistics of integrating, installing, and deploying many components as a single application.

Database Connection Pool

MTS maintains a pool of Open Database Connectivity (ODBC) connections to a database, providing high-performance database access without forcing the developer to write code to manage complex database synchronization issues.

Shared Property Manager

MTS provides a mechanism that makes it easy to share data among multiple concurrently executing objects without forcing the developer to program complex state sharing and synchronization logic.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Microsoft Transaction Server


Developers use Microsoft Transaction Server (MTS) to develop scalable server applications built from Microsoft ActiveX components.
It allows developers to focus on solving line of business issues instead of on building the networking infrastructure or the client component of an application.

MTS delivers the “plumbing“—including transactions, scalability services, connection management, and point-and-click administration—providing administrators an easy way to deploy these scalable server applications.

A transaction is a unit of work that succeeds or fails as a whole. Transactions are a way to coordinate a series of changes made to a resource or sets of resources. The most common type of transactions coordinate through a central point, called a resource manager.

Microsoft Transaction Server (MTS) is the resource manager and uses a simple programming model to manage the transactions. The basic pattern consists of the following actions and is always the same

A client requests a Component Object Model (COM) object is running under MTS control. It permits MTS to create an object context and associates it with the object. When the task is completed, the object calls SetComplete to indicate success. If the task is not completed the object calls SetAbort to indicate rollback.

These actions have what are known as ACID properties. ACID is an acronym that stands for Atomicity, Consistency, Isolation, and Durability. The following definitions explain ACID.

Atomicity – Either all changes happen or none happen. It ensures, for instance, that in a bank transaction a deposit and withdrawal will either both occur or neither will occur.

Consistency – Actions taken as a group do not violate any integrity constraints. MTS will check the permissions on every object involved in a transaction to ensure none are violated during a group change.

Isolation – For actions that execute concurrently, one is either executed before or after the other, but not both simultaneously. It prevents different, and possibly conflicting, changes from being made to the same object.

Durability – Changes will survive failures of process, network, operating system, or others.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Components of a transaction


A component is a discrete unit of code built on Microsoft ActiveX technologies that deliver a well-specified set of services through well-specified interfaces. Components provide the objects that clients request at a run time.

The components of a transaction must include:

Client logic : Includes forms and the user interface.

Network protocol :  Links the client with the server.

Network receiver : Listens to the network accepts incoming calls from clients, and manages congestion.

Queue manager :  Tracks and manages connects in case client calls start to back up.

Connection manager : Tracks work and system resources on behalf of each client.

Context manager : Tracks each user NTs concurrent identity and state.

Security manager : Prevents unauthorized access to the application or data.

Thread pool : Avoids having to dedicate a thread for each user.

Service logic : Line-of-business or in-house code that the application performs.

Synchronization manager : Coordinates the transaction.

Configuration manager :  Manages thread and server resources.

Database connection manager : Allocates database connections for multiple users.

Data : The database that the transaction is working on.

Any system that allows clients to be added must scale up efficiently or risk a serious drop in performance as the number of client connections increases.

A scalable application has to take into account three basic elements:

  1. The messages from multiple clients will come across the network to access the shared data on the server. These messages need to be received, ‘queued, processed, and the responses routed back to the right clients promptly.
  2. Next, there is the idea of the context; it can be anything about the user, for example, the language of the user or even a complete identity of the user or perhaps a user configuration. A user’s context is usually tightly related to what access is allowed and in general, security.
  3. Finally, the Service Logic layer, which contains some line-of-business logic that controls access to the shared data used. The problems associated with scaling arise at this point and require some synchronization such as database locking or a similar mechanism.

The key to building scalable applications is to understand that the logic to deal with most of the scalability issues is already integrated into Microsoft® Windows NT Server. The challenge, then, becomes how best to take advantage of it. Using MTS enables your developers to focus on the areas of line-of-business logic contained in the Service Logic and the Shared Data.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

ACL for Server Security


acl

Maintain a secure site without disclosing information to unauthorized users. Being aware of authentication and access control issues is necessary. Even on sites that contain only widely available public information, being aware of safety helps to prevent compromising the server.

Restricted Catalog Access

When Index Server first installed, the catalog is set up with an Access Control List (ACL) that allows only system administrators and system services to access it. In part, this assures that if the catalog directory contained within a virtual root, unauthorized users would not see the files in the catalog in the context of their query. The protection on the catalog directory is also necessary to prevent unauthorized users (who might have access to the server by use of file-server shares) from seeing the contents of the catalog. Although the information in the catalog is in a form that would be difficult for someone without knowledge of the file formats to decipher, it is possible to read the content of files on the server by examining the catalog.

If an additional catalog directory created manually, care should be taken to ensure that it, and the files created in it, have appropriate access controls. A catalog directory should allow access for administrators and for the System account. Index Server runs as a service, so System access is required.

When documents filtered, any access controls on a document are kept in the catalog and checked against client permissions when a query processed.
If a client does not have access to a document, the document will not be included in any of the client’s query results; there will be no indication that the document exists.

Avoid the appearance of missing hits. A user should properly authenticate before processing a query.

To enforce access control properly, clients should be properly authenticated before they can send a query to the server. The easiest way to ensure that a client is authenticated is to put an access control on the form that issues a query. You can also put an access control list on the .idq, .htx, or .htw file used in a query.

Depending upon the configuration of IIS, one or more of the following authentication mechanisms can be used:

  • Anonymous logon
  • Basic authentication
  • Windows NT Challenge/Response authentication

If the anonymous logon is allowed, it will be used by default as long as all files accessed by the client are permitted to be accessed by the anonymous logon account. Whenever an attempt is made to gain access to a document for which access denied to the anonymous user, an authentication dialog will be presented, provided another authentication mechanism is available. Then, the client can provide authentication and thereby gain access to files that would otherwise deny.

If you turn off clients’ access to some protected files by disabling authentication on a virtual directory (i.e. by setting Anonymous access only), you should also disable authentication for the .htx file. Otherwise, clients will be able to see the contents of the protected files in the hit highlights returned after issuing a query.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now

 

Query forms Index Server


query-forms

Query forms allow users to search your Web site for documents that meet the criteria they specify. Index Server provides several features that you can incorporate into a query form to enhance the query process, improve result reporting, and track usage.

Query Scope

A query range specifies the set of documents to be searched by the query engine. The range typically indicated by a directory path on a storage volume such as D:docs.

Content Query Restrictions

The content query restrictions narrow the focus of a query by describing what type of textual content to search.

Property Query Restrictions

The property query constraints specify the file attributes included in the search. These features can include file size, creation and modification dates, file names, and authors.

Hit Highlighting

The hit-highlighting feature shows you the specific portions, if any, of the document that satisfies your query. To view the hit highlights, click Show Highlights (condensed) or Show Highlights (full text) located under each result abstract. With this feature enabled, you can view an HTML page containing a list of the hits, with those words that make up the hit displayed in red italic text.

Query Logging

IIS logs all traffic between the client and server. Standard IIS logging picks up query information such as the querying Internet Protocol (IP) address and the queries processed by the server.

Index Server interacts with IIS so that you can search a Web site for information through a query form embedded on a Web page.

Sample Query Form

Included with Index Server is a sample query form that can be used to search the indexed files. These sample forms can be made available to Web site users or they can serve as examples of how to develop customized query forms. The sample query form can be found by pointing to Start, Programs, Windows NT Option Pack, Microsoft Index Server, and then clicking Index Server Sample Query Form.

Query Form Elements

The Basic query form is comprised of several elements:

  • HTML File :  This file displays a Web page where the user enters the query parameters. It also displays the results set returned by Index Server.
  • Internet Data Query (IDQ) File : The IDQ file (a file with an .idq extension) is the intermediate form of the user’s search request that Index Server will run to search the index.
  • HTML Extension File (HTX) :  The HTX file (a file with an .htx extension) is an HTML file containing query results set data. This data is then added to an HTML page and sent to the Web browser to be displayed.

Note Index Server also uses another file type, .htx, as a template for formatting the hit-highlight page. The contents of the .htx with the .htx file is formatted as a Web page and sent to the Web browser.

In addition to creating basic query forms, you can use Active Server Pages (ASP) and SQL with Microsoft ActiveX Data Objects (ADO) to create query forms.

ASP Queries

You can also build query forms with ASP, which allow you to capture the power and flexibility of ActiveX scripting. Queries created with .asp files enable you to capitalize on scripting languages such as Microsoft® Visual Basic® Scripting Edition (VBScript) and Microsoft® JScript™ to add flexibility in displaying query results.

Note Creating query forms with ASP is more flexible and powerful than other solutions. However, if your site receives large numbers of simultaneous queries, you should create query forms with .idq, .htx, and .htm files (rather than .asp files) for the quickest response time.

SQL Queries

Index Server provides an alternative method of issuing queries on an indexed file system. Instead of using Index Server’s standard forms, you can write SQL queries in applications that use ADO. In your .asp files, use the SQL Extensions to form the query, ADO to retrieve the data, and a scripting language such as VBScript to display the data.

Note If Index Server performance becomes an issue, use the basic query forms. ASP queries and SQL queries require more processing power to execute.

Companies Price Server Location Price Visit Now
adroitssd
Cloud SSD Hosting
$1.43 /mo. WILMINGTON, DE, US Price @ $1.43 /mo. Visit Now
247-host $2.99 /mo. LASALLE, CA Price @ $2.99 /mo. Visit Now
ehost.com $2.75/mo. Burlington, MA, US Price : $2.75/mo. Visit Now
siteground
Lifetime Free Domain
$3.95/mo. Panama, PA Start @ $3.95/mo. Visit Now
webhostingpad $1.99/mo. Arlington Heights, IL, US Start @ $1.99/mo. Visit Now
webhostingbuzz $4.95/mo AUBURN, MA, US Start @ $4.95/mo Visit Now
ipage
Cheapest Webhosting
$3.25/mo. Burlington, MA, US Start @ $3.25/mo. Visit Now
ixwebhosting $3.95/mo Columbus, OH, US Start @ $3.95/mo Visit Now
sitevalley $4.95/mo NASHUA, NH, US Start @ $4.95/mo Visit Now
liquidweb.com
Managed WordPress Hosting
$89.00/mo. Lansing, MI, US Price : $19.00/mo. Visit Now