mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			56 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package gophercloud
 | 
						|
 | 
						|
/*
 | 
						|
AuthOptions stores information needed to authenticate to an OpenStack cluster.
 | 
						|
You can populate one manually, or use a provider's AuthOptionsFromEnv() function
 | 
						|
to read relevant information from the standard environment variables. Pass one
 | 
						|
to a provider's AuthenticatedClient function to authenticate and obtain a
 | 
						|
ProviderClient representing an active session on that provider.
 | 
						|
 | 
						|
Its fields are the union of those recognized by each identity implementation and
 | 
						|
provider.
 | 
						|
*/
 | 
						|
type AuthOptions struct {
 | 
						|
	// IdentityEndpoint specifies the HTTP endpoint that is required to work with
 | 
						|
	// the Identity API of the appropriate version. While it's ultimately needed by
 | 
						|
	// all of the identity services, it will often be populated by a provider-level
 | 
						|
	// function.
 | 
						|
	IdentityEndpoint string
 | 
						|
 | 
						|
	// Username is required if using Identity V2 API. Consult with your provider's
 | 
						|
	// control panel to discover your account's username. In Identity V3, either
 | 
						|
	// UserID or a combination of Username and DomainID or DomainName are needed.
 | 
						|
	Username, UserID string
 | 
						|
 | 
						|
	// Exactly one of Password or APIKey is required for the Identity V2 and V3
 | 
						|
	// APIs. Consult with your provider's control panel to discover your account's
 | 
						|
	// preferred method of authentication.
 | 
						|
	Password, APIKey string
 | 
						|
 | 
						|
	// At most one of DomainID and DomainName must be provided if using Username
 | 
						|
	// with Identity V3. Otherwise, either are optional.
 | 
						|
	DomainID, DomainName string
 | 
						|
 | 
						|
	// The TenantID and TenantName fields are optional for the Identity V2 API.
 | 
						|
	// Some providers allow you to specify a TenantName instead of the TenantId.
 | 
						|
	// Some require both. Your provider's authentication policies will determine
 | 
						|
	// how these fields influence authentication.
 | 
						|
	TenantID, TenantName string
 | 
						|
 | 
						|
	// AllowReauth should be set to true if you grant permission for Gophercloud to
 | 
						|
	// cache your credentials in memory, and to allow Gophercloud to attempt to
 | 
						|
	// re-authenticate automatically if/when your token expires.  If you set it to
 | 
						|
	// false, it will not cache these settings, but re-authentication will not be
 | 
						|
	// possible.  This setting defaults to false.
 | 
						|
	//
 | 
						|
	// NOTE: The reauth function will try to re-authenticate endlessly if left unchecked.
 | 
						|
	// The way to limit the number of attempts is to provide a custom HTTP client to the provider client 
 | 
						|
	// and provide a transport that implements the RoundTripper interface and stores the number of failed retries.
 | 
						|
	// For an example of this, see here: https://github.com/rackspace/rack/blob/1.0.0/auth/clients.go#L311
 | 
						|
	AllowReauth bool
 | 
						|
 | 
						|
	// TokenID allows users to authenticate (possibly as another user) with an
 | 
						|
	// authentication token ID.
 | 
						|
	TokenID string
 | 
						|
}
 |