baseca

package
v0.0.6-beta Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 21, 2024 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ParseCertificateFormat

func ParseCertificateFormat(certificate *apiv1.SignedCertificate, parameter types.SignedCertificate) error

func ValidateSignature

func ValidateSignature(tc types.TrustChain, manifest types.Manifest) error

Signature Validation for Different Data Inputs

Types

type AccountClient

type AccountClient interface {
	LoginUser(ctx context.Context, in *apiv1.LoginUserRequest, opts ...grpc.CallOption) (*apiv1.LoginUserResponse, error)
	DeleteUser(ctx context.Context, in *apiv1.UsernameRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	GetUser(ctx context.Context, in *apiv1.UsernameRequest, opts ...grpc.CallOption) (*apiv1.User, error)
	ListUsers(ctx context.Context, in *apiv1.QueryParameter, opts ...grpc.CallOption) (*apiv1.Users, error)
	CreateUser(ctx context.Context, in *apiv1.CreateUserRequest, opts ...grpc.CallOption) (*apiv1.User, error)
	UpdateUserCredentials(ctx context.Context, in *apiv1.UpdateCredentialsRequest, opts ...grpc.CallOption) (*apiv1.User, error)
	UpdateUserPermissions(ctx context.Context, in *apiv1.UpdatePermissionsRequest, opts ...grpc.CallOption) (*apiv1.User, error)
}

type Authentication

type Authentication struct {
	ClientId    string
	ClientToken string
	AuthToken   string
}

type Client

type Client struct {
	Endpoint       string
	Authentication Authentication
	Attestation    string
	Certificate    apiv1.CertificateClient
	Account        AccountClient
	Service        apiv1.ServiceClient
	Insecure       bool
	// contains filtered or unexported fields
}

func NewClient

func NewClient(endpoint string, attestation string, opts ...ClientOptions) (*Client, error)

func (*Client) ApplyOptions

func (c *Client) ApplyOptions(options ...ClientOptions) error

func (*Client) GenerateSignature

func (c *Client) GenerateSignature(s types.Signature) (*[]byte, []*x509.Certificate, error)

func (Client) Get

func (cache Client) Get() (string, error)

func (*Client) IssueCertificate

func (c *Client) IssueCertificate(certificateRequest types.CertificateRequest) (*apiv1.SignedCertificate, error)

func (*Client) ProvisionIssueCertificate

func (c *Client) ProvisionIssueCertificate(certificateRequest types.CertificateRequest, ca *apiv1.CertificateAuthorityParameter, service, environment, extendedKey string) (*apiv1.SignedCertificate, error)

type ClientOptions

type ClientOptions func(*Client) error

func WithClientId

func WithClientId(clientId string) ClientOptions

func WithClientToken

func WithClientToken(clientToken string) ClientOptions

func WithInsecure

func WithInsecure() ClientOptions

type Provider

type Provider struct {
	Local string
	AWS   string
}
var Attestation Provider = Provider{
	Local: "Local",
	AWS:   "AWS",
}

type ServiceClient

type ServiceClient interface {
	CreateServiceAccount(ctx context.Context, in *apiv1.CreateServiceAccountRequest, opts ...grpc.CallOption) (*apiv1.CreateServiceAccountResponse, error)
	CreateProvisionerAccount(ctx context.Context, in *apiv1.CreateProvisionerAccountRequest, opts ...grpc.CallOption) (*apiv1.CreateProvisionerAccountResponse, error)
	GetProvisionerAccount(ctx context.Context, in *apiv1.AccountId, opts ...grpc.CallOption) (*apiv1.ProvisionerAccount, error)
	ListProvisionerAccounts(ctx context.Context, in *apiv1.QueryParameter, opts ...grpc.CallOption) (*apiv1.ProvisionerAccounts, error)
	ProvisionServiceAccount(ctx context.Context, in *apiv1.ProvisionServiceAccountRequest, opts ...grpc.CallOption) (*apiv1.ProvisionServiceAccountResponse, error)
	ListServiceAccounts(ctx context.Context, in *apiv1.QueryParameter, opts ...grpc.CallOption) (*apiv1.ServiceAccounts, error)
	GetServiceAccount(ctx context.Context, in *apiv1.AccountId, opts ...grpc.CallOption) (*apiv1.ServiceAccount, error)
	GetServiceAccountMetadata(ctx context.Context, in *apiv1.GetServiceAccountMetadataRequest, opts ...grpc.CallOption) (*apiv1.ServiceAccounts, error)
	DeleteServiceAccount(ctx context.Context, in *apiv1.AccountId, opts ...grpc.CallOption) (*emptypb.Empty, error)
	DeleteProvisionerAccount(ctx context.Context, in *apiv1.AccountId, opts ...grpc.CallOption) (*emptypb.Empty, error)
	DeleteProvisionedServiceAccount(ctx context.Context, in *apiv1.AccountId, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

type Signer

type Signer interface {
	Sign(data []byte) ([]byte, error)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL