Documentation
¶
Index ¶
- type Bundle
- func FromX509Roots(trustDomain spiffeid.TrustDomain, roots []*x509.Certificate) *Bundle
- func Load(trustDomain spiffeid.TrustDomain, path string) (*Bundle, error)
- func New(trustDomain spiffeid.TrustDomain) *Bundle
- func Parse(trustDomain spiffeid.TrustDomain, b []byte) (*Bundle, error)
- func Read(trustDomain spiffeid.TrustDomain, r io.Reader) (*Bundle, error)
- func (b *Bundle) AddX509Root(root *x509.Certificate)
- func (b *Bundle) Empty() bool
- func (b *Bundle) GetX509BundleForTrustDomain(trustDomain spiffeid.TrustDomain) (*Bundle, error)
- func (b *Bundle) HasX509Root(root *x509.Certificate) bool
- func (b *Bundle) Marshal() ([]byte, error)
- func (b *Bundle) RemoveX509Root(root *x509.Certificate)
- func (b *Bundle) SetX509Roots(roots []*x509.Certificate)
- func (b *Bundle) TrustDomain() spiffeid.TrustDomain
- func (b *Bundle) X509Roots() []*x509.Certificate
- type Set
- func (s *Set) Add(bundle *Bundle)
- func (s *Set) Bundles() []*Bundle
- func (s *Set) Get(trustDomain spiffeid.TrustDomain) (*Bundle, bool)
- func (s *Set) GetX509BundleForTrustDomain(trustDomain spiffeid.TrustDomain) (*Bundle, error)
- func (s *Set) Has(trustDomain spiffeid.TrustDomain) bool
- func (s *Set) Len() int
- func (s *Set) Remove(trustDomain spiffeid.TrustDomain)
- type Source
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Bundle ¶
type Bundle struct {
// contains filtered or unexported fields
}
Bundle is a collection of trusted X.509 roots for a trust domain.
func FromX509Roots ¶
func FromX509Roots(trustDomain spiffeid.TrustDomain, roots []*x509.Certificate) *Bundle
FromX509Roots creates a bundle from X.509 certificates.
func Load ¶
func Load(trustDomain spiffeid.TrustDomain, path string) (*Bundle, error)
Load loads a bundle from a file on disk.
func Parse ¶
func Parse(trustDomain spiffeid.TrustDomain, b []byte) (*Bundle, error)
Parse parses a bundle from bytes.
func (*Bundle) AddX509Root ¶
func (b *Bundle) AddX509Root(root *x509.Certificate)
AddX509Root adds an X.509 root to the bundle. If the root already exists in the bundle, the contents of the bundle will remain unchanged.
func (*Bundle) GetX509BundleForTrustDomain ¶
func (b *Bundle) GetX509BundleForTrustDomain(trustDomain spiffeid.TrustDomain) (*Bundle, error)
GetX509BundleForTrustDomain returns the X.509 bundle for the given trust domain. It implements the Source interface. An error will be returned if the trust domain does not match that of the bundle.
func (*Bundle) HasX509Root ¶
func (b *Bundle) HasX509Root(root *x509.Certificate) bool
HasX509Root checks if the given X.509 root exists in the bundle.
func (*Bundle) RemoveX509Root ¶
func (b *Bundle) RemoveX509Root(root *x509.Certificate)
RemoveX509Root removes an X.509 root from the bundle.
func (*Bundle) SetX509Roots ¶
func (b *Bundle) SetX509Roots(roots []*x509.Certificate)
SetX509Roots sets the X.509 roots in the bundle.
func (*Bundle) TrustDomain ¶
func (b *Bundle) TrustDomain() spiffeid.TrustDomain
TrustDomain returns the trust domain that the bundle belongs to.
func (*Bundle) X509Roots ¶
func (b *Bundle) X509Roots() []*x509.Certificate
X509Roots returns the X.509 roots in the bundle.
type Set ¶
type Set struct {
// contains filtered or unexported fields
}
Set is a set of bundles, keyed by trust domain.
func (*Set) Add ¶
Add adds a new bundle into the set. If a bundle already exists for the trust domain, the existing bundle is replaced.
func (*Set) Get ¶
func (s *Set) Get(trustDomain spiffeid.TrustDomain) (*Bundle, bool)
Get returns a bundle for the given trust domain. If the bundle is in the set it is returned and the boolean is true. Otherwise, the returned value is nil and the boolean is false.
func (*Set) GetX509BundleForTrustDomain ¶
func (s *Set) GetX509BundleForTrustDomain(trustDomain spiffeid.TrustDomain) (*Bundle, error)
GetX509BundleForTrustDomain returns the X.509 bundle for the given trust domain. It implements the Source interface.
func (*Set) Has ¶
func (s *Set) Has(trustDomain spiffeid.TrustDomain) bool
Has returns true if there is a bundle for the given trust domain.
func (*Set) Remove ¶
func (s *Set) Remove(trustDomain spiffeid.TrustDomain)
Remove removes the bundle for the given trust domain.