Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Higgins/Solutions"
(→Configuration Summary (work in progress)) |
(→Configuration Summary (work in progress)) |
||
Line 24: | Line 24: | ||
|SOAP to RPPS web app | |SOAP to RPPS web app | ||
|Exec Java app | |Exec Java app | ||
− | |Exec Native app | + | |Exec Native app (note 1) |
| | | | ||
| | | | ||
Line 102: | Line 102: | ||
|- | |- | ||
|} | |} | ||
− | . | + | '''Note 1:''' At present we've been using Kevin Miller's Perpetual Motion browser add-on to launch the ISSd daemon. Kevin's add-on uses an xp-com (native code) plug-in to launch a local Identity Agent (currently called ISSd). The plan is to incorporate equivalent functionality within HBX either by a fresh implementation or by getting Kevin to agree to contribute some of his code. |
===H1 Identity Agent (HBX + hosted IdA)=== | ===H1 Identity Agent (HBX + hosted IdA)=== |
Revision as of 14:56, 22 May 2007
Contents
- 1 Overview
- 2 Higgins Configurations
- 2.1 Configuration Summary (work in progress)
- 2.2 H1 Identity Agent (HBX + hosted IdA)
- 2.3 H2 Identity Agent (HBX + native ISS Client UI + hosted rest-of-IdA) [not under active development at present]
- 2.4 H3 Identity Agent (100% local: HBX launches java application (JVM required))
- 2.5 H4 Identity Agent (100% local: HBX launches native code)
- 2.6 H5 Identity Agent (100% local: single OSGI bundle)
- 2.7 CardSpace-interoperable Identity Provider/STS
- 2.8 RP Enablement: RSS-SSE RP Test Application
- 3 Higgins-based Configurations
- 4 Building Blocks
- 5 Nightly Builds
- 6 Conventions Used on This Page
- 7 See Also
Overview
A Deployment Configurations is a specific combination of Components that, when assembled and deployed result in an application or service that is identifiable to an end-user as a "whole" app or service. This page is intended to explain how to assemble building block Components into running apps and services. The intended audience is technical, but more about assembling, building and deploying, as opposed to "developing."
Deployment configurations documented here include web apps, web services, and some where some or all of the code runs on a local client machine. Some require the Higgins Browser Extension (aka HBX). Some have been deployed to Eclipse Foundation servers and can be used for testing and and development-related purposes. Examples include a CardSpace-compatible IdP service (what Microsoft would call a "Managed Card Provider" (not to be confused with our use of the term provider)), or a MediaWiki app that supports OpenID sign-in, etc.
Two kinds of deployment configurations:
- Higgins Configurations. These are combinations of Higgins Components all of which are available from the Higgins Eclipse CVS.
- Higgins-based Configurations. These configurations include 3rd party code (usually also open source) that incorporates (is based on) one or more or all of the Higgins Components
Higgins Configurations
Configuration Summary (work in progress)
Component Used | H1 IdA | H3 IdA | H4 IdA | H5 IdA | IdP/STS | RP: RSS-SSE |
---|---|---|---|---|---|---|
Higgins Browser Extension | SOAP to RPPS web app | Exec Java app | Exec Native app (note 1) | |||
RP Enablement: RSS-SSE RP Test Application | yes | |||||
I-Card Manager | yes | yes | not yet implemented | no | ||
RPPS web app + core | yes | yes (core only) | part of ISSd | part of bundle | ||
I-Card Registry | yes | yes | part of ISSd | part of bundle | yes | |
CardSpace Managed I-Card Provider | yes | yes | part of ISSd | part of bundle | yes | |
Personal I-Card provider | yes | yes | part of ISSd | part of bundle | yes | |
Token Service | yes | yes | part of ISSd | part of bundle | yes | |
Identity Attribute Service | yes | yes | part of ISSd | part of bundle | yes | |
JNDI Context Provider | yes | yes | part of ISSd | part of bundle | yes |
Note 1: At present we've been using Kevin Miller's Perpetual Motion browser add-on to launch the ISSd daemon. Kevin's add-on uses an xp-com (native code) plug-in to launch a local Identity Agent (currently called ISSd). The plan is to incorporate equivalent functionality within HBX either by a fresh implementation or by getting Kevin to agree to contribute some of his code.
H1 Identity Agent (HBX + hosted IdA)
- Installed locally:
- Higgins Browser Extension (HBX) --HBX uses an embedded ISS Web UI
- Remote:
- Deployed I-Card Manager webapp (see I-Card Manager Web Application Deployment section)
- Deployed RPPS web service (see RPPS Web Service Deployment section)
H2 Identity Agent (HBX + native ISS Client UI + hosted rest-of-IdA) [not under active development at present]
- Installed locally:
- Higgins Browser Extension (HBX) --HBX launches the ISS Client UI
- ISS Client UI - rich client card selector
- Remote:
- Deployed I-Card Manager webapp (see I-Card Manager Web Application Deployment section)
- Deployed RPPS web service (see RPPS Web Service Deployment section)
H3 Identity Agent (100% local: HBX launches java application (JVM required))
- Installed locally:
- Higgins Browser Extension (HBX) --HBX launches the ISS Client UI
- ISS Client UI rich client card selector
- Deployed I-Card Manager webapp (see I-Card Manager Web Application Deployment section)
- Deployed RPPS web service (see RPPS Web Service Deployment section)
- Requires local JVM, Tomcat, anything else...?
H4 Identity Agent (100% local: HBX launches native code)
- Installed locally:
- Higgins Browser Extension (HBX) --HBX launches the ISS Client UI
- Higgins "core" Components linked together into a single native code executable
H5 Identity Agent (100% local: single OSGI bundle)
- All Higgins "core" Components linked together into a single OSGI bundle (Eclipse plug-in)
CardSpace-interoperable Identity Provider/STS
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
CardSpace-interoperable IdP/STS | WS-Trust WS-Transfer |
TBD | Token Service | Mike |
.
RP Enablement: RSS-SSE RP Test Application
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
RSS-SSE RP Test Application (WAR) | Fedora 5 | JVM 5.0, Tomcat 5.x | WS, RSS-SSE | TBD | site | SergeiY |
.
Higgins-based Configurations
CardSpace-interoperable Identity Provider/STS
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
CardSpace-interoperable IdP/STS Bandit Impl | Open SUSE 10.2 | JVM 5.0 Tomcat 5.0 |
WS-Trust WS-Transfer |
TBD | Token Service | Daniel |
.
Building Blocks
The following sections describe services that are used by top level deployment scenarios described above
I-Card Manager Web App
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
I-Card Manager Web Application (WAR) ide, cli | Fedora 5 | JVM 5.0, Tomcat 5.x | WS | TBD | site | SergeiY |
.
RPPS Web Service
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
RPPS Web Service (WAR) | Fedora 5 | JVM 5.0, Tomcat 5.x | WS, RSS-SSE | TBD | WS endpoint | SergeiY |
.
Nightly Builds
Though certainly not a "deployment" in the usual sense, the Higgins project automatically builds some of the Components every night.
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner | |||
---|---|---|---|---|---|---|---|---|---|
Nightly Component Builds psf | SUSE | Ant | n/a | open | build.eclipse.org | Each Component Owner |
.
Conventions Used on This Page
Each Deployment Configuration is documented by a table. In cases where this is a multi-row table, there should be a short paragraph on this page that describing how the multiple machines are used together. For example: if row/machine#1 is running Firefox with HBX and row/machine#2 is running the I-Card Manager then using the browser you'll be able to do <something>.
- The deployment owner is responsible for maintenance of this table
- Each computer involved has its own row. This row describes that computer's configuration (OS, runtime, etc.).
Table Columns
- Deployment Configuration - link to wiki page describing deployment configuration (see "Deployment Description" section below)
- OS - OS that this machine either (a) runs on (see URL column) or (b) has been tested on. Put in parens the OS number if more than OS instance is involved
- Runtime - Runtime environment for this machine (e.g. JVM & version, Tomcat & version, etc.)
- Binding - how will the service running on this machine be consumed
- Open - open enhancements and bugs (Bugzilla) for this deployment configuration: (Note: none are currently defined)
- URL - endpoint that hosts a test version of the service (hosted by Eclipse Foundation)
- Owner - person with overall responsibility for this deployment configuration (not individual components)
Example Table
Deployment Configuration | OS | Runtime | Binding | Open | URL | Owner |
---|---|---|---|---|---|---|
CardSpace-interoperable IdP/STS | Open SUSE 10.2 | JVM 5.0 Tomcat 5.0 |
WS-Trust WS-Transfer |
TBD | Wag (IdP) | Daniel |
Deployment Description
This wiki page must contain the following sections:
- Overview --describes briefly the service running on this machine
- Assembly and Build
- A table with a row for each Higgins component required and a row for each non-Higgins component JAR, etc required. Each row has these columns:
- Name of component/jar
- Link to description --in the case of Higgins components and projects this should be a link to the Componentspage#<component-name> AND the row prefix (e.g. "A" or "B")
- A table with a row for each Higgins component required and a row for each non-Higgins component JAR, etc required. Each row has these columns:
- Deployment
- Deployment "hints": things you might have had to do to "configure" the files. For example the STS and LDAP CP have several configuration files that need to be explained a little for anyone wanting to replicate the deployment to their own servers. Another example: Tomcat configuration
- Any unusual steps related to configuring non-Higgins components
The Assembly and Build instructions section would start off with a bulleted list of components and other external stuff that you'll need. We can include links to the various required rows on the Components page tables as we've started doing.