mirror of
https://github.com/opentofu/opentofu.git
synced 2025-01-15 19:22:46 -06:00
179b32d426
By adding this method you now only have to pass a `*disco.Disco` object around in order to do discovery and use any configured credentials for the discovered hosts. Of course you can also still pass around both a `*disco.Disco` and a `auth.CredentialsSource` object if there is a need or a reason for that!
26 lines
725 B
Go
26 lines
725 B
Go
package auth
|
|
|
|
import (
|
|
"net/http"
|
|
)
|
|
|
|
// HostCredentialsToken is a HostCredentials implementation that represents a
|
|
// single "bearer token", to be sent to the server via an Authorization header
|
|
// with the auth type set to "Bearer"
|
|
type HostCredentialsToken string
|
|
|
|
// PrepareRequest alters the given HTTP request by setting its Authorization
|
|
// header to the string "Bearer " followed by the encapsulated authentication
|
|
// token.
|
|
func (tc HostCredentialsToken) PrepareRequest(req *http.Request) {
|
|
if req.Header == nil {
|
|
req.Header = http.Header{}
|
|
}
|
|
req.Header.Set("Authorization", "Bearer "+string(tc))
|
|
}
|
|
|
|
// Token returns the authentication token.
|
|
func (tc HostCredentialsToken) Token() string {
|
|
return string(tc)
|
|
}
|