tut103.ppt

Post on 15-Dec-2014

434 views 4 download

Tags:

description

 

Transcript of tut103.ppt

www.novell.com

Behind the Scenes of Novell Portal Services: A Technical Architectural Explanation

Behind the Scenes of Novell Portal Services: A Technical Architectural Explanation

Matt BrooksSenior Software Engineermgbrooks@novell.com

Tim SchmanskiDevelopment Managertschmans@novell.com

Agenda

• Overview/requirements• The gadget• Page layout• Directory integration• Key features• Implementation scenarios

Overview

• Novell Portal Services is the face of your One Net

Users can access your portal from any web browser

No client or plug-ins are required Content delivered is based on directory

attributes Personalize delivery and presentation

System Requirements

• NDS®* eDirectory™ 8.5• JVM 1.2.2 or higher compliant platform

JVM 1.3 is recommended• Web server• Servlet engine compliant with Java

Servlet 2.2 Spec.

*Novell Directory Services®

System Requirements

• Supported browsers Windows and Macintosh Microsoft Internet Explorer 4.x and above Netscape 4.5 and above

Note: any browser should work (these are just the ones that have currently been tested)

System RequirementsTested Configurations

Platform Web server Servlet engine

NetWare® 5.1SP 2 and JVM 1.2.2

NovonyxApache (1.3.14)

Tomcat (3.2)

Windows NTService Pack 6a

IIS (4.0)Apache (1.3.14)

Tomcat (3.2)

Windows 2000Service Pack 1

IIS (5.0)Apache (1.3.14)

Tomcat (3.2)

Linux Apache (1.3.14) Tomcat (3.2)

Solaris I-PlanetApache (1.3.14)

Tomcat (3.2)

System Requirements

• Administration 100% browser/portal-based

• All administration is done via the portal/any compliant web browser

100% LDAP-based• All communication to the directory is done via

LDAP• The portal can easily be placed inside or outside

the firewall

High-Level Design

BrowserBrowser

Web serverWeb

serverNovell Portal

Services

Novell Portal

Services

Session managerSession manager

Gadget managerGadget manager

Configuration manager

Configuration manager

Authentication manager

Authentication manager

Back-end Back-end data data

sourcessources

Back-end Back-end data data

sourcessources

Gad

get

Gad

get

Gad

get

Gad

get

Gad

get

Gad

get

Single Sign-onSingle Sign-on

The Gadget

• What is a gadget? It provides the data and layout that make

up the portal pages XML and XSL are used to format the portal

pages Gadgets return an XML stream and XSL URL

Novell Portal

Services

Servlet

Novell Portal

Services

Servlet

GadgetGadget

Gadget Interfaces

Configuration manager

Configuration manager

Back-end data

sources

Back-end data

sources

How Data Gets intoNovell Portal Services “Gadgets”

There are different ways to bring data into the portal1. HTML

Any URL that generates HTML can be linked into the portal HTML, ASP, JSP, scripting, etc.

2. XML Any URL that streams XML data can be formatted with a

stylesheet at the portal and included

3. Java Any back-end service that can be accessed via Java can be

presented in the portal

HTML Content

• Wizard-based Can pass credentials—Novell SecretStore™

• Basic• Form fill—POST or GET

Subdivide the page• Only grab the data you want

Personalize content• Add any LDAP attribute into HTML

– <bh>%cn%</bh> inserts common name

XML Data

• XML remote URL where XML data exists

• Any source—ASP, JSP, Novell Script, etc. Location of a stylesheet to render the data

• RSS Any site that publishes in this format can be

consumed and catagorized Hundreds of these feeds are currently available

• http://www.novell.com/newsfeeds/• http://w.moreover.com/categories/

category_list_xml.html

Java Integration

• Native gadget environment Interface and controls available via the SDK

• Developers can leverage the published API to hookinto their applications

• Tools include APIs for state, session, identity,single sign-on, and more

SDK for Novell Portal Services is available• http://developer.novell.com

Application IntegrationChoice Is the Key

• Use a wizard Wizards are provided to record access to web pages Credentials are recorded and stored to provide one-step

access

• Build links and hooks with existing gadgets Citrix XML iFrame

• SDK—Leverage integration with JAVA Leverages the API set in portal services APIs included

• Session, state, authentication, credential store, and more

CollaborationCollaborationExchangeGroupWise® inboxGroupWise calendarPOP3/IMAPNNTP

SystemSystemAuthenticationHTMLiFrameJDBCPortalStatsPortal administrationPreferencesRSSSelf-registrationShortcutUser adminXML remote

ApplicationApplicationAppletCitrixNewsPhonebookStockWeatherNetworkFileGadget

