SAS 9.1.3 Integration Technologies » Administrator's Guide


Publishing Framework
Planning Your Publishing Solution
Managing Subscribers
Delivery Transports
Filters
Managing Channels
Persistent Stores
Publishing to Secure Servers
Example: Creating a Subscriber
Example: Creating a Channel
Publishing Framework

Planning Your Publishing Solution

Design Information Channels

Designing a successful publish and subscribe implementation starts with an understanding of why your organization is implementing the system. You will need to know, at a very basic level, what kind of information needs to be distributed to users and how widely that information needs to be distributed.

For example, you could start the planning process by understanding that your organization needs to disseminate sales information throughout the marketing organization and inventory data to the production organization. Starting with this base level of knowledge, you begin the process of breaking down the general categories of information into specific information channels by using a hierarchical model.


Channel hierarchy

How you divide and subset the categories depends on your organization's needs, but you should work toward creating information channels as tightly focused as possible, without making them too tightly focused to be useful. Channels that are broadly defined leave users not knowing whether information delivered over the channel will be useful to them; channels that are too narrowly defined force users to subscribe to a long list of channels in order to ensure that they receive the information that they need.

To help focus the information that users receive, set up policies for name/value keywords. Name/value pairs are attributes that are specified when a package is published and that help to identify the package contents. Each subscriber definition can include a name/value filter that only allows packages that meet the subscriber's needs to be delivered.

For example, if you publish a package with a name/value attribute of market=(Mexico), that package is only seen by those subscribers whose name/value filter indicates that they are interested in information about the Mexican market. Although the names and associated values can be anything that your organization finds useful, you must establish a list of acceptable keywords and values for those keywords. This list is essential for publishers to be able to provide consistent metadata that identifies published content and for subscribers to be able to filter published content in order to focus on the information they need.

When you define your information channels, you must also consider the users that will be accessing those channels as well as any restrictions that need to be placed on the channels. Although these aspects of planning are discussed separately and in more detail in the following two topics, in practice they are examined at the same time as you are defining your channels. You cannot define an information channel without first knowing who needs to see the information and how that information should be restricted.

Identify Initial Subscriptions

When you plan an initial set of information channels, you must identify the users and groups that are initially subscribed to those channels. The information to set up these subscriptions is taken from the information you collected when you planned the channels. An understanding of your organization's need for a publish and subscribe system must include not only what information needs to be published, but also who needs to see that information.

However, you do not have to determine every piece of information that every individual needs to see. Rather, the process of planning initial subscriptions focuses on wider distributions of information, such as identifying the essential information that departments and groups of users need. How closely you follow this guideline depends on your organization's needs -- there might be a few critical users who need to receive specific information, and there might be a need to subscribe a group of users to a tightly focused channel. In general, however, the initial subscriptions that you plan should be designed to distribute essential information to the largest number of users. Subscribers can request subscriptions to tightly focused channels as the need arises.

After you have determined the list of initial subscribers for each channel, you must determine how the information is to be distributed to users (whether by text- or HTML-formatted e-mail, with a WebDAV server, or through a queue) and identify their address information. The address information is essential for setting up the subscriber entries.

Analyze Information Security Requirements

When you plan information channels you must also consider security for your publish and subscribe implementation in order to ensure that the information that is published on each planned channel is uniformly sensitive. For example, if you plan for a single channel to distribute accounting information throughout your organization, you will encounter a security problem when the accounting department needs to publish sensitive information (such as employee salaries). With only a single, unrestricted channel, you cannot publish the information to a specific set of users. In your consultations with users, you must identify information channels whose access needs to be controlled.

Your plan must address both methods that SAS Integration Technologies uses to implement security -- authentication and authorization.

Authentication security involves the process of verifying that users are who they say they are. To authenticate users, servers use the host operating system's authentication provider, or they can use external LDAP or Microsoft Active Directory services. Therefore, you must implement authentication using the mechanisms provided by the host operating system authentication provider or alternative authentication provider. Authentication is a prerequisite for authorization.

Authorization security controls the information channels that users have access to. Without any security, users are able to subscribe to any information channel in your organization and access sensitive information. To prevent this situation, you must implement authorization security for each channel that you create. For more information about authorization security, see Security.

Configure Channels and Subscribers

Use the New Subscriber and New Channel wizards in the Publishing Framework plug-in to SAS Management Console to define the channels and subscribers that you identified during the planning phase. Begin by defining the subscribers; the New Channel wizard enables you to associate defined subscribers to a channel. See Managing Channels and Managing Subscribers for more information.

Develop Applications That Deliver Content

After you set up the publish and subscribe infrastructure and implement the mechanisms that deliver content to a selected set of users, you must develop or modify applications that will be used to create the content to be published. These applications can take the form of stand-alone applications that are written in a visual programming language or SAS programs. See Publishing Framework in the SAS Integration Technologies: Developer's Guide for information about the tools that are available to create a publishing application.

Make Client Applications Available

After you develop or modify the applications that publish content, the initial structure of the publish and subscribe implementation is complete. Your next step is to make these applications available to users in your organization. Using the information that you gathered during initial planning, make the appropriate applications available to each user or group. Publishers must obtain or install the appropriate publishing application for their needs. For example, an individual or department that needs to publish data-intensive reports on a regular basis might use a SAS program for publishing, while a user who needs to send information to a changing number of users on an occasional basis might use the SAS Publisher application.

Subscribers must also obtain or install any appropriate software that is required to view published content. In particular, each subscriber must install the SAS Package Reader application in order to be able to view the contents of published SAS packages. For more information, see SAS Package Reader in the SAS Integration Technologies: Developer's Guide. If the subscribers receive information through queues, they must also install the SAS Package Retriever. For more information, see SAS Package Retriever in the SAS Integration Technologies: Developer's Guide.

Announce Solution and Train Users

After the publishers and subscribers install the necessary applications, you can announce your implementation to your organization. You will also need to follow up the announcement with training for both publishers and subscribers, with training broken down by publishing methods, publishing needs, and subscriber applications.