Documentation ¶
Index ¶
Constants ¶
View Source
const AudienceNodeAuthentication = "kops.k8s.io/node-bootstrap"
AudienceNodeAuthentication is used in case we have multiple audiences using the TPM in future
View Source
const GCETPMAuthenticationTokenPrefix = "x-gce-tpm "
GCETPMAuthenticationTokenPrefix is the prefix used for authentication using the GCE TPM
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthToken ¶
type AuthToken struct { // Signature is the TPM signature for data Signature []byte `json:"signature,omitempty"` // Data is the data we are signing. // It is a JSON encoded form of AuthTokenData. Data []byte `json:"data,omitempty"` }
AuthToken describes the authentication header data when using GCE TPM authentication.
type AuthTokenData ¶
type AuthTokenData struct { // GCPProjectID is the GCP project we claim to be part of GCPProjectID string `json:"gcpProjectID,omitempty"` // Zone is the availability zone we claim to be part of Zone string `json:"zone,omitempty"` // Instance is the name/id of the instance we are claiming Instance string `json:"instance,omitempty"` // RequestHash is the hash of the request RequestHash []byte `json:"requestHash,omitempty"` // Timestamp is the time of this request (to help prevent replay attacks) Timestamp int64 `json:"timestamp,omitempty"` // Audience is the audience for this request (to help prevent replay attacks) Audience string `json:"audience,omitempty"` }
AuthTokenData is the code data that is signed as part of the header.
type TPMVerifierOptions ¶
type TPMVerifierOptions struct { // ProjectID is the GCP project we require ProjectID string `json:"projectID,omitempty"` // Region is the region we require instances to be in. Region string `json:"region,omitempty"` // ClusterName is the cluster-name tag we require ClusterName string `json:"clusterName,omitempty"` // MaxTimeSkew is the maximum time skew to allow (in seconds) MaxTimeSkew int64 `json:"MaxTimeSkew,omitempty"` }
TPMVerifierOptions describes how we authenticate instances with GCE TPM authentication.
Click to show internal directories.
Click to hide internal directories.