{"repo":"acronis/go-authkit","free":true,"listed":false,"github":"https://github.com/acronis/go-authkit","clone":"git clone https://github.com/acronis/go-authkit.git","description":"Toolkit for authentication and authorization in Go services","language":"Go","stars":22,"topics":["authentication","authorization","go","golang","jwks","jwt","oauth2","openid-connect","toolkit"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"Toolkit for authentication and authorization in Go services [![GoDoc Widget]][GoDoc] Installation Features - Authenticate HTTP requests with JWT tokens via middleware that can be configured via YAML/JSON file or environment variables. - Authorize HTTP requests with JWT tokens by verifying access based on the roles in the JWT claims. - Fetch and cache JSON Web Key Sets (JWKS) from Identity Providers (IDP). - Introspect Access Tokens via OAuth 2.0 Token Introspection endpoint. - Fetch and cache Access Tokens from Identity Providers (IDP). - Provides primitives for testing authentication and authorization in HTTP services. - Extensions system for vendor-specific implementations (see extensions directory), including Acronis-specific JWT claims. - Pluggable JWT scope decoder architecture for custom scope parsing implementations. Authenticate HTTP requests with JWT tokens JWTAuthMiddleware() creates a middleware that authenticates requests with JWT tokens and puts the parsed JWT claims ( jwt.Claims interface) into the request context. jwt.Claims interface extends the jwt.Claims from the github.com/golang-jwt/jwt/v5 package with additional methods. Its default implementation jwt.DefaultClaims is an extension of the RegisteredClaims struct from the github.com/golang-jwt/jwt/v5 package. jwt.DefaultClaims contains additional Scope field that represents a list of access policies. They are used for authorization in the typical Acronis service, and actually can be used in any other applic","default_branch":null,"files":null,"tree":[],"storefront":"/r/acronis","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/acronis/go-authkit/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}