Back to godoc.org

Package ticket

v0.0.9
Latest Go to latest

The latest major version is .

Published: Jun 24, 2020 | License: Apache-2.0 | Module: github.com/grailbio/base

Index

Variables

var TicketServiceDesc rpc.InterfaceDesc = descTicketService

TicketServiceDesc describes the TicketService interface.

func VDLReadTicket

func VDLReadTicket(dec vdl.Decoder, x *Ticket) error

type AwsAssumeRoleBuilder

type AwsAssumeRoleBuilder struct {
	Region string
	Role   string
	TtlSec int32
}

AwsAssumeRoleBuilder describes the information required to obtain a temporary set of AWS credentials (which can be described using AwsCredentials) using the AssumeRole call from Security Token Service (STS).

func (AwsAssumeRoleBuilder) VDLIsZero

func (x AwsAssumeRoleBuilder) VDLIsZero() bool

func (*AwsAssumeRoleBuilder) VDLRead

func (x *AwsAssumeRoleBuilder) VDLRead(dec vdl.Decoder) error

func (AwsAssumeRoleBuilder) VDLReflect

func (AwsAssumeRoleBuilder) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.AwsAssumeRoleBuilder"`
})

func (AwsAssumeRoleBuilder) VDLWrite

func (x AwsAssumeRoleBuilder) VDLWrite(enc vdl.Encoder) error

type AwsCredentials

type AwsCredentials struct {
	Region          string
	AccessKeyId     string
	SecretAccessKey string
	SessionToken    string
	// Expiration indicates the date on which the credentials expire.
	Expiration string
}

AwsCredentials describes a set of (potentially temporary) AWS credentials.

func (AwsCredentials) VDLIsZero

func (x AwsCredentials) VDLIsZero() bool

func (*AwsCredentials) VDLRead

func (x *AwsCredentials) VDLRead(dec vdl.Decoder) error

func (AwsCredentials) VDLReflect

func (AwsCredentials) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.AwsCredentials"`
})

func (AwsCredentials) VDLWrite

func (x AwsCredentials) VDLWrite(enc vdl.Encoder) error

type AwsSessionBuilder

type AwsSessionBuilder struct {
	AwsCredentials AwsCredentials
	// TTL in seconds for the generated AWS credential from 900-129600.
	TtlSec int32
}

AwsSessionBuilder describes the information required to obtain a temporary set of AWS credentials (described using AwsCredentials) then using the GetSessionToken call from Security Token Service (STS).

func (AwsSessionBuilder) VDLIsZero

func (x AwsSessionBuilder) VDLIsZero() bool

func (*AwsSessionBuilder) VDLRead

func (x *AwsSessionBuilder) VDLRead(dec vdl.Decoder) error

func (AwsSessionBuilder) VDLReflect

func (AwsSessionBuilder) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.AwsSessionBuilder"`
})

func (AwsSessionBuilder) VDLWrite

func (x AwsSessionBuilder) VDLWrite(enc vdl.Encoder) error

type AwsTicket

type AwsTicket struct {
	AwsAssumeRoleBuilder *AwsAssumeRoleBuilder
	AwsSessionBuilder    *AwsSessionBuilder
	AwsCredentials       AwsCredentials
}

AwsTicket is a ticket that contains a set of (potentially temporary) AWS credentials.

func (AwsTicket) VDLIsZero

func (x AwsTicket) VDLIsZero() bool

func (*AwsTicket) VDLRead

func (x *AwsTicket) VDLRead(dec vdl.Decoder) error

func (AwsTicket) VDLReflect

func (AwsTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.AwsTicket"`
})

func (AwsTicket) VDLWrite

func (x AwsTicket) VDLWrite(enc vdl.Encoder) error

type B2AccountAuthorizationBuilder

type B2AccountAuthorizationBuilder struct {
	AccountId      string
	ApplicationKey string
}

B2AccountAuthorizationBuilder describes the information required to obtain a B2 account authorization.

func (B2AccountAuthorizationBuilder) VDLIsZero

func (x B2AccountAuthorizationBuilder) VDLIsZero() bool

func (*B2AccountAuthorizationBuilder) VDLRead

func (x *B2AccountAuthorizationBuilder) VDLRead(dec vdl.Decoder) error

func (B2AccountAuthorizationBuilder) VDLReflect

func (B2AccountAuthorizationBuilder) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.B2AccountAuthorizationBuilder"`
})

func (B2AccountAuthorizationBuilder) VDLWrite

func (x B2AccountAuthorizationBuilder) VDLWrite(enc vdl.Encoder) error

type B2Ticket

type B2Ticket struct {
	B2AccountAuthorizationBuilder *B2AccountAuthorizationBuilder
	AccountId                     string
	AuthorizationToken            string
	ApiUrl                        string
	DownloadUrl                   string
	RecommendedPartSize           int64
	AbsoluteMinimumPartSize       int64
}

B2Ticket instance contains a B2 account level authorization token plus URLs and configuration values for the account.

func (B2Ticket) VDLIsZero

func (x B2Ticket) VDLIsZero() bool

func (*B2Ticket) VDLRead

func (x *B2Ticket) VDLRead(dec vdl.Decoder) error

func (B2Ticket) VDLReflect

func (B2Ticket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.B2Ticket"`
})

func (B2Ticket) VDLWrite

func (x B2Ticket) VDLWrite(enc vdl.Encoder) error

type Builder

type Builder interface {
	Build(ctx *TicketContext) (Ticket, error)
}

Builder is the interface for building a Ticket.

type Config

type Config struct {
	Tickets     map[string]TicketConfig
	Permissions access.Permissions
}

func (Config) VDLIsZero

func (x Config) VDLIsZero() bool

func (*Config) VDLRead

func (x *Config) VDLRead(dec vdl.Decoder) error

func (Config) VDLReflect

func (Config) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.Config"`
})

func (Config) VDLWrite

func (x Config) VDLWrite(enc vdl.Encoder) error

type DockerClientTicket

type DockerClientTicket struct {
	TlsCertAuthorityBuilder *TlsCertAuthorityBuilder
	Credentials             TlsCredentials
	Url                     string
}

DockerClientTicket instance represents the TLS certificate material required for clients to authenticate against a specific DockerServer.

func (DockerClientTicket) VDLIsZero

func (x DockerClientTicket) VDLIsZero() bool

func (*DockerClientTicket) VDLRead

func (x *DockerClientTicket) VDLRead(dec vdl.Decoder) error

func (DockerClientTicket) VDLReflect

func (DockerClientTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.DockerClientTicket"`
})

func (DockerClientTicket) VDLWrite

func (x DockerClientTicket) VDLWrite(enc vdl.Encoder) error

type DockerServerTicket

type DockerServerTicket struct {
	TlsCertAuthorityBuilder *TlsCertAuthorityBuilder
	Credentials             TlsCredentials
}

DockerServerTicket instance represents a Docker Server and the TLS certificate material required for clients to verify and authenticate it.

func (DockerServerTicket) VDLIsZero

func (x DockerServerTicket) VDLIsZero() bool

func (*DockerServerTicket) VDLRead

func (x *DockerServerTicket) VDLRead(dec vdl.Decoder) error

func (DockerServerTicket) VDLReflect

func (DockerServerTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.DockerServerTicket"`
})

func (DockerServerTicket) VDLWrite

func (x DockerServerTicket) VDLWrite(enc vdl.Encoder) error

type DockerTicket

type DockerTicket struct {
	TlsCertAuthorityBuilder *TlsCertAuthorityBuilder
	Credentials             TlsCredentials
	Url                     string
}

DockerTicket instance represents a Docker repository and the TLS certificate material required to verify and authenticate to it. TODO(razvanm): Remove DockerTicket and replace with DockerServerTicket

and DockerClientTicket

func (DockerTicket) VDLIsZero

func (x DockerTicket) VDLIsZero() bool

func (*DockerTicket) VDLRead

func (x *DockerTicket) VDLRead(dec vdl.Decoder) error

func (DockerTicket) VDLReflect

func (DockerTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.DockerTicket"`
})

func (DockerTicket) VDLWrite

func (x DockerTicket) VDLWrite(enc vdl.Encoder) error

type EcrTicket

