Versions in this module Expand all Collapse all v0 v0.1.0 Oct 18, 2020 Changes in this version + var ErrAudienceNotWhitelisted = errors.New("audience not whitelisted") + var ErrLicenseIDWhitelisted = errors.New("license id not whitelisted") + var ErrProjectIDNotWhitelisted = errors.New("project id not whitelisted") + var ErrProjectNumberNotWhitelisted = errors.New("project number not whitelisted") + var ErrTokenClaimsExpired = errors.New("token claims expired") + var ErrTokenClaimsParse = errors.New("unable to parse claims in token") + var ErrTokenMissingKeyID = errors.New("missing kid in token") + var ErrZoneNotWhitelisted = errors.New("zone not whitelisted") + var GoogleOAuth2CertsURL = "https://www.googleapis.com/oauth2/v1/certs" + var MetadataEmail = func() string + var MetadataHeader = &http.Header + var MetadataIdentity = func() string + var MetadataScopes = func() string + var MetadataToken = func() string + var MetadataURL = "http://metadata.google.internal./computeMetadata/v1" + func CheckStringWhitelist(value string, whitelist []string) bool + func CheckUint64Whitelist(value uint64, whitelist []uint64) bool + func GetMaxAgeFromHeader(header http.Header) time.Duration + type CertificateManager struct + Certificates map[string]*rsa.PublicKey + func NewCertificateManager() *CertificateManager + func (cM *CertificateManager) GetPublicKeyByKeyID(kid string) (*rsa.PublicKey, error) + func (cM *CertificateManager) Run(wg *sync.WaitGroup) + func (cM *CertificateManager) Stop() + type Claims struct + Audience string + AuthorizedParty string + Email string + EmailVerified bool + ExpiredTime ClaimsTime + Google ClaimsGoogle + IssuedTime ClaimsTime + Subject string + TokenIssuer string + func GetTokenClaims(tokenStr string, certManager *CertificateManager) (*Claims, error) + func (c *Claims) Valid() error + type ClaimsGoogle struct + ComputeEngine ClaimsGoogleComputeEngine + type ClaimsGoogleComputeEngine struct + CreationTimestamp ClaimsTime + InstanceID string + InstanceName string + LicenseIDs []string + ProjectID string + ProjectNumber uint64 + Zone string + type ClaimsTime struct + func (t *ClaimsTime) MarshalJSON() ([]byte, error) + func (t *ClaimsTime) UnmarshalJSON(b []byte) error + type RespCertificates map[string]string