Interface AuthorizationConfig
-
- All Superinterfaces:
org.aeonbits.owner.Accessible,org.aeonbits.owner.Config,org.aeonbits.owner.KrauseningConfig,Serializable
@KrauseningSources("stout-authorization.properties") public interface AuthorizationConfig extends org.aeonbits.owner.KrauseningConfigConfiguration options for authorization within Stout.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.aeonbits.owner.Config
org.aeonbits.owner.Config.ConverterClass, org.aeonbits.owner.Config.DefaultValue, org.aeonbits.owner.Config.DisableableFeature, org.aeonbits.owner.Config.DisableFeature, org.aeonbits.owner.Config.HotReload, org.aeonbits.owner.Config.HotReloadType, org.aeonbits.owner.Config.Key, org.aeonbits.owner.Config.LoadPolicy, org.aeonbits.owner.Config.LoadType, org.aeonbits.owner.Config.PreprocessorClasses, org.aeonbits.owner.Config.Separator, org.aeonbits.owner.Config.Sources, org.aeonbits.owner.Config.TokenizerClass
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringgetAccessExternalSchemaType()Determines how external schemas should be accessed.longgetAttributeCacheExpirationInMinutes()Returns the number of minutes before expiration for a attribute value (after it is added to cache).StringgetAttributeDefinitionLocation()Directory in which to look for attribute definition json files.longgetDecisionCacheExpirationInMinutes()Returns the number of minutes before expiration for a policy decision (after it is added to cache).StringgetKeyAlias()Returns alias for private key to be used when signing JWT.StringgetKeyStoreLocation()Returns system path to keystore.StringgetKeyStorePasswordLocation()Returns system path to keystore password.StringgetKeyStoreType()Returns keystore type.StringgetPdpCatalogLocation()Location of the catalog.xml file to use for Authzforce Policy Decision Point configuration.StringgetPdpConfigurationLocation()Location of the pdp.xml file to use for Authzforce Policy Decision Point configuration.StringgetPdpExtensionXsdLocation()Location of the pdp-ext.xsd file to use for Authzforce Policy Decision Point configuration.longgetTokenExpirationInSeconds()Returns the time to add to the current time in order to set an expiration for a token.StringgetTokenIssuer()Returns the issuer for tokens.longgetTokenSkewInSeconds()Returns the clock skew to use for both "not before" and "expiration" times.
-
-
-
Method Detail
-
getPdpConfigurationLocation
@Key("pdp.configuration.location") @DefaultValue("classpath:authorization/pdp.xml") String getPdpConfigurationLocation()Location of the pdp.xml file to use for Authzforce Policy Decision Point configuration.- Returns:
- path to file in authzforce path naming standards
-
getPdpCatalogLocation
@Key("pdp.catalog.location") @DefaultValue("classpath:pdp-ext-catalog.xml") String getPdpCatalogLocation()Location of the catalog.xml file to use for Authzforce Policy Decision Point configuration.- Returns:
- path to file in authzforce path naming standards
-
getPdpExtensionXsdLocation
@Key("pdp.extension.xsd.location") @DefaultValue("classpath:pdp-ext.xsd") String getPdpExtensionXsdLocation()Location of the pdp-ext.xsd file to use for Authzforce Policy Decision Point configuration.- Returns:
- path to file in authzforce path naming standards
-
getAttributeDefinitionLocation
@Key("attribute.definition.location") @DefaultValue("authorization/attributes") String getAttributeDefinitionLocation()Directory in which to look for attribute definition json files.- Returns:
- directory path
-
getAccessExternalSchemaType
@Key("javax.xml.accessExternalSchema") @DefaultValue("all") String getAccessExternalSchemaType()Determines how external schemas should be accessed. This is a comma delimited list, ie "http,file". The list must include http for AuthzCore (see System Requirements here: https://github.com/authzforce/core) so if the default is modified, ensure that http is included.- Returns:
- javax.xml.accessExternalSchema scheme
-
getTokenSkewInSeconds
@Key("token.skew") @DefaultValue("60") long getTokenSkewInSeconds()Returns the clock skew to use for both "not before" and "expiration" times.- Returns:
- clock skew in seconds. Defaults to 1 minute.
-
getTokenExpirationInSeconds
@Key("token.expiration") @DefaultValue("3600") long getTokenExpirationInSeconds()Returns the time to add to the current time in order to set an expiration for a token.- Returns:
- expiration offset (not including skew), in seconds. Defaults to 1 hour.
-
getTokenIssuer
@Key("token.issuer") String getTokenIssuer()Returns the issuer for tokens.- Returns:
- token issuer
-
getKeyAlias
@Key("private.key.alias") String getKeyAlias()Returns alias for private key to be used when signing JWT.- Returns:
- key alias
-
getKeyStoreLocation
@Key("keystore.location") @DefaultValue("javax.net.ssl.keyStore") String getKeyStoreLocation()Returns system path to keystore.- Returns:
- keystore location
-
getKeyStorePasswordLocation
@Key("keystore.password.location") @DefaultValue("javax.net.ssl.keyStorePassword") String getKeyStorePasswordLocation()Returns system path to keystore password. It is assumed that this password will match the private key password.- Returns:
- keystore / private key password location
-
getKeyStoreType
@Key("keystore.type") @DefaultValue("JKS") String getKeyStoreType()Returns keystore type.- Returns:
- default type of keystore
-
getDecisionCacheExpirationInMinutes
@Key("decision.cache.expiration") @DefaultValue("5") long getDecisionCacheExpirationInMinutes()Returns the number of minutes before expiration for a policy decision (after it is added to cache).- Returns:
- expiration time, in minutes. Defaults to 5 minutes.
-
getAttributeCacheExpirationInMinutes
@Key("atttribute.cache.expiration") @DefaultValue("5") long getAttributeCacheExpirationInMinutes()Returns the number of minutes before expiration for a attribute value (after it is added to cache).- Returns:
- expiration time, in minutes. Defaults to 5 minutes.
-
-