README
¶
This package provides a Basic Authentication middleware.
It'll try to compare credentials from Authentication request header to a username/password pair in middleware constructor.
More details about this type of authentication can be found in Mozilla article.
Usage
import httptransport "github.com/go-kit/kit/transport/http"
httptransport.NewServer(
AuthMiddleware(cfg.auth.user, cfg.auth.password, "Example Realm")(makeUppercaseEndpoint()),
decodeMappingsRequest,
httptransport.EncodeJSONResponse,
httptransport.ServerBefore(httptransport.PopulateRequestContext),
)
For AuthMiddleware to be able to pick up the Authentication header from an HTTP request we need to pass it through the context with something like httptransport.ServerBefore(httptransport.PopulateRequestContext)
.
Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AuthMiddleware ¶
func AuthMiddleware(requiredUser, requiredPassword, realm string) endpoint.Middleware
AuthMiddleware returns a Basic Authentication middleware for a particular user and password.
Types ¶
type AuthError ¶
type AuthError struct {
Realm string
}
AuthError represents an authorization error.
func (AuthError) StatusCode ¶
StatusCode is an implementation of the StatusCoder interface in go-kit/http.