type EcrTicket struct {
	AwsAssumeRoleBuilder *AwsAssumeRoleBuilder
	// The base64-encoded authorization token which can be presented directly to
	// the Docker registry.
	// Reference: https://docs.docker.com/registry/spec/auth/token/
	AuthorizationToken string
	// Expiration indicates the date on which the authorization token expire.
	Expiration string
	// The register URL ("https://${ACCOUNTID}.dkr.ecr.region.amazonaws.com").
	Endpoint string
}

EcrTicket describes an AWS EC2 Container Registry.

func (EcrTicket) VDLIsZero

func (x EcrTicket) VDLIsZero() bool

func (*EcrTicket) VDLRead

func (x *EcrTicket) VDLRead(dec vdl.Decoder) error

func (EcrTicket) VDLReflect

func (EcrTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.EcrTicket"`
})

func (EcrTicket) VDLWrite

func (x EcrTicket) VDLWrite(enc vdl.Encoder) error

type GenericTicket

type GenericTicket struct {
	Data []byte
}

GenericTicket describes a generic unstructured piece of data. This can be used to store arbitrary secrets for example.

func (GenericTicket) VDLIsZero

func (x GenericTicket) VDLIsZero() bool

func (*GenericTicket) VDLRead

func (x *GenericTicket) VDLRead(dec vdl.Decoder) error

func (GenericTicket) VDLReflect

func (GenericTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.GenericTicket"`
})

func (GenericTicket) VDLWrite

func (x GenericTicket) VDLWrite(enc vdl.Encoder) error

type S3Ticket

type S3Ticket struct {
	AwsAssumeRoleBuilder *AwsAssumeRoleBuilder
	AwsSessionBuilder    *AwsSessionBuilder
	AwsCredentials       AwsCredentials
	Endpoint             string
	Bucket               string
	Prefix               string
}

S3Ticket describes an AWS S3 object or prefix.

func (S3Ticket) VDLIsZero

func (x S3Ticket) VDLIsZero() bool

func (*S3Ticket) VDLRead

func (x *S3Ticket) VDLRead(dec vdl.Decoder) error

func (S3Ticket) VDLReflect

func (S3Ticket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.S3Ticket"`
})

func (S3Ticket) VDLWrite

func (x S3Ticket) VDLWrite(enc vdl.Encoder) error

type Ticket

type Ticket interface {
	// Index returns the field index.
	Index() int
	// Interface returns the field value as an interface.
	Interface() interface{}
	// Name returns the field name.
	Name() string
	// VDLReflect describes the Ticket union type.
	VDLReflect(__TicketReflect)
	VDLIsZero() bool
	VDLWrite(vdl.Encoder) error
}

Ticket represents any single field of the Ticket union type.

Ticket is a union of all our tickets.

type TicketAwsTicket

type TicketAwsTicket struct{ Value AwsTicket }

TicketAwsTicket represents field AwsTicket of the Ticket union type.

func (TicketAwsTicket) Build

func (t TicketAwsTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketAwsTicket) Index

func (x TicketAwsTicket) Index() int

func (TicketAwsTicket) Interface

func (x TicketAwsTicket) Interface() interface{}

func (TicketAwsTicket) Name

func (x TicketAwsTicket) Name() string

func (TicketAwsTicket) VDLIsZero

func (x TicketAwsTicket) VDLIsZero() bool

func (TicketAwsTicket) VDLReflect

func (x TicketAwsTicket) VDLReflect(__TicketReflect)

func (TicketAwsTicket) VDLWrite

func (x TicketAwsTicket) VDLWrite(enc vdl.Encoder) error

type TicketB2Ticket

type TicketB2Ticket struct{ Value B2Ticket }

TicketB2Ticket represents field B2Ticket of the Ticket union type.

func (TicketB2Ticket) Build

func (t TicketB2Ticket) Build(_ *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketB2Ticket) Index

func (x TicketB2Ticket) Index() int

func (TicketB2Ticket) Interface

func (x TicketB2Ticket) Interface() interface{}

func (TicketB2Ticket) Name

func (x TicketB2Ticket) Name() string

func (TicketB2Ticket) VDLIsZero

func (x TicketB2Ticket) VDLIsZero() bool

func (TicketB2Ticket) VDLReflect

func (x TicketB2Ticket) VDLReflect(__TicketReflect)

func (TicketB2Ticket) VDLWrite

func (x TicketB2Ticket) VDLWrite(enc vdl.Encoder) error

type TicketConfig

type TicketConfig struct {
	Ticket      Ticket
	Permissions access.Permissions
}

TicketConfig describes a ticket and its associated permissions.

func (TicketConfig) VDLIsZero

func (x TicketConfig) VDLIsZero() bool

func (*TicketConfig) VDLRead

func (x *TicketConfig) VDLRead(dec vdl.Decoder) error

func (TicketConfig) VDLReflect

func (TicketConfig) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.TicketConfig"`
})

func (TicketConfig) VDLWrite

func (x TicketConfig) VDLWrite(enc vdl.Encoder) error

type TicketContext

type TicketContext struct {
	// contains filtered or unexported fields
}

TicketContext wraps the informations that needs to carry around between varius ticket functions.

func NewTicketContext

func NewTicketContext(ctx *context.T, session *session.Session, remoteBlessings security.Blessings) *TicketContext

NewTicketContext allows creating a TicketContext without unncessary exporting its fields.

type TicketDockerClientTicket

type TicketDockerClientTicket struct{ Value DockerClientTicket }

TicketDockerClientTicket represents field DockerClientTicket of the Ticket union type.

func (TicketDockerClientTicket) Build

func (t TicketDockerClientTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketDockerClientTicket) Index

func (x TicketDockerClientTicket) Index() int

func (TicketDockerClientTicket) Interface

func (x TicketDockerClientTicket) Interface() interface{}

func (TicketDockerClientTicket) Name

func (x TicketDockerClientTicket) Name() string

func (TicketDockerClientTicket) VDLIsZero

func (x TicketDockerClientTicket) VDLIsZero() bool

func (TicketDockerClientTicket) VDLReflect

func (x TicketDockerClientTicket) VDLReflect(__TicketReflect)

func (TicketDockerClientTicket) VDLWrite

func (x TicketDockerClientTicket) VDLWrite(enc vdl.Encoder) error

type TicketDockerServerTicket

type TicketDockerServerTicket struct{ Value DockerServerTicket }

TicketDockerServerTicket represents field DockerServerTicket of the Ticket union type.

func (TicketDockerServerTicket) Build

func (t TicketDockerServerTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketDockerServerTicket) Index

func (x TicketDockerServerTicket) Index() int

func (TicketDockerServerTicket) Interface

func (x TicketDockerServerTicket) Interface() interface{}

func (TicketDockerServerTicket) Name

func (x TicketDockerServerTicket) Name() string

func (TicketDockerServerTicket) VDLIsZero

func (x TicketDockerServerTicket) VDLIsZero() bool

func (TicketDockerServerTicket) VDLReflect

func (x TicketDockerServerTicket) VDLReflect(__TicketReflect)

func (TicketDockerServerTicket) VDLWrite

func (x TicketDockerServerTicket) VDLWrite(enc vdl.Encoder) error

type TicketDockerTicket

type TicketDockerTicket struct{ Value DockerTicket }

TicketDockerTicket represents field DockerTicket of the Ticket union type.

func (TicketDockerTicket) Build

func (t TicketDockerTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketDockerTicket) Index

func (x TicketDockerTicket) Index() int

func (TicketDockerTicket) Interface

func (x TicketDockerTicket) Interface() interface{}

func (TicketDockerTicket) Name

func (x TicketDockerTicket) Name() string

func (TicketDockerTicket) VDLIsZero

func (x TicketDockerTicket) VDLIsZero() bool

func (TicketDockerTicket) VDLReflect

func (x TicketDockerTicket) VDLReflect(__TicketReflect)

func (TicketDockerTicket) VDLWrite

func (x TicketDockerTicket) VDLWrite(enc vdl.Encoder) error

type TicketEcrTicket

type TicketEcrTicket struct{ Value EcrTicket }

TicketEcrTicket represents field EcrTicket of the Ticket union type.

func (TicketEcrTicket) Build

func (t TicketEcrTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketEcrTicket) Index

func (x TicketEcrTicket) Index() int

func (TicketEcrTicket) Interface

func (x TicketEcrTicket) Interface() interface{}

func (TicketEcrTicket) Name

func (x TicketEcrTicket) Name() string

func (TicketEcrTicket) VDLIsZero

func (x TicketEcrTicket) VDLIsZero() bool

func (TicketEcrTicket) VDLReflect

func (x TicketEcrTicket) VDLReflect(__TicketReflect)

func (TicketEcrTicket) VDLWrite

func (x TicketEcrTicket) VDLWrite(enc vdl.Encoder) error

type TicketGenericTicket

type TicketGenericTicket struct{ Value GenericTicket }

TicketGenericTicket represents field GenericTicket of the Ticket union type.

func (TicketGenericTicket) Build

func (t TicketGenericTicket) Build(_ *TicketContext) (Ticket, error)

Build builds a Ticket.

func (TicketGenericTicket) Index

func (x TicketGenericTicket) Index() int

func (TicketGenericTicket) Interface

func (x TicketGenericTicket) Interface() interface{}

func (TicketGenericTicket) Name

func (x TicketGenericTicket) Name() string

func (TicketGenericTicket) VDLIsZero

func (x TicketGenericTicket) VDLIsZero() bool

func (TicketGenericTicket) VDLReflect

func (x TicketGenericTicket) VDLReflect(__TicketReflect)

func (TicketGenericTicket) VDLWrite

func (x TicketGenericTicket) VDLWrite(enc vdl.Encoder) error

type TicketS3Ticket

type TicketS3Ticket struct{ Value S3Ticket }

TicketS3Ticket represents field S3Ticket of the Ticket union type.

func (TicketS3Ticket) Build

func (t TicketS3Ticket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketS3Ticket) Index

func (x TicketS3Ticket) Index() int

func (TicketS3Ticket) Interface

func (x TicketS3Ticket) Interface() interface{}

func (TicketS3Ticket) Name

func (x TicketS3Ticket) Name() string

func (TicketS3Ticket) VDLIsZero

func (x TicketS3Ticket) VDLIsZero() bool

func (TicketS3Ticket) VDLReflect

func (x TicketS3Ticket) VDLReflect(__TicketReflect)

func (TicketS3Ticket) VDLWrite

func (x TicketS3Ticket) VDLWrite(enc vdl.Encoder) error

type TicketServiceClientMethods

type TicketServiceClientMethods interface {
	GetPermissions(*context.T, ...rpc.CallOpt) (perms access.Permissions, version string, _ error)
	SetPermissions(_ *context.T, perms access.Permissions, version string, _ ...rpc.CallOpt) error
	Get(*context.T, ...rpc.CallOpt) (Ticket, error)
}

TicketServiceClientMethods is the client interface containing TicketService methods.

TicketService provides a way to obtain a ticket. The access can be restricted by setting the permissions appropriately.

type TicketServiceClientStub

type TicketServiceClientStub interface {
	TicketServiceClientMethods
	rpc.UniversalServiceMethods
}

TicketServiceClientStub adds universal methods to TicketServiceClientMethods.

func TicketServiceClient

func TicketServiceClient(name string) TicketServiceClientStub

TicketServiceClient returns a client stub for TicketService.

type TicketServiceServerMethods

type TicketServiceServerMethods interface {
	GetPermissions(*context.T, rpc.ServerCall) (perms access.Permissions, version string, _ error)
	SetPermissions(_ *context.T, _ rpc.ServerCall, perms access.Permissions, version string) error
	Get(*context.T, rpc.ServerCall) (Ticket, error)
}

TicketServiceServerMethods is the interface a server writer implements for TicketService.

TicketService provides a way to obtain a ticket. The access can be restricted by setting the permissions appropriately.

type TicketServiceServerStub

type TicketServiceServerStub interface {
	TicketServiceServerStubMethods
	// Describe the TicketService interfaces.
	Describe__() []rpc.InterfaceDesc
}

TicketServiceServerStub adds universal methods to TicketServiceServerStubMethods.

func TicketServiceServer

func TicketServiceServer(impl TicketServiceServerMethods) TicketServiceServerStub

