data_source

package
v0.64.1 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 21 Imported by: 5

Documentation

Overview

Package data_source provides the tooling to build the Raito data source import file. Simply use the NewDataSourceFileCreator function by passing in the config coming from the CLI to create the necessary file(s). The returned DataSourceFileCreator can then be used (using the AddDataObjects function) to write DataObjects to the file. Make sure to call the Close function on the creator at the end (tip: use defer).

Index

Constants

View Source
const (
	/*
		Data Source features
	*/
	ColumnMasking   = "columnMasking"
	RowFiltering    = "rowFiltering"
	ColumnFiltering = "columnFiltering"

	/*
		The list of standard Data Object Types
	*/
	Datasource = "datasource"
	Database   = "database"
	Schema     = "schema"
	Table      = "table"
	View       = "view"
	Column     = "column"
	Dataset    = "dataset"
	Bucket     = "bucket"
	Object     = "object"
	Folder     = "folder"
	File       = "file"
)
View Source
const (
	Read  string = "read"
	Write string = "write"
	Admin string = "admin"
)
View Source
const (
	DataSourceSyncService_CliVersionInformation_FullMethodName = "/data_source.DataSourceSyncService/CliVersionInformation"
	DataSourceSyncService_SyncDataSource_FullMethodName        = "/data_source.DataSourceSyncService/SyncDataSource"
	DataSourceSyncService_GetDataSourceMetaData_FullMethodName = "/data_source.DataSourceSyncService/GetDataSourceMetaData"
)
View Source
const DataSourceSyncerName = "dataSourceSyncer"

DataSourceSyncerName constant should not be used directly when implementing plugins. It's the registration name for the data source syncer plugin, used by the CLI and the cli-plugin-base library (RegisterPlugins function) to register the plugins.

Variables

View Source
var DataSourceSyncService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "data_source.DataSourceSyncService",
	HandlerType: (*DataSourceSyncServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "CliVersionInformation",
			Handler:    _DataSourceSyncService_CliVersionInformation_Handler,
		},
		{
			MethodName: "SyncDataSource",
			Handler:    _DataSourceSyncService_SyncDataSource_Handler,
		},
		{
			MethodName: "GetDataSourceMetaData",
			Handler:    _DataSourceSyncService_GetDataSourceMetaData_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "data_source/data_source.proto",
}

DataSourceSyncService_ServiceDesc is the grpc.ServiceDesc for DataSourceSyncService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_data_source_data_source_proto protoreflect.FileDescriptor
View Source
var MinimalCliVersion = semver.MustParse("0.50.0-0")

Functions

func RegisterDataSourceSyncServiceServer added in v0.32.0

func RegisterDataSourceSyncServiceServer(s grpc.ServiceRegistrar, srv DataSourceSyncServiceServer)

Types

type AccessProviderType added in v0.44.0

type AccessProviderType struct {

	// Type, The (internal) name of the type
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Label, A human readable name for the access provider
	Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	// Icon, The name or base64 encoded version of the icon to use for this access provider
	Icon string `protobuf:"bytes,3,opt,name=icon,proto3" json:"icon,omitempty"`
	// IsNamedEntity indicates if the access provider represents a named entity (like a role or a policy) in the data source. False, typically means some kind of ACL system (nameless bindings).
	IsNamedEntity bool `protobuf:"varint,4,opt,name=isNamedEntity,proto3" json:"isNamedEntity,omitempty"`
	// CanBeCreated indicates whether the access provider can be created from the Raito Cloud UI or not
	CanBeCreated bool `protobuf:"varint,5,opt,name=canBeCreated,proto3" json:"canBeCreated,omitempty"`
	// CanBeAssumed indicates that this (named entity) is something the user has to ‘assume’ to get these permissions. Typically, a role.
	CanBeAssumed bool `protobuf:"varint,6,opt,name=canBeAssumed,proto3" json:"canBeAssumed,omitempty"`
	// CanAssumeMultiple indicates that the user can assume multiple (roles).
	CanAssumeMultiple bool `protobuf:"varint,7,opt,name=canAssumeMultiple,proto3" json:"canAssumeMultiple,omitempty"`
	// Deprecated: Marked as deprecated in data_source/data_source.proto.
	ContainsWhat bool `protobuf:"varint,8,opt,name=containsWhat,proto3" json:"containsWhat,omitempty"`
	// Deprecated: Marked as deprecated in data_source/data_source.proto.
	ContainsWho bool `protobuf:"varint,9,opt,name=containsWho,proto3" json:"containsWho,omitempty"`
	// Deprecated: Marked as deprecated in data_source/data_source.proto.
	WhoInputTypes []string `protobuf:"bytes,10,rep,name=whoInputTypes,proto3" json:"whoInputTypes,omitempty"`
	// IdentityStoreTypeForWho can be used to specify from which identity store type the WHO can come from.
	// This was specifically called to life for supporting the case of AWS permission sets as they become special roles in the AWS account data sources but should only use users and groups from the AWS organization (which is a linked identity store of the aws account data sources).
	IdentityStoreTypeForWho string `protobuf:"bytes,11,opt,name=identityStoreTypeForWho,proto3" json:"identityStoreTypeForWho,omitempty"`
	// AllowedWhoAccessProviderTypes lists of access provider types that could be in the who list of this access provider type
	// Nil indicates that all access provider types are allowed. Otherwise only defined access provider types are allowed to be part of the who list of this access provider type.
	AllowedWhoAccessProviderTypes []string `protobuf:"bytes,12,rep,name=allowedWhoAccessProviderTypes,proto3" json:"allowedWhoAccessProviderTypes,omitempty"`
	// contains filtered or unexported fields
}

