Search code examples
databaseauthenticationwso2single-sign-onpersistence

Needing clarification on WSO2 IS architecture in regards to SSO persistence


I'm trying to understand more about the WSO2 Identity Server architecture that deals with SSO logins.

From the governance, configuration, and local databases that come with each Carbon product, which database layer would SSO authentication sessions be stored on? And if the machine that database sits on goes down, how would the SSO sessions continue without any interruption?


Solution

  • The documentation on Authentication Session Persistence will provide the insight on architectural design.

    The database persistence for session is controlled with the file "/repository/conf/identity/identity.xml". Please see the section,

    <JDBCPersistenceManager>
            <DataSource>
                <Name>jdbc/WSO2CarbonDB</Name>
            </DataSource>
            <SessionDataPersist>
                <Enable>true</Enable>
    

    The database to persist the session data can be configured in "repository/conf/datasources/{your-datasource}.xml". Please refer the "master-datasources.xml" for the structure.

    The datasource defined above can be referred by its JNDI name in all other configurations.