Interface ManagerIdentityProvider

All Superinterfaces:
org.openremote.container.security.IdentityProvider
All Known Implementing Classes:
ManagerBasicIdentityProvider, ManagerKeycloakIdentityProvider

public interface ManagerIdentityProvider extends org.openremote.container.security.IdentityProvider
SPI for implementations used by ManagerIdentityService, provides CRUD of User and Realm.
  • Method Details

    • queryUsers

      org.openremote.model.security.User[] queryUsers(org.openremote.model.query.UserQuery userQuery)
    • getUser

      org.openremote.model.security.User getUser(String userId)
    • getUserByUsername

      org.openremote.model.security.User getUserByUsername(String realm, String username)
    • createUpdateUser

      org.openremote.model.security.User createUpdateUser(String realm, org.openremote.model.security.User user, String password, boolean allowUpdate)
    • deleteUser

      void deleteUser(String realm, String userId)
    • resetPassword

      void resetPassword(String realm, String userId, org.openremote.model.security.Credential credential)
    • resetSecret

      String resetSecret(String realm, String userId, String secret)
    • getClientRoles

      org.openremote.model.security.Role[] getClientRoles(String realm, String client)
    • updateClientRoles

      void updateClientRoles(String realm, String client, org.openremote.model.security.Role[] roles)
    • getUserClientRoles

      String[] getUserClientRoles(String realm, String userId, String client)
    • getUserRealmRoles

      String[] getUserRealmRoles(String realm, String userId)
    • updateUserClientRoles

      void updateUserClientRoles(String realm, String userId, String client, String... roles)
    • updateUserRealmRoles

      void updateUserRealmRoles(String realm, String userId, String... roles)
    • isMasterRealmAdmin

      boolean isMasterRealmAdmin(String userId)
    • isRestrictedUser

      boolean isRestrictedUser(org.openremote.container.security.AuthContext authContext)
    • isUserInRealm

      boolean isUserInRealm(String userId, String realm)
    • getRealms

      org.openremote.model.security.Realm[] getRealms()
    • getRealm

      org.openremote.model.security.Realm getRealm(String realm)
    • updateRealm

      void updateRealm(org.openremote.model.security.Realm realm)
    • createRealm

      org.openremote.model.security.Realm createRealm(org.openremote.model.security.Realm realm)
    • deleteRealm

      void deleteRealm(String realm)
    • isRealmActiveAndAccessible

      boolean isRealmActiveAndAccessible(org.openremote.container.security.AuthContext authContext, org.openremote.model.security.Realm realm)
    • isRealmActiveAndAccessible

      boolean isRealmActiveAndAccessible(org.openremote.container.security.AuthContext authContext, String realm)
    • realmExists

      boolean realmExists(String realm)
    • canSubscribeWith

      boolean canSubscribeWith(org.openremote.container.security.AuthContext auth, org.openremote.model.event.shared.RealmFilter<?> filter, org.openremote.model.security.ClientRole... requiredRoles)
      Superusers can subscribe to all events, regular users must be in the same realm as the filter and any required roles must match. If the authenticated party is a restricted user, this returns false.
      Returns:
      true if the authenticated party can subscribe to events with the given filter.
    • getFrontendURI

      String getFrontendURI()
      Returns the frontend URL to be used for frontend apps to authenticate
    • addUserRealmRoles

      default String[] addUserRealmRoles(String realm, String userId, String... roles)
    • getUsersFromDb

      static org.openremote.model.security.User[] getUsersFromDb(org.openremote.container.persistence.PersistenceService persistenceService, org.openremote.model.query.UserQuery query)
    • getUserByUsernameFromDb

      static org.openremote.model.security.User getUserByUsernameFromDb(org.openremote.container.persistence.PersistenceService persistenceService, String realm, String username)
    • getUserByIdFromDb

      static org.openremote.model.security.User getUserByIdFromDb(org.openremote.container.persistence.PersistenceService persistenceService, String userId)
    • getUserIds

      static List<String> getUserIds(org.openremote.container.persistence.PersistenceService persistenceService, String realm, List<String> usernames)
    • getRealmsFromDb

      static org.openremote.model.security.Realm[] getRealmsFromDb(org.openremote.container.persistence.PersistenceService persistenceService)
    • getRealmFromDb

      static org.openremote.model.security.Realm getRealmFromDb(org.openremote.container.persistence.PersistenceService persistenceService, String name)
    • realmExistsFromDb

      static boolean realmExistsFromDb(org.openremote.container.persistence.PersistenceService persistenceService, String realm)
    • userInRealmFromDb

      static boolean userInRealmFromDb(org.openremote.container.persistence.PersistenceService persistenceService, String userId, String realm)