func (*AccessProviderType) Descriptor deprecated added in v0.44.0

func (*AccessProviderType) Descriptor() ([]byte, []int)

Deprecated: Use AccessProviderType.ProtoReflect.Descriptor instead.

func (*AccessProviderType) GetAllowedWhoAccessProviderTypes added in v0.47.0

func (x *AccessProviderType) GetAllowedWhoAccessProviderTypes() []string

func (*AccessProviderType) GetCanAssumeMultiple added in v0.44.0

func (x *AccessProviderType) GetCanAssumeMultiple() bool

func (*AccessProviderType) GetCanBeAssumed added in v0.44.0

func (x *AccessProviderType) GetCanBeAssumed() bool

func (*AccessProviderType) GetCanBeCreated added in v0.44.0

func (x *AccessProviderType) GetCanBeCreated() bool

func (*AccessProviderType) GetContainsWhat deprecated added in v0.44.0

func (x *AccessProviderType) GetContainsWhat() bool

Deprecated: Marked as deprecated in data_source/data_source.proto.

func (*AccessProviderType) GetContainsWho deprecated added in v0.44.0

func (x *AccessProviderType) GetContainsWho() bool

Deprecated: Marked as deprecated in data_source/data_source.proto.

func (*AccessProviderType) GetIcon added in v0.44.0

func (x *AccessProviderType) GetIcon() string

func (*AccessProviderType) GetIdentityStoreTypeForWho added in v0.44.0

func (x *AccessProviderType) GetIdentityStoreTypeForWho() string

func (*AccessProviderType) GetIsNamedEntity added in v0.44.0

func (x *AccessProviderType) GetIsNamedEntity() bool

func (*AccessProviderType) GetLabel added in v0.44.0

func (x *AccessProviderType) GetLabel() string

func (*AccessProviderType) GetType added in v0.44.0

func (x *AccessProviderType) GetType() string

func (*AccessProviderType) GetWhoInputTypes deprecated added in v0.44.0

func (x *AccessProviderType) GetWhoInputTypes() []string

Deprecated: Marked as deprecated in data_source/data_source.proto.

func (*AccessProviderType) ProtoMessage added in v0.44.0

func (*AccessProviderType) ProtoMessage()

func (*AccessProviderType) ProtoReflect added in v0.44.0

func (x *AccessProviderType) ProtoReflect() protoreflect.Message

func (*AccessProviderType) Reset added in v0.44.0

func (x *AccessProviderType) Reset()

func (*AccessProviderType) String added in v0.44.0

func (x *AccessProviderType) String() string

type DataObject

type DataObject struct {
	ExternalId       string       `json:"externalId"`
	Name             string       `json:"name"`
	FullName         string       `json:"fullName"`
	Type             string       `json:"type"`
	Description      string       `json:"description"`
	ParentExternalId string       `json:"parentExternalId"`
	Tags             []*tag.Tag   `json:"tags"`
	DataType         *string      `json:"dataType,omitempty"`
	Owners           *OwnersInput `json:"owners"`
}

DataObject represents a data object in the format that is suitable to be imported into a Raito data source.

type DataObjectReference added in v0.6.0

type DataObjectReference struct {
	FullName string `json:"fullName" yaml:"fullName"`
	Type     string `json:"type" yaml:"type"`
}

DataObjectReference represents the reference to a DataObject suitable for e.g. defining the What in Access Provider import

type DataObjectType added in v0.15.0