TicketServiceServer returns a server stub for TicketService. It converts an implementation of TicketServiceServerMethods into an object that may be used by rpc.Server.

type TicketServiceServerStubMethods

type TicketServiceServerStubMethods TicketServiceServerMethods

TicketServiceServerStubMethods is the server interface containing TicketService methods, as expected by rpc.Server. There is no difference between this interface and TicketServiceServerMethods since there are no streaming methods.

type TicketTlsClientTicket

type TicketTlsClientTicket struct{ Value TlsClientTicket }

TicketTlsClientTicket represents field TlsClientTicket of the Ticket union type.

func (TicketTlsClientTicket) Build

func (t TicketTlsClientTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketTlsClientTicket) Index

func (x TicketTlsClientTicket) Index() int

func (TicketTlsClientTicket) Interface

func (x TicketTlsClientTicket) Interface() interface{}

func (TicketTlsClientTicket) Name

func (x TicketTlsClientTicket) Name() string

func (TicketTlsClientTicket) VDLIsZero

func (x TicketTlsClientTicket) VDLIsZero() bool

func (TicketTlsClientTicket) VDLReflect

func (x TicketTlsClientTicket) VDLReflect(__TicketReflect)

func (TicketTlsClientTicket) VDLWrite

func (x TicketTlsClientTicket) VDLWrite(enc vdl.Encoder) error

type TicketTlsServerTicket

type TicketTlsServerTicket struct{ Value TlsServerTicket }

TicketTlsServerTicket represents field TlsServerTicket of the Ticket union type.

func (TicketTlsServerTicket) Build

func (t TicketTlsServerTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketTlsServerTicket) Index

func (x TicketTlsServerTicket) Index() int

func (TicketTlsServerTicket) Interface

func (x TicketTlsServerTicket) Interface() interface{}

func (TicketTlsServerTicket) Name

func (x TicketTlsServerTicket) Name() string

func (TicketTlsServerTicket) VDLIsZero

func (x TicketTlsServerTicket) VDLIsZero() bool

func (TicketTlsServerTicket) VDLReflect

func (x TicketTlsServerTicket) VDLReflect(__TicketReflect)

func (TicketTlsServerTicket) VDLWrite

func (x TicketTlsServerTicket) VDLWrite(enc vdl.Encoder) error

type TicketVanadiumTicket

type TicketVanadiumTicket struct{ Value VanadiumTicket }

TicketVanadiumTicket represents field VanadiumTicket of the Ticket union type.

func (TicketVanadiumTicket) Build

func (t TicketVanadiumTicket) Build(ctx *TicketContext) (Ticket, error)

Build builds a Ticket by running all the builders.

func (TicketVanadiumTicket) Index

func (x TicketVanadiumTicket) Index() int

func (TicketVanadiumTicket) Interface

func (x TicketVanadiumTicket) Interface() interface{}

func (TicketVanadiumTicket) Name

func (x TicketVanadiumTicket) Name() string

func (TicketVanadiumTicket) VDLIsZero

func (x TicketVanadiumTicket) VDLIsZero() bool

func (TicketVanadiumTicket) VDLReflect

func (x TicketVanadiumTicket) VDLReflect(__TicketReflect)

func (TicketVanadiumTicket) VDLWrite

func (x TicketVanadiumTicket) VDLWrite(enc vdl.Encoder) error

type TlsCertAuthorityBuilder

type TlsCertAuthorityBuilder struct {
	// PEM-encoded certificate and private key of the Certificate Authority.
	Authority string
	// TTL for the generated cert.
	TtlSec int32
	// Common Name of the generated cert.
	CommonName string
	// Subject Alternate Name list.
	// Note: x509 spec says if SAN is set, CN is usually ignored.
	//       Include CN in SAN list if you want the CN to be verified.
	San []string
}

TlsCertAuthorityBuilder describes a Certification Authority capable to generate a particular cert.

func (TlsCertAuthorityBuilder) VDLIsZero

func (x TlsCertAuthorityBuilder) VDLIsZero() bool

func (*TlsCertAuthorityBuilder) VDLRead

