Help us shape the future of Go! Take the 2026 Go Developer Survey

swagger

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Nov 13, 2019 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ContextOAuth2 takes a oauth2.TokenSource as authentication for the request.
	ContextOAuth2 = contextKey("token")

	// ContextBasicAuth takes BasicAuth as authentication for the request.
	ContextBasicAuth = contextKey("basic")

	// ContextAccessToken takes a string oauth2 access token as authentication for the request.
	ContextAccessToken = contextKey("accesstoken")

	// ContextAPIKey takes an APIKey as authentication for the request
	ContextAPIKey = contextKey("apikey")
)

Functions

func CacheExpires

func CacheExpires(r *http.Response) time.Time

CacheExpires helper function to determine remaining time before repeating a request.

Types

type APIClient

type APIClient struct {
	AuthApi *AuthApiService
	// contains filtered or unexported fields
}

APIClient manages communication with the authproxy OpenAPI API v1.0 In most cases there should be only one, shared, APIClient.

func NewAPIClient

func NewAPIClient(cfg *Configuration) *APIClient

NewAPIClient creates a new API client. Requires a userAgent string describing your application. optionally a custom http.Client to allow for advanced features such as caching.

func (*APIClient) ChangeBasePath

func (c *APIClient) ChangeBasePath(path string)

Change base path to allow switching to mocks

type APIKey

type APIKey struct {
	Key    string
	Prefix string
}

APIKey provides API key based authentication to a request passed via context using ContextAPIKey

type APIResponse

type APIResponse struct {
	*http.Response `json:"-"`
	Message        string `json:"message,omitempty"`
	// Operation is the name of the swagger operation.
	Operation string `json:"operation,omitempty"`
	// RequestURL is the request URL. This value is always available, even if the
	// embedded *http.Response is nil.
	RequestURL string `json:"url,omitempty"`
	// Method is the HTTP method used for the request.  This value is always
	// available, even if the embedded *http.Response is nil.
	Method string `json:"method,omitempty"`
	// Payload holds the contents of the response body (which may be nil or empty).
	// This is provided here as the raw response.Body() reader will have already
	// been drained.
	Payload []byte `json:"-"`
}

func NewAPIResponse

func NewAPIResponse(r *http.Response) *APIResponse

func NewAPIResponseWithError

func NewAPIResponseWithError(errorMessage string) *APIResponse

type AuthApiService

type AuthApiService service

func (*AuthApiService) Authenticate

AuthApiService verifies user credentials authenticates users

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  • @param body TokenReviewRequest object that needs to be verified

@return TokenReviewRequest

func (*AuthApiService) Login

AuthApiService issues tokens for cluster access login users

  • @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return TokenReviewRequest

type BasicAuth

type BasicAuth struct {
	UserName string `json:"userName,omitempty"`
	Password string `json:"password,omitempty"`
}

BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth

type Configuration

type Configuration struct {
	BasePath      string            `json:"basePath,omitempty"`
	Host          string            `json:"host,omitempty"`
	Scheme        string            `json:"scheme,omitempty"`
	DefaultHeader map[string]string `json:"defaultHeader,omitempty"`
	UserAgent     string            `json:"userAgent,omitempty"`
	HTTPClient    *http.Client
}

func NewConfiguration

func NewConfiguration() *Configuration

func (*Configuration) AddDefaultHeader

func (c *Configuration) AddDefaultHeader(key string, value string)

type GenericSwaggerError

type GenericSwaggerError struct {
	// contains filtered or unexported fields
}

GenericSwaggerError Provides access to the body, error and model on returned errors.

func (GenericSwaggerError) Body

func (e GenericSwaggerError) Body() []byte

Body returns the raw bytes of the response

func (GenericSwaggerError) Error

func (e GenericSwaggerError) Error() string

Error returns non-empty string if there was an error.

func (GenericSwaggerError) Model

func (e GenericSwaggerError) Model() interface{}

Model returns the unpacked model of the error

type Principal

type Principal struct {
	// The name that uniquely identifies this user among all active users
	Username string `json:"Username,omitempty"`
	// The pasword of the user
	Password string `json:"Password,omitempty"`
}

Principal contains information about the user

type TokenReviewRequest

type TokenReviewRequest struct {
	Kind       string             `json:"kind,omitempty"`
	APIVersion string             `json:"APIVersion,omitempty"`
	Spec       *TokenReviewSpec   `json:"Spec,omitempty"`
	Status     *TokenReviewStatus `json:"Status,omitempty"`
}

TokenReviewRequest is issued by K8s to this service

type TokenReviewSpec

type TokenReviewSpec struct {
	Token string `json:"Token,omitempty"`
}

TokenReviewSpec contains the token being reviewed

type TokenReviewStatus

type TokenReviewStatus struct {
	// Authenticated is true if the token is valid
	Authenticated bool      `json:"Authenticated,omitempty"`
	User          *UserInfo `json:"User,omitempty"`
}

TokenReviewStatus is the result of the token authentication request

type UserInfo

type UserInfo struct {
	// The name that uniquely identifies this user among all active users
	Username string `json:"Username,omitempty"`
	// A unique value that identifies this user across time. If this user is deleted and another user by the same name is added, they will have different UIDs
	UID string `json:"UID,omitempty"`
	// The names of groups this user is a part of
	Groups []string `json:"Groups,omitempty"`
	// Any additional information provided by the authenticator
	Extra *interface{} `json:"Extra,omitempty"`
}

UserInfo contains information about the user

Jump to

Keyboard shortcuts

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