type DataObjectType struct {

	// Name, The internal technical name used to reference the data object type. This must be unique.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Type is used to group conceptually similar data object types. Data object types with the same type will be shown in the same table in the UI. E.g. shared-table and table both have the type table.
	Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
	// Label, a display name for the type to be used in the UI
	Label string `protobuf:"bytes,3,opt,name=label,proto3" json:"label,omitempty"`
	// Icon, The name or base64 encoded version of the icon to use for this data source.
	Icon string `protobuf:"bytes,4,opt,name=icon,proto3" json:"icon,omitempty"`
	// Permissions describes all the permissions that could be applied on this data object type.
	Permissions []*DataObjectTypePermission `protobuf:"bytes,5,rep,name=permissions,proto3" json:"permissions,omitempty"`
	// Actions describes all the actions that could be performed on this data object type.
	Actions []*DataObjectTypeAction `protobuf:"bytes,6,rep,name=actions,proto3" json:"actions,omitempty"`
	// Children describes all the data object types that could be a direct child of this data object type.
	Children []string `protobuf:"bytes,7,rep,name=children,proto3" json:"children,omitempty"`
	// contains filtered or unexported fields
}

func (*DataObjectType) Descriptor deprecated added in v0.32.0

func (*DataObjectType) Descriptor() ([]byte, []int)

Deprecated: Use DataObjectType.ProtoReflect.Descriptor instead.

func (*DataObjectType) GetActions added in v0.41.0

func (x *DataObjectType) GetActions() []*DataObjectTypeAction

func (*DataObjectType) GetChildren added in v0.32.0

func (x *DataObjectType) GetChildren() []string

func (*DataObjectType) GetIcon added in v0.32.0

func (x *DataObjectType) GetIcon() string

func (*DataObjectType) GetLabel added in v0.32.0

func (x *DataObjectType) GetLabel() string

func (*DataObjectType) GetName added in v0.32.0

func (x *DataObjectType) GetName() string

func (*DataObjectType) GetPermissions added in v0.32.0

func (x *DataObjectType) GetPermissions() []*DataObjectTypePermission

func (*DataObjectType) GetType added in v0.32.0

func (x *DataObjectType) GetType() string

func (*DataObjectType) ProtoMessage added in v0.32.0

func (*DataObjectType) ProtoMessage()

func (*DataObjectType) ProtoReflect added in v0.32.0

func (x *DataObjectType) ProtoReflect() protoreflect.Message

func (*DataObjectType) Reset added in v0.32.0

func (x *DataObjectType) Reset()

func (*DataObjectType) String added in v0.32.0

func (x *DataObjectType) String() string

type DataObjectTypeAction added in v0.41.0

type DataObjectTypeAction struct {

	// Action name that is defined
	Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
	// GlobalActions defines the corresponding global actions
	GlobalActions []string `protobuf:"bytes,2,rep,name=globalActions,proto3" json:"globalActions,omitempty"`
	// contains filtered or unexported fields
}

NoLinting ToSupport GQL schema (temporarily)

func (*DataObjectTypeAction) Descriptor deprecated added in v0.41.0

func (*DataObjectTypeAction) Descriptor() ([]byte, []int)

Deprecated: Use DataObjectTypeAction.ProtoReflect.Descriptor instead.

func (*DataObjectTypeAction) GetAction added in v0.41.0

func (x *DataObjectTypeAction) GetAction() string

func (*DataObjectTypeAction) GetGlobalActions added in v0.41.0

func (x *DataObjectTypeAction) GetGlobalActions() []string

func (*DataObjectTypeAction) ProtoMessage added in v0.41.0

func (*DataObjectTypeAction) ProtoMessage()

func (*DataObjectTypeAction) ProtoReflect added in v0.41.0

func (x *DataObjectTypeAction) ProtoReflect() protoreflect.Message

func (*DataObjectTypeAction) Reset added in v0.41.0

func (x *DataObjectTypeAction) Reset()

func (*DataObjectTypeAction) String added in v0.41.0

func (x *DataObjectTypeAction) String() string

type DataObjectTypePermission added in v0.15.0

type DataObjectTypePermission struct {

	// Permission defines the name of the permission as used in the datasource
	Permission string `protobuf:"bytes,1,opt,name=permission,proto3" json:"permission,omitempty"`
	// GlobalPermissions is a list of global permissions (read, write, admin) that this permission should be included in. This is used when expanding the global permission into its specific ones for the datasource
	GlobalPermissions []string `protobuf:"bytes,2,rep,name=globalPermissions,proto3" json:"globalPermissions,omitempty"`
	// Description explanations what this permission does (typically from the documentation of the datasource)
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Deprecated: Marked as deprecated in data_source/data_source.proto.
	Action []string `protobuf:"bytes,4,rep,name=action,proto3" json:"action,omitempty"`
	// UsageGlobalPermissions lists the global permissions (read, write, admin) for which this permission should be counted for the usage.
	UsageGlobalPermissions []string `protobuf:"bytes,5,rep,name=usageGlobalPermissions,proto3" json:"usageGlobalPermissions,omitempty"`
	// CannotBeGranted can be set to false if this permission cannot be granted through the Raito Cloud UI.
	CannotBeGranted bool `protobuf:"varint,6,opt,name=cannotBeGranted,proto3" json:"cannotBeGranted,omitempty"`
	// contains filtered or unexported fields
}

