Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Org.eclipse.higgins.icard"
Line 1: | Line 1: | ||
+ | This page describes the I-Card interface that all types of Higgins-compatible I-Cards must implement. It also describes other interfaces that implementers may choose to implement. | ||
+ | |||
+ | ==I-Card Interface=== | ||
+ | |||
// Return the human friendly name of the card | // Return the human friendly name of the card | ||
− | String getCardName() | + | String getCardName(); |
+ | |||
+ | URI getUUID(); | ||
// Return the human friendly name of the card issuer (creator) | // Return the human friendly name of the card issuer (creator) | ||
− | String getIssuerName() | + | String getIssuerName(); |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
// Return a background image of the card | // Return a background image of the card | ||
− | Image getCardImage() | + | Image getCardImage(); |
// Return the mime type of the background image (JPEG or GIF) | // Return the mime type of the background image (JPEG or GIF) | ||
− | String getImageMimeType() | + | String getImageMimeType(); |
// Return when the card was first issued | // Return when the card was first issued | ||
− | Datetime getTimeIssued() | + | Datetime getTimeIssued(); |
// Return the date and time after which the card should be | // Return the date and time after which the card should be | ||
Line 25: | Line 25: | ||
// return a list of all possible types of claims that are supported | // return a list of all possible types of claims that are supported | ||
// throw exception otherwise | // throw exception otherwise | ||
− | Iterable<String> getSupportedSimpleClaimTypes() | + | Iterable<String> getSupportedSimpleClaimTypes(); |
// If card handles complex claim types then | // If card handles complex claim types then | ||
// return an OWL-DL schema describing types of complex claim | // return an OWL-DL schema describing types of complex claim | ||
// objects that are supported | // objects that are supported | ||
− | String getSupportedComplexClaimTypes() | + | String getSupportedComplexClaimTypes(); |
// Given a relying party policy ''Policy'', return true | // Given a relying party policy ''Policy'', return true | ||
// if this card can provide the claims required/desired by the relying party | // if this card can provide the claims required/desired by the relying party | ||
// else return false | // else return false | ||
− | boolean isMatch(Policy) | + | boolean isMatch(Policy); |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
// Return whether the user wishes to be asked for explicit release of | // Return whether the user wishes to be asked for explicit release of | ||
// this card's information (i) every time it is requested (ii) only | // this card's information (i) every time it is requested (ii) only | ||
// the first time it is requested (iii) never | // the first time it is requested (iii) never | ||
− | ReleasePolicy getReleasePolicy() | + | ReleasePolicy getReleasePolicy(); |
// Set the release policy of this card | // Set the release policy of this card | ||
− | void setReleasePolicy(ReleasePolicy) | + | void setReleasePolicy(ReleasePolicy); |
+ | |||
+ | // Return a list of the types of expored card data stream formats supported | ||
+ | // ?? presumably a CardFormat also mentions XML language and/or version number | ||
+ | <Iterable>CardFormat getSupportedExportFormats(); | ||
// Return a data stream containing a serialization of the card | // Return a data stream containing a serialization of the card | ||
// The format depends on the kind of card | // The format depends on the kind of card | ||
// E.g. CardSpace I-Cards will export CardSpace format data | // E.g. CardSpace I-Cards will export CardSpace format data | ||
− | String export() | + | String export(CardFormat format); |
− | ==== | + | ===To Do=== |
− | + | ||
− | * | + | * Need methods to get/set the access control list idea (see [[I-Card]]) |
− | + | ||
− | + | ||
− | // Return a | + | ==TokenIssuerCard Interface== |
− | + | ||
+ | // Return the EPR of the card issuer | ||
+ | // For CardSpace cards this is either the local STS endpoint (for | ||
+ | // self-asserted cards) or a remote STS (for managed cards) | ||
+ | // For some other kinds of cards this is might be an IdAS service endpoint | ||
+ | EndpointReference getICardIssuerEndpoint(); | ||
− | // | + | // If card is of type (1) then return a [[Digital Identity]] |
− | + | // that satisfies the policy ''policy'' | |
+ | // The ''credential'' parameter used to authenticate to the | ||
+ | // Token Issuer–-may be null if Token Issuer policy doesn’t require it | ||
+ | DigitalIdentity requestDigitalIdentity(Policy policy, DigitalIdentity credential); | ||
− | + | // Return a list of endpoint references, credential hint, credential selector | |
+ | Iterable<TokenService> getTokenServices() | ||
+ | |||
+ | // Return a list of supported token types | ||
+ | ?? getPolicy?? (); | ||
+ | |||
+ | // Is the RP identity required in the token request message? | ||
+ | boolean getRequireAppliesTo() | ||
+ | |||
+ | ==URLIssuerCard Interface== | ||
+ | |||
+ | // Return a URL | ||
+ | // that satisfies the policy ''policy'' | ||
+ | URL requestURL(Policy policy); | ||
+ | |||
+ | ==IdASProvider== | ||
+ | |||
+ | ContextRef getContextRef(); | ||
==See Also== | ==See Also== |
Revision as of 13:07, 28 October 2006
This page describes the I-Card interface that all types of Higgins-compatible I-Cards must implement. It also describes other interfaces that implementers may choose to implement.
Contents
I-Card Interface=
// Return the human friendly name of the card String getCardName(); URI getUUID(); // Return the human friendly name of the card issuer (creator) String getIssuerName(); // Return a background image of the card Image getCardImage(); // Return the mime type of the background image (JPEG or GIF) String getImageMimeType(); // Return when the card was first issued Datetime getTimeIssued(); // Return the date and time after which the card should be // treated as expired and invalid. If there is no expiration // If card handles only simple claim types then // return a list of all possible types of claims that are supported // throw exception otherwise Iterable<String> getSupportedSimpleClaimTypes(); // If card handles complex claim types then // return an OWL-DL schema describing types of complex claim // objects that are supported String getSupportedComplexClaimTypes(); // Given a relying party policy Policy, return true // if this card can provide the claims required/desired by the relying party // else return false boolean isMatch(Policy); // Return whether the user wishes to be asked for explicit release of // this card's information (i) every time it is requested (ii) only // the first time it is requested (iii) never ReleasePolicy getReleasePolicy(); // Set the release policy of this card void setReleasePolicy(ReleasePolicy); // Return a list of the types of expored card data stream formats supported // ?? presumably a CardFormat also mentions XML language and/or version number <Iterable>CardFormat getSupportedExportFormats();
// Return a data stream containing a serialization of the card // The format depends on the kind of card // E.g. CardSpace I-Cards will export CardSpace format data String export(CardFormat format);
To Do
- Need methods to get/set the access control list idea (see I-Card)
TokenIssuerCard Interface
// Return the EPR of the card issuer // For CardSpace cards this is either the local STS endpoint (for // self-asserted cards) or a remote STS (for managed cards) // For some other kinds of cards this is might be an IdAS service endpoint EndpointReference getICardIssuerEndpoint();
// If card is of type (1) then return a Digital Identity // that satisfies the policy policy // The credential parameter used to authenticate to the // Token Issuer–-may be null if Token Issuer policy doesn’t require it DigitalIdentity requestDigitalIdentity(Policy policy, DigitalIdentity credential);
// Return a list of endpoint references, credential hint, credential selector Iterable<TokenService> getTokenServices() // Return a list of supported token types ?? getPolicy?? ();
// Is the RP identity required in the token request message? boolean getRequireAppliesTo()
URLIssuerCard Interface
// Return a URL // that satisfies the policy policy URL requestURL(Policy policy);
IdASProvider
ContextRef getContextRef();