func (x *TlsCertAuthorityBuilder) VDLRead(dec vdl.Decoder) error

func (TlsCertAuthorityBuilder) VDLReflect

func (TlsCertAuthorityBuilder) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.TlsCertAuthorityBuilder"`
})

func (TlsCertAuthorityBuilder) VDLWrite

func (x TlsCertAuthorityBuilder) VDLWrite(enc vdl.Encoder) error

type TlsClientTicket

type TlsClientTicket struct {
	TlsCertAuthorityBuilder *TlsCertAuthorityBuilder
	Credentials             TlsCredentials
	Endpoints               []string
}

TlsClientTicket describes a TLS client.

func (TlsClientTicket) VDLIsZero

func (x TlsClientTicket) VDLIsZero() bool

func (*TlsClientTicket) VDLRead

func (x *TlsClientTicket) VDLRead(dec vdl.Decoder) error

func (TlsClientTicket) VDLReflect

func (TlsClientTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.TlsClientTicket"`
})

func (TlsClientTicket) VDLWrite

func (x TlsClientTicket) VDLWrite(enc vdl.Encoder) error

type TlsCredentials

type TlsCredentials struct {
	// PEM-encoded public certificate of the Certificate Authority.
	AuthorityCert string
	// PEM-encoded client certificate.
	Cert string
	// PEM-encoded client private key.
	Key string
}

TlsCredentials describes a generic set of TLS credentials that include: the CA that accepted by the client (only peers that present a certificate sign by this CA are accepted), the client certificate and the client private key.

func (TlsCredentials) VDLIsZero

func (x TlsCredentials) VDLIsZero() bool

func (*TlsCredentials) VDLRead

func (x *TlsCredentials) VDLRead(dec vdl.Decoder) error

func (TlsCredentials) VDLReflect

func (TlsCredentials) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.TlsCredentials"`
})

func (TlsCredentials) VDLWrite

func (x TlsCredentials) VDLWrite(enc vdl.Encoder) error

type TlsServerTicket

type TlsServerTicket struct {
	TlsCertAuthorityBuilder *TlsCertAuthorityBuilder
	Credentials             TlsCredentials
}

TlsServerTicket describes a TLS server.

func (TlsServerTicket) VDLIsZero

func (x TlsServerTicket) VDLIsZero() bool

func (*TlsServerTicket) VDLRead

func (x *TlsServerTicket) VDLRead(dec vdl.Decoder) error

func (TlsServerTicket) VDLReflect

func (TlsServerTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.TlsServerTicket"`
})

func (TlsServerTicket) VDLWrite

func (x TlsServerTicket) VDLWrite(enc vdl.Encoder) error

type VanadiumBuilder

type VanadiumBuilder struct {
	BlessingName string
}

VanadiumBuilder describes the information required to build Vanadium blessings.

func (VanadiumBuilder) VDLIsZero

func (x VanadiumBuilder) VDLIsZero() bool

func (*VanadiumBuilder) VDLRead

func (x *VanadiumBuilder) VDLRead(dec vdl.Decoder) error

func (VanadiumBuilder) VDLReflect

func (VanadiumBuilder) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.VanadiumBuilder"`
})

func (VanadiumBuilder) VDLWrite

func (x VanadiumBuilder) VDLWrite(enc vdl.Encoder) error

type VanadiumTicket

type VanadiumTicket struct {
	VanadiumBuilder *VanadiumBuilder
	// v.io/v23/security.WireBlessings in VOM + Base64 format.
	Blessing string
}

VanadiumTicket describes a set of Vanadium blessings. This allows obtaining a completely new blessings (role blessings) by the owners of certain blessings.

func (VanadiumTicket) VDLIsZero

func (x VanadiumTicket) VDLIsZero() bool

func (*VanadiumTicket) VDLRead

func (x *VanadiumTicket) VDLRead(dec vdl.Decoder) error

func (VanadiumTicket) VDLReflect

func (VanadiumTicket) VDLReflect(struct {
	Name string `vdl:"github.com/grailbio/base/security/ticket.VanadiumTicket"`
})

func (VanadiumTicket) VDLWrite

func (x VanadiumTicket) VDLWrite(enc vdl.Encoder) error

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier