Configuration

Aegaeon has multiple configuration flags allowing you to enable or disable parts of the server.

There are many ways to set these flags: command line, tomcat Environment variable, custom application.yml, etc.

Flags

Name Description Mandatory Value Default
aegaeon.jwks JSON Web Keys (JWK) to use. Yes String (/path/to/your/keys.jwks) -
aegaeon.info.serverName The name and title of this server. No String Aegaeon
aegaeon.info.issuer Identity of your authorization server. Yes String/URL -
aegaeon.info.logoUrl Your server's logo. No String/URL None
aegaeon.info.legalEntity The legal entity behind this server. No String None
aegaeon.info.privacyPolicy Your privacy policy. No String/URL None
aegaeon.info.customStyleSheet A custom style sheet to change Aegaeon styling No String/URL None
aegaeon.modules.account Enable user profile page. No true or false true
aegaeon.modules.admin Enable openid client configuration page. No true or false true
aegaeon.modules.createaccount Enable user sign-up page. No true or false true
aegaeon.modules.home Enable Aegaeon's homepage. If this value is false, login page is the home page. No true or false false
aegaeon.modules.information Enable information and configuration endpoints.1 No true or false true
aegaeon.modules.introspect Enable OAuth 2.0 introspect endpoint.2 No true or false false
aegaeon.modules.login Enable user's login page.3 No true or false true
aegaeon.modules.oauth Enable OAuth token endpoint.4 No true or false true

1 Information endpoint is used by client to know how they should interact with your server. More information here: https://openid.net/specs/openid-connect-discovery-1_0.html

2 Introspect endpoint allows resource server to validate access token without parsing them. More information here: https://tools.ietf.org/html/rfc7662

3 You could technically delegate the login to another third party system and use Aegaeon as a simple token provider. Not implemeted yet.

4 You could technically disable the token endpoint completely leaving only implicit flow from authorization endpoint.

Example

Here is an example using tomcat's environment variable in the context.xml file:

<?xml version="1.0" encoding="UTF-8"?>

    <Resource name="jdbc/aegaeon"
    ...
    />

    <Environment name="aegaeon.jwks" type="java.lang.String" value="/opt/jwks/aegaeon.jwks"/>
    <Environment name="aegaeon.info.serverName" type="java.lang.String" value="Aegaeon" />
    <Environment name="aegaeon.info.issuer" type="java.lang.String" value="https://aegaeon.n4dev.ca"/>
    <Environment name="aegaeon.modules.home" type="java.lang.String" value="false" />
    <Environment name="aegaeon.modules.introspect" type="java.lang.String" value="true" />

</Context>