Adding Syndication Channels

Overview of Adding Syndication Channels

A syndication channel is a channel that provides syndicated, continuously updated Web content. The SAS Information Delivery portal provides support for the emerging Rich Site Summary (RSS) standard, a lightweight XML format designed for sharing news headlines and other syndicated Web content. By incorporating RSS content into the Web application, you can give users access to high-quality, continually updated news that is relevant to their roles in the organization. The BBC, CNN, and Forbes channels are just a few examples of RSS channels that are available publicly.
RSS documents contain metadata, or summary information, about content that is available on the provider's Web site. Each content item consists of a title, a link, and a brief description. By clicking on a link, the user can display the full text for a content item.
The following sections describe the steps for adding a syndication channel.

Step 1: Add the Syndication Channel's Permission Statement to the Appropriate Policy File

To connect to the site that is syndicating content for the syndication channel, you must add a permission statement to the policy file that grants permission to the SAS Information Delivery Portal to connect to the site.
To add a permission statement to the policy file, add a statement with the following format:
permission java.net.SocketPermission
"machine.domain:80",
 "connect, resolve";
where machine.domain is the domain-qualified host on which the XML file for the syndicated content is located.
When the SAS Information Delivery Portal's machine is running IPv6, the machine.domain:80 host address format might not be valid for the permission statement. In these cases, you must either enable all socket permissions or determine the appropriate host address format to use in the policy file.
For example, if you want to add a syndication channel from rssnews.acme.com, make a copy of the example file located in the SAS-configuration-directory\Lev1\Web\Common\SASServer1\SASPortal4.3\PolicyFileInputs\ears\sas.portal directory, and add the following statement about rssnews and its port number:
 grant codeBase "file:${sas.deploy.dir}/sas.portal4.3ear/-" {
 ...
 permission java.net.SocketPermission
	 "rssnews.acme.com:80", "accept,connect,listen,resolve";
 ...
 };
For more information about policy files, see Configuring and Deploying Restrictive Policy Files in SAS Intelligence Platform: Middle-Tier Administration Guide.

Step 2: Ensure That the Appropriate User or Group Permissions Tree Is Created in the SAS Metadata Repository

If you have administrative permissions, you can share a syndication channel with a user group that is defined in SAS metadata. Before you can define a syndication channel and share it with a group, you must create a permissions tree in SAS metadata for the group. To verify that a permissions tree exists, or to create one, see Managing Portal Permission Trees in Metadata . You can share pages with either of the following groups:
  • a PUBLIC group, which contains all portal users. It is convenient to share pages with the PUBLIC group because all users in that group, by default, have access to the syndication channels.
  • a specific group that you define such as “Sales Managers.” In this case, the pages are shared with the specific group that you defined.
After you add the syndication channel metadata to the metadata repository (as described in Step 3), the group is granted ReadMetadata permission to enable the group members to view the content. Group members can also add the syndication channel to one of their collection portlets. Only the group that you specify can access the syndication channel.
If you add the syndication channel metadata by running a SAS program, you can associate the syndication channel with a user instead of a group. The user must have a permissions tree in metadata. (To create a permissions tree for a user, log on to the portal as that user.) When you run the SAS program, the user is granted ReadMetadata and WriteMetadata permissions to view and edit the content. You can later log on to the portal as a group content administrator to share the syndication channel with a group (you might need to search for the syndication channel first).

Step 3: Add the Syndication Channel's Metadata to the SAS Metadata Repository

There are two ways to define a syndication channel in metadata:
  • Create the syndication channel in the SAS Information Delivery portal. When you create a syndication channel in the portal, the portal adds the syndication channel's metadata to the metadata repository.
    Here is a summary of the steps that are required to create a syndication channel in the portal. For complete instructions, see the online Help that is provided with the portal:
    1. Log on to the portal as the group content administrator for the group with which you want to share the syndication channel.
    2. Either create a syndication channel and add it to a collection portlet, or create a syndication channel that is independent of any portlet.
    3. When you create a syndication channel, you can share it with a group that is defined in SAS metadata.
    For general information about sharing portal content, see Sharing Content in the Portal .
  • Create the syndication channel by running a SAS program. To edit and run a SAS program that creates a syndication channel and adds the channel's metadata to the SAS metadata repository, follow these steps:
    1. Modify the SAS program LoadSyndicationChannelExample.sas, which is located in the SAS-configuration-directory\Lev1\Web\Applications\SASPortal4.3\sasJobs directory. In the LoadSyndicationChannelExample.sas file, specify the appropriate variables for your syndication channel.
    2. After you have modified LoadSyndicationChannelExample.sas, save your changes and run the program.
Here are descriptions of the variables that are in LoadSyndicationChannelExample.sas:
options metaserver=“host”
Specify the host name of the SAS Metadata Server. Use the value of the iomsrv.metadatasrv.host property in the configuration file located in the SAS-configuration-directory\Lev1\Utilities folder. For example: localhost machinemachine.mycompany.com
metaport=port
Specify the port number of the SAS Metadata Server. This value is a number between 0 and 65536. Use the value of the iomsrv.metadatasrv.port property in the configuration file located in the SAS-configuration-directory\Lev1\Utilities folder.
metauser=“user ID”
Specify the user ID to use to connect to the SAS Metadata Server. This user ID is typically the sastrust user.
metapass=“password”
Specify the password for the metauser. Make sure that this file is secure, or delete the file when you are finished. This file contains the password for the SAS Trusted User.
metarepository=“repository”;
Specify the name of the SAS Metadata Repository in which your portal metadata is stored, followed by a semicolon (;). Use the value of the oma.repository.foundation.name property in the configuration file located in the SAS-configuration-directory\Lev1\Utilities folder.
%let groupOrUserName=SAS User | Group;
Specify the SAS group or user that you want to add the data to, followed by a semicolon (;).
%let channelName=syndication channel name;
Specify the name of the syndication channel that you want to create, followed by a semicolon (;).
%let channelDescription=syndication channel description;
Specify the description of the syndication channel that you want to create, followed by a semicolon (;).
%let channelURI=syndication channel URI;
Specify a valid URL for the syndication channel followed by a semicolon (;). For example: %let channelURI=http://www.sas.com/news/preleases/SASRecentPress.xml;

Step 4: Implement Authorization for the Syndication Channel

You implement authorization for a syndication channel as follows:
  • If you create the syndication channel by running a SAS program, access is limited to the user or group that you specify in LoadSyndicationChannelExample.sas.
  • If you create the syndication channel in the portal as a content administrator for a group, you can share the syndication channel with a group of users. Only the users in that group can access the syndication channel.

Step 5: Make the Syndication Channel Available in the Portal

When you share a syndication channel with a group, the syndication channel becomes available to members of that group. Members can search for and add the syndication channel to their collection portlets.
You have other options for making the syndication channel appear in the portal syndication channel:
  • You can edit a collection portlet in order to add the syndication channel to the portlet. You can share the portlet with a group, including the PUBLIC group. Group members can search for and add the portlet to their pages.
  • After you add the syndication channel to a portlet, you can add the portlet to a page that has been shared or that you intend to share with a group. Depending on the page's share type, group members will either see the page the next time they log on, or group members can search for and add the page.
    Note: If you logged on as a portal administrator, you can edit any portlet or page in the portal. If you logged on as a group content administrator, you can edit only portlets and pages that you have created, or portlets and pages that have already been shared with the group for which you are administrator.

Step 6: Update or Remove the Syndication Channel

After you have created a syndication channel, you can edit it, remove it from a portlet, and delete it permanently from metadata. You can edit or delete any syndication channel that exists in metadata.
Any changes that you make to a shared syndication channel are seen by all users who can access the syndication channel. If you permanently delete a shared syndication channel, the syndication channel is removed from all portal views.
For instructions about editing, removing, or permanently deleting a syndication channel, see the online Help that is provided with the SAS Information Delivery Portal.