Senior
Mal ste Keycloak na autorizáciu alebo vlastné riešenie?
sobes.tech AI
Odpoveď od AI
Pre autorizácie sa často používajú hotové riešenia, ako je Keycloak, najmä ak je potrebná podpora štandardov OAuth2, OpenID Connect a centralizované riadenie používateľov. Keycloak umožňuje rýchlo zaviesť autentifikáciu a autorizáciu s minimálnymi nákladmi.
Ak boli požiadavky špecifické alebo infraštruktúra neumožňovala využívanie externých služieb, mohlo sa vyvinúť vlastné riešenie. V takom prípade sa zvyčajne stavia služba autorizácie s JWT tokenmi, správou relácií a rolami.
Príklad použitia Keycloak s Go aplikáciou — overenie JWT tokenu:
import (
"github.com/coreos/go-oidc"
"golang.org/x/net/context"
"net/http"
)
func authMiddleware(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
token := r.Header.Get("Authorization")
// Validácia tokenu cez Keycloak
// ...
next.ServeHTTP(w, r)
})
}
Výber závisí od požiadaviek projektu a infraštruktúry.