All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.nemerosa.ontrack.model.security.ProvidedGroupsService.kt Maven / Gradle / Ivy

There is a newer version: 4.4.5
Show newest version
package net.nemerosa.ontrack.model.security

/**
 * Management of and access to the groups which are provided
 * to an account by an external authentication system.
 */
interface ProvidedGroupsService {

    /**
     * Saves a list of provided groups for an account
     * given an [authentication source][AuthenticationSource].
     *
     * @param account ID of the account
     * @param source Authentication source
     * @param groups Names of the groups provided by the authentication source
     */
    fun saveProvidedGroups(account: Int, source: AuthenticationSource, groups: Set)

    /**
     * Gets the list of provided groups for an account
     * given an [authentication source][AuthenticationSource].
     *
     * @param account ID of the account
     * @param source Authentication source
     * @return Names of the groups provided by the authentication source
     */
    fun getProvidedGroups(account: Int, source: AuthenticationSource): Set

    /**
     * Given an authentication source and an arbitrary text, returns a list
     * of provided group names.
     */
    fun getSuggestedGroups(source: AuthenticationSource, token: String): List

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy