Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsInvalidConfig ¶
IsInvalidConfig asserts invalidConfigError.
func IsPolicyAlreadyExists ¶
IsPolicyAlreadyExists asserts policyAlreadyExistsError.
Types ¶
type CreateConfig ¶
type CreateConfig struct { // ClusterID represents the cluster ID a token is requested for. This ID is // used to restrict access on Vault related operations for a specific cluster. // E.g. the generated token will only be allowed to issue certificates for the // Vault PKI backend associated with the given cluster ID. ClusterID string `json:"cluster_id"` // Num represents the number of tokens the generator should create. Num int `json:"num"` // TTL configures the time to live for the requested token. This is a golang // time string with the allowed units s, m and h. TTL string `json:"ttl"` }
CreateConfig is a data structure used to configure the token creation process implemented by Service.Create.
type Service ¶
type Service interface { // Create generates new Vault tokens allowed to be used to issue signed // certificates with respect to the given configuration. Create(config CreateConfig) ([]string, error) // CreateOrgPolicy creates a new policy to restrict access to only being able to // issue signed certificates on the Vault PKI backend specific to the given // cluster ID and organization. CreateOrgPolicy(clusterID string) error // CreatePolicy creates a new policy to restrict access to only being able to // issue signed certificates on the Vault PKI backend specific to the given // cluster ID. Here the given cluster ID is used to create the policy name and // the policy specific rules matching certain paths within the Vault file // system like path structure. This policy name can be used to e.g. apply it // to some Vault token. CreatePolicy(clusterID string) error // DeleteOrgPolicy removes an org policy from Vault using its name. DeleteOrgPolicy(clusterID string) error // DeletePolicy removes a policy from Vault using its name. DeletePolicy(clusterID string) error // IsOrgPolicyCreated checks whether the PKI org issue policy already exists. IsOrgPolicyCreated(clusterID string) (bool, error) // IsPolicyCreated checks whether the PKI issue policy already exists. IsPolicyCreated(clusterID string) (bool, error) // OrgPolicyName returns the name of an org policy used to restrict access to Vault // for PKI issue requests. This policy is scoped to the given cluster ID. OrgPolicyName(clusterID string) string // PolicyName returns the name of a policy used to restrict access to Vault // for PKI issue requests. This policy is scoped to the given cluster ID. PolicyName(clusterID string) string }
Service creates new Vault policies to restrict access capabilities of e.g. Vault tokens.
func NewService ¶
func NewService(config ServiceConfig) (Service, error)
NewService creates a new configured service.
type ServiceConfig ¶
type ServiceConfig struct { // Dependencies. VaultClient *vaultclient.Client }
ServiceConfig represents the configuration used to create a new service.
func DefaultServiceConfig ¶
func DefaultServiceConfig() ServiceConfig
DefaultServiceConfig provides a default configuration to create a service.
Click to show internal directories.
Click to hide internal directories.