NoLinting ToSupport GQL schema (temporarily)

func (*DataObjectTypePermission) Descriptor deprecated added in v0.32.0

func (*DataObjectTypePermission) Descriptor() ([]byte, []int)

Deprecated: Use DataObjectTypePermission.ProtoReflect.Descriptor instead.

func (*DataObjectTypePermission) GetAction deprecated added in v0.32.0

func (x *DataObjectTypePermission) GetAction() []string

Deprecated: Marked as deprecated in data_source/data_source.proto.

func (*DataObjectTypePermission) GetCannotBeGranted added in v0.41.0

func (x *DataObjectTypePermission) GetCannotBeGranted() bool

func (*DataObjectTypePermission) GetDescription added in v0.32.0

func (x *DataObjectTypePermission) GetDescription() string

func (*DataObjectTypePermission) GetGlobalPermissions added in v0.32.0

func (x *DataObjectTypePermission) GetGlobalPermissions() []string

func (*DataObjectTypePermission) GetPermission added in v0.32.0

func (x *DataObjectTypePermission) GetPermission() string

func (*DataObjectTypePermission) GetUsageGlobalPermissions added in v0.41.0

func (x *DataObjectTypePermission) GetUsageGlobalPermissions() []string

func (*DataObjectTypePermission) ProtoMessage added in v0.32.0

func (*DataObjectTypePermission) ProtoMessage()

func (*DataObjectTypePermission) ProtoReflect added in v0.32.0

func (x *DataObjectTypePermission) ProtoReflect() protoreflect.Message

func (*DataObjectTypePermission) Reset added in v0.32.0

func (x *DataObjectTypePermission) Reset()

func (*DataObjectTypePermission) String added in v0.32.0

func (x *DataObjectTypePermission) String() string

type DataSourceDetails added in v0.12.0

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

DataSourceDetails is a helper to abstract this from the plugin and just expose some setters. The import file creator then automatically prepends the import file with this DataObject

func (*DataSourceDetails) SetDescription added in v0.12.0

func (d *DataSourceDetails) SetDescription(desc string)

func (*DataSourceDetails) SetFullname added in v0.12.0

func (d *DataSourceDetails) SetFullname(name string)

func (*DataSourceDetails) SetName added in v0.12.0

func (d *DataSourceDetails) SetName(name string)

type DataSourceFileCreator

type DataSourceFileCreator interface {
	AddDataObjects(dataObjects ...*DataObject) error
	SetDataSourceName(name string)
	SetDataSourceFullname(name string)
	SetDataSourceDescription(desc string)
	Close()
	GetDataObjectCount() int
	GetDataSourceDetails() *DataSourceDetails
}

DataSourceFileCreator describes the interface for easily creating the data object import files to be imported by the Raito CLI. Use GetDataSourceDetails() to access DataSourceDetails setters like SetAvailablePermission()

func NewDataSourceFileCreator

func NewDataSourceFileCreator(config *DataSourceSyncConfig) (DataSourceFileCreator, error)

NewDataSourceFileCreator creates a new DataSourceFileCreator based on the configuration coming from the Raito CLI.

type DataSourceSyncConfig added in v0.15.0

type DataSourceSyncConfig struct {
	ConfigMap          *config.ConfigMap `protobuf:"bytes,1,opt,name=config_map,json=configMap,proto3" json:"config_map,omitempty"`
	TargetFile         string            `protobuf:"bytes,2,opt,name=target_file,json=targetFile,proto3" json:"target_file,omitempty"`
	DataSourceId       string            `protobuf:"bytes,3,opt,name=data_source_id,json=dataSourceId,proto3" json:"data_source_id,omitempty"`
	DataObjectParent   string            `protobuf:"bytes,4,opt,name=data_object_parent,json=dataObjectParent,proto3" json:"data_object_parent,omitempty"`
	DataObjectExcludes []string          `protobuf:"bytes,5,rep,name=data_object_excludes,json=dataObjectExcludes,proto3" json:"data_object_excludes,omitempty"`
	// contains filtered or unexported fields
}

DataSourceSyncConfig represents the configuration that is passed from the CLI to the DataAccessSyncer plugin interface. It contains all the necessary configuration parameters for the plugin to function.

func (*DataSourceSyncConfig) Descriptor deprecated added in v0.32.0

func (*DataSourceSyncConfig) Descriptor() ([]byte, []int)

Deprecated: Use DataSourceSyncConfig.ProtoReflect.Descriptor instead.

func (*DataSourceSyncConfig) GetConfigMap added in v0.32.0