Gadgets Included with Portal Services

Page Layout

• Branding area Branding schemes

• Static portal framework

• Inheritable area Object schemes

• Gadgets inherited through assignment

FooterFooter

Column 3

Column 3

Column 2

Column 2

Column 1

Column 1

HeaderHeader

Branding Area Layout

• Create a branding scheme Choose number of columns Assign gadgets Identify inheritable area For example…

• Column 1—Corporate news gadget• Column 1—Logout gadget• Column 2—Inheritable area

HeaderHeaderHeaderHeader

FooterFooterFooterFooter

Corporate news gadget

Corporate news gadget

Logout gadgetLogout gadget

Branding Area Layout Example

Inheritable Area Layout

• Create an Object Scheme Set on per object basis (U/G/C or Portal Group) One object can have multiple schemes Controls which gadgets are assigned Controls the layout of the assigned gadgets Choose number of columns to use—one, two, or

three

Inheritable Area Layout Example

Object scheme 4

Object scheme 4

Gadget 1 Gadget 2 Gadget 3

Gadget 1 Gadget 2 Gadget 3

Object Scheme 1

Object Scheme 1

Object scheme 3

Object scheme 3

Object scheme 2

Object scheme 2

Combined Layout Example

Gadget 1 Gadget 2

Gadget 1 Gadget 2

OS4OS4Corporate news gadget

Corporate news gadget

FooterFooter

Logout gadgetLogout gadget

HeaderHeader

OS3OS3OS2OS2OS1OS1

AU

X C

LASSBranding

schemes

Object schemes

Directory Object Relationships

PCOPCO

CodeCode

GadgetGadget

Portal groupsPortal

groups

Utilize the Strengths of the Directory

Who you are in the directory matters•All assignments are based on

user/groups/containers…even attributes

Before you start configuring Portal, stop and consider:

1. Which people should have access to what gadgets?

2. How are you going to grant your users access to different gadgets?

Inheritance and Assignments

Personalization—End User

• As much as the administrator is willing to allow

Granularity• Administrators can determine what they want the end

user to be able to modify

Overwrite• Administrators can allow users to change or not to

change by enabling the users ability to overwriteassignments and settings

All overwrites are stored on theuser object in the directory

Portal Groups

Attribute-based inheritance

Membership list

Attributes only

LDAP query of attributes creates dynamic memberships at login time

Name Level Location Title

John Doe Manager Provo Sr. Engineer

Single Sign-on

• Directory credentials for authentication There are two types of authentication: basic

and form fill• Basic is a browser-to-web site method• Form fill is used by most web applications to sign-in

with a POST or a GET• Novell Portal Services will use either of these methods

with your directory credentials to login

Single Sign-on—Credential Store

• Non-standard credentials for access to web-based applications are encrypted and stored in the directory

• Novell Portal Services will prompt you and, via LDAP in the directory, will store the credentials used for authentication

It will use these in basic or a form fill (POST or GET)

Customization—Administrator

• Highly customizable Novell Portal Services is based on XML XML separates data from the presentation

• This makes it easy and efficient to change and update look without touching the data set

The look of the portal can be easily updated to fit the look of the corporation it is being implemented in

Customization—Device Support

• XML provides an easy way to modify the lookfor any device

Change the stylesheets for whatever platform you need

Platforms that cannot handle native XML will be

fed HTML• Non-XML platforms are detected and rendering is done

on the back end

Platform

Implementation ScenariosAll-in-One

Novell Portal Services

Novell Portal Services

LDAP v3 directoryLDAP v3 directory

Platform

Implementation ScenariosOne Better

Web serverServlet engine

Web serverServlet engine

Novell Portal Services

Novell Portal Services

LDAP v3 directoryLDAP v3 directory

Platform Platform

Implementation ScenariosDNS Redundant

Novell Portal Services

Novell Portal Services

Novell Portal Services

Novell Portal Services

Platform

Novell Portal Services

Novell Portal Services

LDAP v3 directoryLDAP v3 directory

Platform

Novell Portal Services

Novell Portal Services

LDAP v3 directoryLDAP v3 directory

Platform Platform

Implementation ScenariosMultiple Replicas

Novell Portal Services

Novell Portal Services

Platform Platform

Novell Portal Services

Novell Portal Services

Platform

LDAP v3 directoryLDAP v3 directory

LDAP v3 directoryLDAP v3 directory Replica Replica Replica Replica

iChain™

Win2K Solaris NetWare

Implementation Scenariosi-Login

LDAP v3 directoryLDAP v3 directory

Novell Portal Services

Novell Portal Services

Novell Portal Services

Novell Portal Services

Novell Portal Services

Novell Portal Services

demonstratiodemonstratio