1
0
mirror of https://github.com/go-kit/kit.git synced 2025-07-17 01:12:38 +02:00
Files
go-kit/auth/basic
2017-09-02 21:57:51 +12:00
..
2017-09-02 21:57:51 +12:00
2017-09-02 21:57:51 +12:00

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).