github.com/hs0210/hashicorp-terraform@v0.11.12-beta1/svchost/auth/token_credentials.go (about)

     1  package auth
     2  
     3  import (
     4  	"net/http"
     5  )
     6  
     7  // HostCredentialsToken is a HostCredentials implementation that represents a
     8  // single "bearer token", to be sent to the server via an Authorization header
     9  // with the auth type set to "Bearer"
    10  type HostCredentialsToken string
    11  
    12  // PrepareRequest alters the given HTTP request by setting its Authorization
    13  // header to the string "Bearer " followed by the encapsulated authentication
    14  // token.
    15  func (tc HostCredentialsToken) PrepareRequest(req *http.Request) {
    16  	if req.Header == nil {
    17  		req.Header = http.Header{}
    18  	}
    19  	req.Header.Set("Authorization", "Bearer "+string(tc))
    20  }
    21  
    22  // Token returns the authentication token.
    23  func (tc HostCredentialsToken) Token() string {
    24  	return string(tc)
    25  }