proxy

package
v0.0.0-...-22dde6c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 19, 2019 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Config struct {
	Provider      string `config:"provider"`
	ClientID      string `config:"client_id"`
	ClientSecret  string `config:"client_secret"`
	CallbackURI   string `config:"callback_uri"`
	StateTimeout  int    `config:"state_timeout"`
	CookieTimeout int    `config:"cookie_timeout"`
	CookieName    string `config:"cookie_name"`
	CheckVersion  bool   `config:"check_version"`
	Version       int64
}

Functions

func AddState

func AddState(name string, proxy *Proxy, request *http.Request)

func Start

func Start(config *config.Config) error

func Stop

func Stop(config *config.Config) error

Types

type Proxy

type Proxy struct {
	Provider      string   `config:"provider"`
	Scheme        string   `config:"scheme"`
	RedirectURI   string   `config:"redirect_uri"`
	RequestHost   string   `config:"request_host"`
	EndPoint      string   `config:"end_point"`
	PreserveHost  bool     `config:"preserve_host"`
	ClientID      string   `config:"client_id"`
	ClientSecret  string   `config:"client_secret"`
	CallbackURI   string   `config:"callback_uri"`
	Organizations []string `config:"organizations"`
	Teams         []string `config:"teams"`
	Whitelists    []string `config:"whitelists"`
	// contains filtered or unexported fields
}

func GetProxy

func GetProxy(requestHost string) *Proxy

func (*Proxy) HasOrg

func (p *Proxy) HasOrg(org string) bool

func (*Proxy) HasTeam

func (p *Proxy) HasTeam(team string) bool

func (*Proxy) IsWhiteList

func (p *Proxy) IsWhiteList(method, path string) bool

func (*Proxy) ServeHTTP

func (p *Proxy) ServeHTTP(w http.ResponseWriter, r *http.Request)

type Session

type Session struct {
	User    *UserInfo `json:"user"`
	Version int64     `json:"version"`
}

type State

type State struct {
	Name    string
	Proxy   *Proxy
	Request *http.Request
	User    *UserInfo
}

func AcquireState

func AcquireState(name string) *State

func GetState

func GetState(name string) *State

type UserInfo

type UserInfo struct {
	Name  string `json:"login"`
	Email string `json:"email"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL