Documentation ¶
Index ¶
- Constants
- Variables
- func ExtractExpiryFromAccessToken(token string) (int, error)
- func ExtractUsernameFromAccessToken(token string) (string, error)
- func GetTokenMinutesLeft(token string) (int64, error)
- func IsEncrypted(buffer []byte) (bool, error)
- func SshAuthentication(url, sshKeyPath, sshPassphrase string) (sshAuthHeaders map[string]string, newUrl string, err error)
- func SshTokenRefreshPreRequestInterceptor(fields *CommonConfigFields, httpClientDetails *httputils.HttpClientDetails) error
- type CommonConfigFields
- func (ccf *CommonConfigFields) AppendPreRequestInterceptor(interceptor PreRequestInterceptorFunc)
- func (ccf *CommonConfigFields) AuthenticateSsh(sshKeyPath, sshPassphrase string) error
- func (ccf *CommonConfigFields) CreateHttpClientDetails() httputils.HttpClientDetails
- func (ccf *CommonConfigFields) GetAccessToken() string
- func (ccf *CommonConfigFields) GetApiKey() string
- func (ccf *CommonConfigFields) GetClientCertKeyPath() string
- func (ccf *CommonConfigFields) GetClientCertPath() string
- func (ccf *CommonConfigFields) GetPassword() string
- func (ccf *CommonConfigFields) GetPreRequestInterceptor() []PreRequestInterceptorFunc
- func (ccf *CommonConfigFields) GetSshAuthHeaders() map[string]string
- func (ccf *CommonConfigFields) GetSshKeyPath() string
- func (ccf *CommonConfigFields) GetSshPassphrase() string
- func (ccf *CommonConfigFields) GetSshUrl() string
- func (ccf *CommonConfigFields) GetUrl() string
- func (ccf *CommonConfigFields) GetUser() string
- func (ccf *CommonConfigFields) InitSsh() error
- func (ccf *CommonConfigFields) IsSshAuthHeaderSet() bool
- func (ccf *CommonConfigFields) IsSshAuthentication() bool
- func (ccf *CommonConfigFields) RunPreRequestInterceptors(httpClientDetails *httputils.HttpClientDetails) error
- func (ccf *CommonConfigFields) SetAccessToken(accessToken string)
- func (ccf *CommonConfigFields) SetApiKey(apiKey string)
- func (ccf *CommonConfigFields) SetClientCertKeyPath(certificatePath string)
- func (ccf *CommonConfigFields) SetClientCertPath(certificatePath string)
- func (ccf *CommonConfigFields) SetPassword(password string)
- func (ccf *CommonConfigFields) SetSshAuthHeaders(sshAuthHeaders map[string]string)
- func (ccf *CommonConfigFields) SetSshKeyPath(sshKeyPath string)
- func (ccf *CommonConfigFields) SetSshPassphrase(sshPassphrase string)
- func (ccf *CommonConfigFields) SetSshUrl(sshUrl string)
- func (ccf *CommonConfigFields) SetUrl(url string)
- func (ccf *CommonConfigFields) SetUser(user string)
- type PreRequestInterceptorFunc
- type ServiceDetails
- type SshAuthResult
- type TokenPayload
Constants ¶
View Source
const WaitBeforeRefreshSeconds = 15
Variables ¶
View Source
var RefreshBeforeExpiryMinutes = int64(10)
Refreshable Tokens Constants.
Functions ¶
func ExtractExpiryFromAccessToken ¶
Extracts the expiry from an access token, in seconds
func GetTokenMinutesLeft ¶
Returns 0 if expired
func IsEncrypted ¶
func SshAuthentication ¶
func SshTokenRefreshPreRequestInterceptor ¶
func SshTokenRefreshPreRequestInterceptor(fields *CommonConfigFields, httpClientDetails *httputils.HttpClientDetails) error
Handles the process of acquiring a new ssh token
Types ¶
type CommonConfigFields ¶
type CommonConfigFields struct { Url string `json:"-"` User string `json:"-"` Password string `json:"-"` ApiKey string `json:"-"` AccessToken string `json:"-"` PreRequestInterceptors []PreRequestInterceptorFunc `json:"-"` ClientCertPath string `json:"-"` ClientCertKeyPath string `json:"-"` Version string `json:"-"` SshUrl string `json:"-"` SshKeyPath string `json:"-"` SshPassphrase string `json:"-"` SshAuthHeaders map[string]string `json:"-"` TokenMutex sync.Mutex }
func (*CommonConfigFields) AppendPreRequestInterceptor ¶
func (ccf *CommonConfigFields) AppendPreRequestInterceptor(interceptor PreRequestInterceptorFunc)
func (*CommonConfigFields) AuthenticateSsh ¶
func (ccf *CommonConfigFields) AuthenticateSsh(sshKeyPath, sshPassphrase string) error
func (*CommonConfigFields) CreateHttpClientDetails ¶
func (ccf *CommonConfigFields) CreateHttpClientDetails() httputils.HttpClientDetails
func (*CommonConfigFields) GetAccessToken ¶
func (ccf *CommonConfigFields) GetAccessToken() string
func (*CommonConfigFields) GetApiKey ¶
func (ccf *CommonConfigFields) GetApiKey() string
func (*CommonConfigFields) GetClientCertKeyPath ¶
func (ccf *CommonConfigFields) GetClientCertKeyPath() string
func (*CommonConfigFields) GetClientCertPath ¶
func (ccf *CommonConfigFields) GetClientCertPath() string
func (*CommonConfigFields) GetPassword ¶
func (ccf *CommonConfigFields) GetPassword() string
func (*CommonConfigFields) GetPreRequestInterceptor ¶
func (ccf *CommonConfigFields) GetPreRequestInterceptor() []PreRequestInterceptorFunc
func (*CommonConfigFields) GetSshAuthHeaders ¶
func (ccf *CommonConfigFields) GetSshAuthHeaders() map[string]string
func (*CommonConfigFields) GetSshKeyPath ¶
func (ccf *CommonConfigFields) GetSshKeyPath() string
func (*CommonConfigFields) GetSshPassphrase ¶
func (ccf *CommonConfigFields) GetSshPassphrase() string
func (*CommonConfigFields) GetSshUrl ¶
func (ccf *CommonConfigFields) GetSshUrl() string
func (*CommonConfigFields) GetUrl ¶
func (ccf *CommonConfigFields) GetUrl() string
func (*CommonConfigFields) GetUser ¶
func (ccf *CommonConfigFields) GetUser() string
func (*CommonConfigFields) InitSsh ¶
func (ccf *CommonConfigFields) InitSsh() error
func (*CommonConfigFields) IsSshAuthHeaderSet ¶
func (ccf *CommonConfigFields) IsSshAuthHeaderSet() bool
func (*CommonConfigFields) IsSshAuthentication ¶
func (ccf *CommonConfigFields) IsSshAuthentication() bool
func (*CommonConfigFields) RunPreRequestInterceptors ¶
func (ccf *CommonConfigFields) RunPreRequestInterceptors(httpClientDetails *httputils.HttpClientDetails) error
Runs an interceptor before sending a request via the http client
func (*CommonConfigFields) SetAccessToken ¶
func (ccf *CommonConfigFields) SetAccessToken(accessToken string)
func (*CommonConfigFields) SetApiKey ¶
func (ccf *CommonConfigFields) SetApiKey(apiKey string)
func (*CommonConfigFields) SetClientCertKeyPath ¶
func (ccf *CommonConfigFields) SetClientCertKeyPath(certificatePath string)
func (*CommonConfigFields) SetClientCertPath ¶
func (ccf *CommonConfigFields) SetClientCertPath(certificatePath string)
func (*CommonConfigFields) SetPassword ¶
func (ccf *CommonConfigFields) SetPassword(password string)
func (*CommonConfigFields) SetSshAuthHeaders ¶
func (ccf *CommonConfigFields) SetSshAuthHeaders(sshAuthHeaders map[string]string)
func (*CommonConfigFields) SetSshKeyPath ¶
func (ccf *CommonConfigFields) SetSshKeyPath(sshKeyPath string)
func (*CommonConfigFields) SetSshPassphrase ¶
func (ccf *CommonConfigFields) SetSshPassphrase(sshPassphrase string)
func (*CommonConfigFields) SetSshUrl ¶
func (ccf *CommonConfigFields) SetSshUrl(sshUrl string)
func (*CommonConfigFields) SetUrl ¶
func (ccf *CommonConfigFields) SetUrl(url string)
func (*CommonConfigFields) SetUser ¶
func (ccf *CommonConfigFields) SetUser(user string)
type PreRequestInterceptorFunc ¶
type PreRequestInterceptorFunc func(*CommonConfigFields, *httputils.HttpClientDetails) error
Implement this function and append it to create an interceptor that will run pre request in the http client
type ServiceDetails ¶
type ServiceDetails interface { GetUrl() string GetUser() string GetPassword() string GetApiKey() string GetAccessToken() string GetPreRequestInterceptor() []PreRequestInterceptorFunc GetClientCertPath() string GetClientCertKeyPath() string GetSshUrl() string GetSshKeyPath() string GetSshPassphrase() string GetSshAuthHeaders() map[string]string GetVersion() (string, error) SetUrl(url string) SetUser(user string) SetPassword(password string) SetApiKey(apiKey string) SetAccessToken(accessToken string) AppendPreRequestInterceptor(PreRequestInterceptorFunc) SetClientCertPath(certificatePath string) SetClientCertKeyPath(certificatePath string) SetSshUrl(url string) SetSshKeyPath(sshKeyPath string) SetSshPassphrase(sshPassphrase string) SetSshAuthHeaders(sshAuthHeaders map[string]string) IsSshAuthHeaderSet() bool IsSshAuthentication() bool AuthenticateSsh(sshKey, sshPassphrase string) error InitSsh() error RunPreRequestInterceptors(httpClientDetails *httputils.HttpClientDetails) error CreateHttpClientDetails() httputils.HttpClientDetails }
type SshAuthResult ¶
type TokenPayload ¶
Click to show internal directories.
Click to hide internal directories.