2017-08-16 1 views
-1

Anwendungsfall: HTTP Kontext, muss ich den Zugriff auf URLs beschränken einen bestimmten Sitzungszustand gegeben AttributApache Shiro: Filter vs Realm, welche zu verwenden?

Erweiterung der * Methoden der AccessControlFilter in einem benutzerdefinierten Filter funktioniert ist, aber es sieht sorta hässlich: Ich habe kein Realm haben.

AFAIK Realms werden für Dinge wie LDAP, JDBC, INI-Backends verwendet. Immer wenn mein "Bereich" tatsächlich webgebunden ist, d. H. Die HttpSession selbst ist der Bereich.

  1. Ist meine Gewohnheit, die richtige Art und Weise filtern, gegeben zu sichern, dass ich die Informationen, die ich in der Http benötigen habe
  2. Wenn nicht, wie würden Sie einen Realm zu Web-basierten Kontext binden? Wie Http oder sogar HttpServletRequest

Antwort

0

Sie einen Realm verwenden, sollten Sie Benutzer zu binden [Betreff], auch wenn Sie nur in einem Objekt aus dem Filter sind vorbei (dh eine Info von der Sitzung oder http-Header gezogen)

Das Realm ist das Objekt, das authentifizieren und autorisieren wird. Im Allgemeinen gibt es zwei Arten von Filtern: Filter, die Token erstellen, die an einen Realm übergeben werden (z. B. Formularauthentifizierung, Basisauthentifizierung usw.) und Filter, die eine Art von Autorisierung erfordern (die eine oder mehrere Rollen und/oder Berechtigungen aktiviert)

Verwandte Themen