func (x *DataSourceSyncConfig) GetConfigMap() *config.ConfigMap

func (*DataSourceSyncConfig) GetDataObjectExcludes added in v0.54.0

func (x *DataSourceSyncConfig) GetDataObjectExcludes() []string

func (*DataSourceSyncConfig) GetDataObjectParent added in v0.54.0

func (x *DataSourceSyncConfig) GetDataObjectParent() string

func (*DataSourceSyncConfig) GetDataSourceId added in v0.32.0

func (x *DataSourceSyncConfig) GetDataSourceId() string

func (*DataSourceSyncConfig) GetTargetFile added in v0.32.0

func (x *DataSourceSyncConfig) GetTargetFile() string

func (*DataSourceSyncConfig) ProtoMessage added in v0.32.0

func (*DataSourceSyncConfig) ProtoMessage()

func (*DataSourceSyncConfig) ProtoReflect added in v0.32.0

func (x *DataSourceSyncConfig) ProtoReflect() protoreflect.Message

func (*DataSourceSyncConfig) Reset added in v0.32.0

func (x *DataSourceSyncConfig) Reset()

func (*DataSourceSyncConfig) String added in v0.32.0

func (x *DataSourceSyncConfig) String() string

type DataSourceSyncResult added in v0.15.0

type DataSourceSyncResult struct {

	// Deprecated: Marked as deprecated in data_source/data_source.proto.
	Error       *error1.ErrorResult `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
	DataObjects int32               `protobuf:"varint,2,opt,name=data_objects,json=dataObjects,proto3" json:"data_objects,omitempty"`
	// contains filtered or unexported fields
}

DataSourceSyncResult represents the result from the data source sync process. A potential error is also modeled in here so specific errors remain intact when passed over RPC.

func (*DataSourceSyncResult) Descriptor deprecated added in v0.32.0

func (*DataSourceSyncResult) Descriptor() ([]byte, []int)

Deprecated: Use DataSourceSyncResult.ProtoReflect.Descriptor instead.

func (*DataSourceSyncResult) GetDataObjects added in v0.37.0

func (x *DataSourceSyncResult) GetDataObjects() int32

func (*DataSourceSyncResult) GetError deprecated added in v0.32.0

func (x *DataSourceSyncResult) GetError() *error1.ErrorResult

Deprecated: Marked as deprecated in data_source/data_source.proto.

func (*DataSourceSyncResult) ProtoMessage added in v0.32.0

func (*DataSourceSyncResult) ProtoMessage()

func (*DataSourceSyncResult) ProtoReflect added in v0.32.0

func (x *DataSourceSyncResult) ProtoReflect() protoreflect.Message

func (*DataSourceSyncResult) Reset added in v0.32.0

func (x *DataSourceSyncResult) Reset()

func (*DataSourceSyncResult) String added in v0.32.0

func (x *DataSourceSyncResult) String() string

type DataSourceSyncServiceClient added in v0.32.0

type DataSourceSyncServiceClient interface {
	CliVersionInformation(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*version.CliBuildInformation, error)
	SyncDataSource(ctx context.Context, in *DataSourceSyncConfig, opts ...grpc.CallOption) (*DataSourceSyncResult, error)
	GetDataSourceMetaData(ctx context.Context, in *config.ConfigMap, opts ...grpc.CallOption) (*MetaData, error)
}

DataSourceSyncServiceClient is the client API for DataSourceSyncService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewDataSourceSyncServiceClient added in v0.32.0

func NewDataSourceSyncServiceClient(cc grpc.ClientConnInterface) DataSourceSyncServiceClient

type DataSourceSyncServiceServer added in v0.32.0

type DataSourceSyncServiceServer interface {
	CliVersionInformation(context.Context, *emptypb.Empty) (*version.CliBuildInformation, error)
	SyncDataSource(context.Context, *DataSourceSyncConfig) (*DataSourceSyncResult, error)
	GetDataSourceMetaData(context.Context, *config.ConfigMap) (*MetaData, error)
	// contains filtered or unexported methods
}

DataSourceSyncServiceServer is the server API for DataSourceSyncService service. All implementations must embed UnimplementedDataSourceSyncServiceServer for forward compatibility

type DataSourceSyncer added in v0.15.0

type DataSourceSyncer interface {
	version.CliVersionHandler

	SyncDataSource(ctx context.Context, config *DataSourceSyncConfig) (*DataSourceSyncResult, error)
	GetDataSourceMetaData(ctx context.Context, config *config.ConfigMap) (*MetaData, error)
}

DataSourceSyncer interface needs to be implemented by any plugin that wants to import data objects into a Raito data source.

type DataSourceSyncerPlugin added in v0.15.0

type DataSourceSyncerPlugin struct {
	plugin.Plugin

	Impl DataSourceSyncer
}

DataSourceSyncerPlugin is used on the server (CLI) and client (plugin) side to integrate with the plugin system. A plugin should not be using this directly, but instead depend on the cli-plugin-base library to register the plugins.

func (DataSourceSyncerPlugin) GRPCClient added in v0.32.0

func (DataSourceSyncerPlugin) GRPCClient(ctx context.Context, broker *plugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error)

func (*DataSourceSyncerPlugin) GRPCServer added in v0.32.0

func (p *DataSourceSyncerPlugin) GRPCServer(broker *plugin.GRPCBroker, s *grpc.Server) error

type DataSourceSyncerVersionHandler added in v0.33.0

type DataSourceSyncerVersionHandler struct {
}

func (*DataSourceSyncerVersionHandler) CliVersionInformation added in v0.33.0

type FilterMetadata added in v0.61.1

type FilterMetadata struct {
	FilterOverridePermissions []string `protobuf:"bytes,1,rep,name=filterOverridePermissions,proto3" json:"filterOverridePermissions,omitempty"`
	// contains filtered or unexported fields
}

func (*FilterMetadata) Descriptor deprecated added in v0.61.1

func (*FilterMetadata) Descriptor() ([]byte, []int)

Deprecated: Use FilterMetadata.ProtoReflect.Descriptor instead.

func (*FilterMetadata) GetFilterOverridePermissions added in v0.61.1

func (x *FilterMetadata) GetFilterOverridePermissions() []string

func (*FilterMetadata) ProtoMessage added in v0.61.1

func (*FilterMetadata) ProtoMessage()

func (*FilterMetadata) ProtoReflect added in v0.61.1

func (x *FilterMetadata) ProtoReflect() protoreflect.Message

func (*FilterMetadata) Reset added in v0.61.1

func (x *FilterMetadata) Reset()

func (*FilterMetadata) String added in v0.61.1

func (x *FilterMetadata) String() string

type GlobalPermission added in v0.31.0

type GlobalPermission string

type GlobalPermissionSet added in v0.31.0

type GlobalPermissionSet map[GlobalPermission]struct{}

func AdminGlobalPermission added in v0.41.0

func AdminGlobalPermission() GlobalPermissionSet

WriteGlobalPermission Get all rights to (over)write data

func CreateGlobalPermissionSet added in v0.31.0

func CreateGlobalPermissionSet(permissions ...GlobalPermission) GlobalPermissionSet

func JoinGlobalPermissionsSets added in v0.31.0

func JoinGlobalPermissionsSets(sets ...GlobalPermissionSet) GlobalPermissionSet

func ReadGlobalPermission added in v0.31.0

func ReadGlobalPermission() GlobalPermissionSet

ReadGlobalPermission Get access to read the data

func WriteGlobalPermission added in v0.31.0

func WriteGlobalPermission() GlobalPermissionSet

WriteGlobalPermission Get all rights to (over)write data

func (GlobalPermissionSet) Append added in v0.31.0

func (s GlobalPermissionSet) Append(permission ...GlobalPermission)

func (GlobalPermissionSet) MarshalJSON added in v0.31.0

func (s GlobalPermissionSet) MarshalJSON() ([]byte, error)

func (GlobalPermissionSet) StringValues added in v0.32.0

func (s GlobalPermissionSet) StringValues() []string

func (*GlobalPermissionSet) UnmarshalJSON added in v0.31.0

func (s *GlobalPermissionSet) UnmarshalJSON(data []byte) error

func (GlobalPermissionSet) Values added in v0.31.0

type MaskingMetadata added in v0.55.0

type MaskingMetadata struct {
	MaskTypes               []*MaskingType `protobuf:"bytes,1,rep,name=maskTypes,proto3" json:"maskTypes,omitempty"`
	DefaultMaskExternalName string         `protobuf:"bytes,2,opt,name=defaultMaskExternalName,proto3" json:"defaultMaskExternalName,omitempty"`
	MaskOverridePermissions []string       `protobuf:"bytes,3,rep,name=maskOverridePermissions,proto3" json:"maskOverridePermissions,omitempty"`
	// contains filtered or unexported fields
}

func (*MaskingMetadata) Descriptor deprecated added in v0.55.0

func (*MaskingMetadata) Descriptor() ([]byte, []int)

Deprecated: Use MaskingMetadata.ProtoReflect.Descriptor instead.

func (*MaskingMetadata) GetDefaultMaskExternalName added in v0.55.0

func (x *MaskingMetadata) GetDefaultMaskExternalName() string

func (*MaskingMetadata) GetMaskOverridePermissions added in v0.56.0

func (x *MaskingMetadata) GetMaskOverridePermissions() []string

func (*MaskingMetadata) GetMaskTypes added in v0.55.0

func (x *MaskingMetadata) GetMaskTypes() []*MaskingType

func (*MaskingMetadata) ProtoMessage added in v0.55.0

func (*MaskingMetadata) ProtoMessage()

func (*MaskingMetadata) ProtoReflect added in v0.55.0

func (x *MaskingMetadata) ProtoReflect() protoreflect.Message

func (*MaskingMetadata) Reset added in v0.55.0

func (x *MaskingMetadata) Reset()

func (*MaskingMetadata) String added in v0.55.0

func (x *MaskingMetadata) String() string

type MaskingType added in v0.55.0

type MaskingType struct {
	DisplayName string   `protobuf:"bytes,1,opt,name=displayName,proto3" json:"displayName,omitempty"`
	ExternalId  string   `protobuf:"bytes,2,opt,name=externalId,proto3" json:"externalId,omitempty"`
	Description string   `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	DataTypes   []string `protobuf:"bytes,4,rep,name=dataTypes,proto3" json:"dataTypes,omitempty"`
	// contains filtered or unexported fields
}

