mirror of
https://github.com/hanzo-fi/go-libs.git
synced 2026-10-30 20:53:44 +00:00
28 lines
766 B
Go
28 lines
766 B
Go
package oidc
|
|
|
|
import "github.com/hanzo-fi/go-libs/v5/pkg/types/time"
|
|
|
|
const ClaimOrganizationID = "organization_id"
|
|
|
|
// Convenience wrapper for fetching orgID from custom claims
|
|
type OrganizationAwareAccessTokenClaims struct {
|
|
AccessTokenClaims
|
|
}
|
|
|
|
func NewOrganizationAwareAccessTokenClaims(issuer, subject string, audience []string, expiration time.Time, jwtid, clientID string) *OrganizationAwareAccessTokenClaims {
|
|
atc := NewAccessTokenClaims(issuer, subject, audience, expiration, jwtid, clientID)
|
|
return &OrganizationAwareAccessTokenClaims{*atc}
|
|
}
|
|
|
|
func (o *OrganizationAwareAccessTokenClaims) GetOrganizationID() string {
|
|
val, ok := o.Claims[ClaimOrganizationID]
|
|
if !ok {
|
|
return ""
|
|
}
|
|
|
|
if orgID, ok := val.(string); ok {
|
|
return orgID
|
|
}
|
|
return ""
|
|
}
|