The AbstractOperation object must be configured with an STSPropertiesMBean object. This is an interface that encapsulates some configuration common to a number of different operations of the STS:
-
void configureProperties()
- load and process the properties -
void setCallbackHandler(CallbackHandler callbackHandler)
- Set a CallbackHandler object. This is used in the TokenProviders/TokenValidators to retrieve passwords for various purposes. -
void setSignatureCrypto(Crypto signatureCrypto)
- Set a WSS4J Crypto object to use to sign tokens, or validate signed requests, etc. -
void setSignatureUsername(String signatureUsername)
- Set the default signature username to use (e.g. corresponding to a keystore alias) -
void setEncryptionCrypto(Crypto encryptionCrypto)
- Set a WSS4J Crypto object to use to encrypt issued tokens. -
void setEncryptionUsername(String encryptionUsername)
- Set the default encryption username to use (e.g. corresponding to a keystore alias) -
void setIssuer(String issuer)
- Set the default issuer name of the STS -
void setSignatureProperties(SignatureProperties signatureProperties)
- Set the SignatureProperties object corresponding to the STS. -
void setRealmParser(RealmParser realmParser)
- Set the object used to define what realm a request is in. -
void setIdentityMapper(IdentityMapper identityMapper)
- Set the object used to map identities across realms.
The STS ships with a single implementation of the STSPropertiesMBean interface - StaticSTSProperties. This class has two additional methods:
-
void setSignaturePropertiesFile(String signaturePropertiesFile)
-
void setEncryptionPropertiesFile(String encryptionPropertiesFile)
If no Crypto objects are supplied to StaticSTSProperties, then it will try to locate a properties file using these values, and create a WSS4J Crypto object internally from the properties that are parsed.