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) |
(→Configuration Summary) |
||
Line 80: | Line 80: | ||
|in process P2 '''(note 2)''' | |in process P2 '''(note 2)''' | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
| | | | ||
Line 89: | Line 89: | ||
|planned part of process P2 | |planned part of process P2 | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
| | | | ||
Line 98: | Line 98: | ||
|in process P2 | |in process P2 | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
| | | | ||
Line 107: | Line 107: | ||
|in process P2 (self-issued tokens) | |in process P2 (self-issued tokens) | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
|yes | |yes | ||
Line 116: | Line 116: | ||
|in process P2 (self-asserted attributes) | |in process P2 (self-asserted attributes) | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
|yes | |yes | ||
Line 125: | Line 125: | ||
|not yet implemented | |not yet implemented | ||
|yes | |yes | ||
− | | | + | |in process P1 |
|part of bundle set | |part of bundle set | ||
|yes | |yes | ||
Line 135: | Line 135: | ||
#Process 2 is currently named "ISSd" it is a single native executable | #Process 2 is currently named "ISSd" it is a single native executable | ||
#How HBX directly talks to RPPS Core is still under discussion | #How HBX directly talks to RPPS Core is still under discussion | ||
+ | #H4 above is most similar to Microsoft CardSpace's architecture | ||
===H1 Identity Agent (HBX + hosted IdA)=== | ===H1 Identity Agent (HBX + hosted IdA)=== |
Revision as of 12:20, 23 May 2007
Contents
- 1 Overview
- 2 Higgins Configurations
- 2.1 Configuration Summary
- 2.2 H1 Identity Agent (HBX + hosted IdA)
- 2.3 H2 Identity Agent (HBX + native ISS Client UI + rest-of-IdA)
- 2.4 H3 Identity Agent (100% local: HBX makes SOAP calls to local RPPS web app (JVM required))
- 2.5 H4 Identity Agent (100% local: HBX/PM launches native code)
- 2.6 H5 Identity Agent (100% local: packaged as OSGI bundles)
- 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
Component Used | H1 IdA | H2 IdA | H3 IdA | H4 IdA | H5 IdA | IdP/STS | RP: RSS-SSE |
---|---|---|---|---|---|---|---|
Higgins Browser Extension | HBX makes SOAP calls to remote RPPS web app | HBX/PM execs native ISS Client UI (note 1) | HBX makes SOAP calls to local RPPS web app | HBX/PM execs native app | |||
RP Enablement: RSS-SSE RP Test Application | yes | ||||||
I-Card Manager | yes | not yet implemented | planned | not yet implemented | |||
ISS Client UI | in process P1 | ||||||
RPPS Webapp | yes | yes | |||||
RPPS Core | yes | yes | yes | part of bundle set | |||
I-Card Registry | yes | in process P2 (note 2) | yes | in process P1 | part of bundle set | ||
CardSpace Managed I-Card Provider | yes | planned part of process P2 | yes | in process P1 | part of bundle set | ||
CardSpace Personal I-Card Provider | yes | in process P2 | yes | in process P1 | part of bundle set | ||
Token Service | yes | in process P2 (self-issued tokens) | yes | in process P1 | part of bundle set | yes | |
Identity Attribute Service | yes | in process P2 (self-asserted attributes) | yes | in process P1 | part of bundle set | yes | |
JNDI Context Provider | yes | not yet implemented | yes | in process P1 | part of bundle set | yes |
Notes:
- 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.
- Process 2 is currently named "ISSd" it is a single native executable
- How HBX directly talks to RPPS Core is still under discussion
- H4 above is most similar to Microsoft CardSpace's architecture
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 + rest-of-IdA)
- Installed locally:
- Higgins Browser Extension (HBX) --HBX launches the ISS Client UI
- ISS Client UI - rich client card selector (talks to RPPS web app)
- Local or Remote (2 variations):
- RPPS webapp
- I-Card Manager webapp
H3 Identity Agent (100% local: HBX makes SOAP calls to local RPPS web app (JVM required))
- Installed locally:
- Higgins Browser Extension (HBX)
- 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 (this is under discussion)
H4 Identity Agent (100% local: HBX/PM launches native code)
- Installed locally:
- Higgins Browser Extension (HBX) --HBX or Perpetual Motion launches the ISSd exe
- ISS daemon (ISSd). This executable contains following:
H5 Identity Agent (100% local: packaged as OSGI bundles)
- Higgins core Components packaged as OSGI bundles (Eclipse plug-ins)
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.