func (*MaskingType) Descriptor deprecated added in v0.55.0

func (*MaskingType) Descriptor() ([]byte, []int)

Deprecated: Use MaskingType.ProtoReflect.Descriptor instead.

func (*MaskingType) GetDataTypes added in v0.55.0

func (x *MaskingType) GetDataTypes() []string

func (*MaskingType) GetDescription added in v0.55.0

func (x *MaskingType) GetDescription() string

func (*MaskingType) GetDisplayName added in v0.55.0

func (x *MaskingType) GetDisplayName() string

func (*MaskingType) GetExternalId added in v0.55.0

func (x *MaskingType) GetExternalId() string

func (*MaskingType) ProtoMessage added in v0.55.0

func (*MaskingType) ProtoMessage()

func (*MaskingType) ProtoReflect added in v0.55.0

func (x *MaskingType) ProtoReflect() protoreflect.Message

func (*MaskingType) Reset added in v0.55.0

func (x *MaskingType) Reset()

func (*MaskingType) String added in v0.55.0

func (x *MaskingType) String() string

type MetaData added in v0.15.0

type MetaData struct {

	// DataObjectTypes describes the data object types that are available in the data source
	DataObjectTypes []*DataObjectType `protobuf:"bytes,1,rep,name=dataObjectTypes,proto3" json:"dataObjectTypes,omitempty"`
	// SupportedFeatures is a list of features supported by the data source
	// Currently supported features: columnMasking, rowFiltering, columnFiltering
	SupportedFeatures []string `protobuf:"bytes,2,rep,name=supportedFeatures,proto3" json:"supportedFeatures,omitempty"`
	// Type indicates the type of data source (Snowflake, BigQuery, etc.).
	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
	// Icon the name or base64 encoded version of the icon to use for this data source.
	Icon string `protobuf:"bytes,4,opt,name=icon,proto3" json:"icon,omitempty"`
	// UsageMetaInfo describes the usage metadata for this data source.
	UsageMetaInfo *UsageMetaInput `protobuf:"bytes,5,opt,name=usageMetaInfo,proto3" json:"usageMetaInfo,omitempty"`
	// AccessProviderTypes describes the access provider types that are available in the data source
	AccessProviderTypes []*AccessProviderType `protobuf:"bytes,6,rep,name=accessProviderTypes,proto3" json:"accessProviderTypes,omitempty"`
	// SupportsApInheritance indicates whether the data source supports AP inheritance
	SupportsApInheritance bool `protobuf:"varint,7,opt,name=supportsApInheritance,proto3" json:"supportsApInheritance,omitempty"`
	// maskingMetadata provides addition information about available column masks
	MaskingMetadata *MaskingMetadata `protobuf:"bytes,8,opt,name=maskingMetadata,proto3" json:"maskingMetadata,omitempty"`
	// filterMetadata provides addition information about available row filters
	FilterMetadata *FilterMetadata `protobuf:"bytes,9,opt,name=filterMetadata,proto3" json:"filterMetadata,omitempty"`
	// contains filtered or unexported fields
}

