Documentation
¶
Index ¶
- type AccessToken
- type AccessTokenImpl
- type AccessTokenSession
- type Client
- type ClientRequest
- type ClientTokenSession
- type Config
- type Factory
- type Prompt
- type PromptAnswer
- type PromptSorting
- type PromptsResp
- type StaleAccessToken
- type Token
- type TokenImpl
- type TokenInfo
- type TokenResp
- type UAA
- type UAAImpl
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessToken ¶
type AccessToken interface {
Token
RefreshToken() Token
Refresh() (AccessToken, error)
}
AccessToken is a token that can be refreshed.
type AccessTokenImpl ¶
type AccessTokenImpl struct {
// contains filtered or unexported fields
}
func (AccessTokenImpl) Refresh ¶
func (t AccessTokenImpl) Refresh() (AccessToken, error)
func (AccessTokenImpl) RefreshToken ¶
func (t AccessTokenImpl) RefreshToken() Token
func (AccessTokenImpl) Type ¶
func (t AccessTokenImpl) Type() string
func (AccessTokenImpl) Value ¶
func (t AccessTokenImpl) Value() string
type AccessTokenSession ¶
type AccessTokenSession struct {
// contains filtered or unexported fields
}
func NewAccessTokenSession ¶
func NewAccessTokenSession(accessToken StaleAccessToken) *AccessTokenSession
func (*AccessTokenSession) TokenFunc ¶
func (s *AccessTokenSession) TokenFunc(retried bool) (string, error)
TokenFunc retrieves new access token on first time use instead of using existing access token optimizing for token being valid for a longer period of time. Subsequent calls will reuse access token until it's time for it to be refreshed.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (Client) ClientCredentialsGrant ¶
func (Client) OwnerPasswordCredentialsGrant ¶
func (c Client) OwnerPasswordCredentialsGrant(answers []PromptAnswer) (TokenResp, error)
func (Client) Prompts ¶
func (c Client) Prompts() (PromptsResp, error)
type ClientRequest ¶
type ClientRequest struct {
// contains filtered or unexported fields
}
func NewClientRequest ¶
func NewClientRequest( endpoint string, client string, clientSecret string, httpClient boshhttp.HTTPClient, logger boshlog.Logger, ) ClientRequest
func (ClientRequest) Get ¶
func (r ClientRequest) Get(path string, response interface{}) error
type ClientTokenSession ¶
type ClientTokenSession struct {
// contains filtered or unexported fields
}
func NewClientTokenSession ¶
func NewClientTokenSession(uaa UAA) *ClientTokenSession
type Config ¶
type Config struct {
Host string
Port int
Path string
Client string
ClientSecret string
CACert string
}
func NewConfigFromURL ¶
type Prompt ¶
type Prompt struct {
Key string // e.g. "username"
Type string // e.g. "text", "password"
Label string // e.g. "Username"
}
func (Prompt) IsPassword ¶
type PromptAnswer ¶
type PromptSorting ¶
type PromptSorting []Prompt
func (PromptSorting) Len ¶
func (s PromptSorting) Len() int
func (PromptSorting) Less ¶
func (s PromptSorting) Less(i, j int) bool
func (PromptSorting) Swap ¶
func (s PromptSorting) Swap(i, j int)
type PromptsResp ¶
type StaleAccessToken ¶
type StaleAccessToken interface {
RefreshToken() Token
Refresh() (AccessToken, error)
}
StaleAccessToken represents a token that should only be refreshed. Its value cannot be retrieved since it's stale hence should not be used.
type TokenInfo ¶
type TokenInfo struct {
Username string `json:"user_name"` // e.g. "admin",
Scopes []string `json:"scope"` // e.g. ["openid","bosh.admin"]
ExpiredAt int `json:"exp"`
}
func NewTokenInfoFromValue ¶
type UAA ¶
type UAA interface {
NewStaleAccessToken(refreshValue string) StaleAccessToken
Prompts() ([]Prompt, error)
ClientCredentialsGrant() (Token, error)
OwnerPasswordCredentialsGrant([]PromptAnswer) (AccessToken, error)
}
type UAAImpl ¶
type UAAImpl struct {
// contains filtered or unexported fields
}
func (UAAImpl) ClientCredentialsGrant ¶
func (UAAImpl) NewStaleAccessToken ¶
func (u UAAImpl) NewStaleAccessToken(refreshValue string) StaleAccessToken
func (UAAImpl) OwnerPasswordCredentialsGrant ¶
func (u UAAImpl) OwnerPasswordCredentialsGrant(answers []PromptAnswer) (AccessToken, error)
Source Files
¶
Click to show internal directories.
Click to hide internal directories.