package authenticator import ( "net/http" "github.com/openshift/origin/pkg/auth/api" "k8s.io/kubernetes/pkg/auth/user" ) type Token interface { AuthenticateToken(token string) (user.Info, bool, error) } type Request interface { AuthenticateRequest(req *http.Request) (user.Info, bool, error) } type Password interface { AuthenticatePassword(user, password string) (user.Info, bool, error) } type Assertion interface { AuthenticateAssertion(assertionType, data string) (user.Info, bool, error) } type Client interface { AuthenticateClient(client api.Client) (user.Info, bool, error) } type RequestFunc func(req *http.Request) (user.Info, bool, error) func (f RequestFunc) AuthenticateRequest(req *http.Request) (user.Info, bool, error) { return f(req) }