NoLinting ToSupport GQL schema (temporarily)

func (*MetaData) Descriptor deprecated added in v0.32.0

func (*MetaData) Descriptor() ([]byte, []int)

Deprecated: Use MetaData.ProtoReflect.Descriptor instead.

func (*MetaData) GetAccessProviderTypes added in v0.44.0

func (x *MetaData) GetAccessProviderTypes() []*AccessProviderType

func (*MetaData) GetDataObjectTypes added in v0.32.0

func (x *MetaData) GetDataObjectTypes() []*DataObjectType

func (*MetaData) GetFilterMetadata added in v0.61.1

func (x *MetaData) GetFilterMetadata() *FilterMetadata

func (*MetaData) GetIcon added in v0.32.0

func (x *MetaData) GetIcon() string

func (*MetaData) GetMaskingMetadata added in v0.55.0

func (x *MetaData) GetMaskingMetadata() *MaskingMetadata

func (*MetaData) GetSupportedFeatures added in v0.32.0

func (x *MetaData) GetSupportedFeatures() []string

func (*MetaData) GetSupportsApInheritance added in v0.47.0

func (x *MetaData) GetSupportsApInheritance() bool

func (*MetaData) GetType added in v0.32.0

func (x *MetaData) GetType() string

func (*MetaData) GetUsageMetaInfo added in v0.41.0

func (x *MetaData) GetUsageMetaInfo() *UsageMetaInput

func (*MetaData) ProtoMessage added in v0.32.0

func (*MetaData) ProtoMessage()

func (*MetaData) ProtoReflect added in v0.32.0

func (x *MetaData) ProtoReflect() protoreflect.Message

func (*MetaData) Reset added in v0.32.0

func (x *MetaData) Reset()

func (*MetaData) String added in v0.32.0

func (x *MetaData) String() string

type OwnersInput added in v0.56.5

type OwnersInput struct {
	Users []string `yaml:"users" json:"users"`
}

type UnimplementedDataSourceSyncServiceServer added in v0.32.0

type UnimplementedDataSourceSyncServiceServer struct {
}

UnimplementedDataSourceSyncServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedDataSourceSyncServiceServer) CliVersionInformation added in v0.33.0

func (UnimplementedDataSourceSyncServiceServer) GetDataSourceMetaData added in v0.32.0

func (UnimplementedDataSourceSyncServiceServer) SyncDataSource added in v0.32.0

type UnsafeDataSourceSyncServiceServer added in v0.32.0

type UnsafeDataSourceSyncServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeDataSourceSyncServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to DataSourceSyncServiceServer will result in compilation errors.

type UsageMetaInput added in v0.41.0

type UsageMetaInput struct {
	DefaultLevel string                  `protobuf:"bytes,1,opt,name=defaultLevel,proto3" json:"defaultLevel,omitempty"`
	Levels       []*UsageMetaInputDetail `protobuf:"bytes,2,rep,name=levels,proto3" json:"levels,omitempty"`
	// contains filtered or unexported fields
}

func (*UsageMetaInput) Descriptor deprecated added in v0.41.0

func (*UsageMetaInput) Descriptor() ([]byte, []int)

Deprecated: Use UsageMetaInput.ProtoReflect.Descriptor instead.

func (*UsageMetaInput) GetDefaultLevel added in v0.41.0

func (x *UsageMetaInput) GetDefaultLevel() string

func (*UsageMetaInput) GetLevels added in v0.41.0

func (x *UsageMetaInput) GetLevels() []*UsageMetaInputDetail

func (*UsageMetaInput) ProtoMessage added in v0.41.0

func (*UsageMetaInput) ProtoMessage()

func (*UsageMetaInput) ProtoReflect added in v0.41.0

func (x *UsageMetaInput) ProtoReflect() protoreflect.Message

func (*UsageMetaInput) Reset added in v0.41.0

func (x *UsageMetaInput) Reset()

func (*UsageMetaInput) String added in v0.41.0

func (x *UsageMetaInput) String() string

type UsageMetaInputDetail added in v0.41.0

type UsageMetaInputDetail struct {
	Name            string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	DataObjectTypes []string `protobuf:"bytes,2,rep,name=dataObjectTypes,proto3" json:"dataObjectTypes,omitempty"`
	// contains filtered or unexported fields
}

func (*UsageMetaInputDetail) Descriptor deprecated added in v0.41.0

func (*UsageMetaInputDetail) Descriptor() ([]byte, []int)

Deprecated: Use UsageMetaInputDetail.ProtoReflect.Descriptor instead.

func (*UsageMetaInputDetail) GetDataObjectTypes added in v0.41.0

func (x *UsageMetaInputDetail) GetDataObjectTypes() []string

func (*UsageMetaInputDetail) GetName added in v0.41.0

func (x *UsageMetaInputDetail) GetName() string

func (*UsageMetaInputDetail) ProtoMessage added in v0.41.0

func (*UsageMetaInputDetail) ProtoMessage()

func (*UsageMetaInputDetail) ProtoReflect added in v0.41.0

func (x *UsageMetaInputDetail) ProtoReflect() protoreflect.Message

func (*UsageMetaInputDetail) Reset added in v0.41.0

func (x *UsageMetaInputDetail) Reset()

func (*UsageMetaInputDetail) String added in v0.41.0

func (x *UsageMetaInputDetail) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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