api

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Jul 26, 2021 License: MPL-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const CustomPolicyDefaultPriority int = 100
View Source
const DataAccessPermissionApiPrefix = "/api/v1/data-access-permission"
View Source
const DataAccessSelfServiceApiPrefix = "/api/v1/data-access-self-service"
View Source
const DataPolicyApiPrefix = "/api/v1/data-policy"
View Source
const DataPolicyPermissionsSuffix = "permissions"
View Source
const DataPolicyRulesSuffix = "rules"
View Source
const DataPolicySecurityPoliciesSuffix = "security-policies"
View Source
const DataSetApiPrefix = "/api/v1/dataset"
View Source
const DirectoryGroupApiPrefix = "/api/v1/directory/group"
View Source
const HostURL string = "https://app.satoricyber.com"

HostURL - Default Satori URL

View Source
const UsersApiPrefix = "/api/v1/users"

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessControl

type AccessControl struct {
	AccessControlEnabled bool `json:"permissionsEnabled"`
	UserRequestsEnabled  bool `json:"accessRequestsEnabled"`
	SelfServiceEnabled   bool `json:"selfServiceAccessEnabled"`
}

type AuthResponse

type AuthResponse struct {
	Token string `json:"token"`
}

type AuthStruct

type AuthStruct struct {
	Username string `json:"serviceAccountId"`
	Password string `json:"serviceAccountKey"`
}

type Client

type Client struct {
	HostURL    string
	HTTPClient *http.Client
	Token      string
	AccountId  string
	UserAgent  string
}

func NewClient

func NewClient(host, userAgent, accountId, username, password *string, verifyTls bool) (*Client, error)

func (*Client) CreateDataAccessPermission

func (c *Client) CreateDataAccessPermission(parentId string, input *DataAccessPermission) (*DataAccessPermission, error)

func (*Client) CreateDataAccessSelfServiceRule

func (c *Client) CreateDataAccessSelfServiceRule(parentId string, input *DataAccessSelfServiceRule) (*DataAccessSelfServiceRule, error)

func (*Client) CreateDataSet

func (c *Client) CreateDataSet(input *DataSet) (*DataSetOutput, error)

func (*Client) CreateDirectoryGroup

func (c *Client) CreateDirectoryGroup(input *DirectoryGroup) (*DirectoryGroup, error)

func (*Client) DeleteDataAccessPermission

func (c *Client) DeleteDataAccessPermission(id string) error

func (*Client) DeleteDataAccessSelfServiceRule

func (c *Client) DeleteDataAccessSelfServiceRule(id string) error

func (*Client) DeleteDataSet

func (c *Client) DeleteDataSet(id string) error

func (*Client) DeleteDirectoryGroup

func (c *Client) DeleteDirectoryGroup(id string) error

func (*Client) GetAccessControl

func (c *Client) GetAccessControl(id string) (*AccessControl, error)

func (*Client) GetCustomPolicy

func (c *Client) GetCustomPolicy(id string) (*CustomPolicy, error)

func (*Client) GetDataAccessPermission

func (c *Client) GetDataAccessPermission(id string) (*DataAccessPermission, error, int)

func (*Client) GetDataAccessSelfServiceRule

func (c *Client) GetDataAccessSelfServiceRule(id string) (*DataAccessSelfServiceRule, error, int)

func (*Client) GetDataSet

func (c *Client) GetDataSet(id string) (*DataSetOutput, error, int)

func (*Client) GetDirectoryGroup

func (c *Client) GetDirectoryGroup(id string) (*DirectoryGroup, error, int)

func (*Client) GetSecurityPolicies

func (c *Client) GetSecurityPolicies(id string) (*SecurityPolicies, error)

func (*Client) QueryUsers

func (c *Client) QueryUsers(search *string) ([]User, error)

func (*Client) UpdateAccessControl

func (c *Client) UpdateAccessControl(id string, input *AccessControl) (*AccessControl, error)

func (*Client) UpdateCustomPolicy

func (c *Client) UpdateCustomPolicy(id string, input *CustomPolicy) (*CustomPolicy, error)

func (*Client) UpdateDataAccessPermission

func (c *Client) UpdateDataAccessPermission(id string, input *DataAccessPermission) (*DataAccessPermission, error)

func (*Client) UpdateDataAccessPermissionSuspendedStatus

func (c *Client) UpdateDataAccessPermissionSuspendedStatus(id string, suspend bool) (*DataAccessPermission, error)

func (*Client) UpdateDataAccessSelfServiceRule

func (c *Client) UpdateDataAccessSelfServiceRule(id string, input *DataAccessSelfServiceRule) (*DataAccessSelfServiceRule, error)

func (*Client) UpdateDataSet

func (c *Client) UpdateDataSet(id string, input *DataSet) (*DataSetOutput, error)

func (*Client) UpdateDirectoryGroup

func (c *Client) UpdateDirectoryGroup(id string, input *DirectoryGroup) (*DirectoryGroup, error)

func (*Client) UpdateSecurityPolicies

func (c *Client) UpdateSecurityPolicies(id string, input *SecurityPolicies) (*SecurityPolicies, error)

type CustomPolicy

type CustomPolicy struct {
	Priority  int    `json:"priority"`
	RulesYaml string `json:"rulesYaml"`
	TagsYaml  string `json:"tagsYaml"`
}

type DataAccessIdentity

type DataAccessIdentity struct {
	IdentityType string `json:"identityType"`
	Identity     string `json:"identity"`
}

type DataAccessPermission

type DataAccessPermission struct {
	Id               *string                   `json:"id,omitempty"`
	ParentId         *string                   `json:"parentId,omitempty"`
	Suspended        *bool                     `json:"suspended,omitempty"`
	Identity         *DataAccessIdentity       `json:"identity,omitempty"`
	AccessLevel      string                    `json:"accessLevel"`
	TimeLimit        DataAccessTimeLimit       `json:"timeLimit"`
	UnusedTimeLimit  DataAccessUnusedTimeLimit `json:"unusedTimeLimit"`
	SecurityPolicies *[]string                 `json:"securityPolicyIds,omitempty"`
}

type DataAccessSelfServiceRule

type DataAccessSelfServiceRule struct {
	Id               *string                        `json:"id,omitempty"`
	ParentId         *string                        `json:"parentId,omitempty"`
	Identity         *DataAccessIdentity            `json:"identity,omitempty"`
	AccessLevel      string                         `json:"accessLevel"`
	TimeLimit        DataAccessSelfServiceTimeLimit `json:"timeLimit"`
	UnusedTimeLimit  DataAccessUnusedTimeLimit      `json:"unusedTimeLimit"`
	SecurityPolicies *[]string                      `json:"securityPolicyIds,omitempty"`
}

type DataAccessSelfServiceTimeLimit

type DataAccessSelfServiceTimeLimit struct {
	ShouldExpire bool   `json:"shouldExpire"`
	UnitType     string `json:"unitType"`
	Units        int    `json:"units"`
}

type DataAccessTimeLimit

type DataAccessTimeLimit struct {
	Expiration   *interface{} `json:"expiration,omitempty"`
	ShouldExpire bool         `json:"shouldExpire"`
}

type DataAccessUnusedTimeLimit

type DataAccessUnusedTimeLimit struct {
	UnusedDaysUntilRevocation int  `json:"unusedDaysUntilRevocation"`
	ShouldRevoke              bool `json:"shouldRevoke"`
}

type DataSet

type DataSet struct {
	Name             string            `json:"name"`
	Description      string            `json:"description"`
	OwnersIds        []string          `json:"ownersIds"`
	IncludeLocations []DataSetLocation `json:"includeLocations"`
	ExcludeLocations []DataSetLocation `json:"excludeLocations"`
}

type DataSetGenericLocation

type DataSetGenericLocation struct {
	Type   string  `json:"type"`
	Db     *string `json:"db,omitempty"`
	Schema *string `json:"schema,omitempty"`
	Table  *string `json:"table,omitempty"`
}

type DataSetLocation

type DataSetLocation struct {
	DataStoreId string                  `json:"dataStoreId"`
	Location    *DataSetGenericLocation `json:"location,omitempty"`
}

type DataSetOutput

type DataSetOutput struct {
	Id               string            `json:"id"`
	Name             string            `json:"name"`
	Description      string            `json:"description"`
	OwnersIds        []string          `json:"ownersIds"`
	IncludeLocations []DataSetLocation `json:"includeLocations"`
	ExcludeLocations []DataSetLocation `json:"excludeLocations"`
	DataPolicyId     string            `json:"dataPolicyId"`
}

type DirectoryGroup

type DirectoryGroup struct {
	Id          *string                `json:"id,omitempty"`
	Name        string                 `json:"name"`
	Description *string                `json:"description,omitempty"`
	Members     []DirectoryGroupMember `json:"members"`
}

type DirectoryGroupMember

type DirectoryGroupMember struct {
	Type     string  `json:"type"`
	Name     *string `json:"name,omitempty"`
	DsType   *string `json:"dsType,omitempty"`
	Provider *string `json:"provider,omitempty"`
	GroupId  *string `json:"id,omitempty"`
}

type SecurityPolicies

type SecurityPolicies struct {
	Ids []string `json:"defaultSecurityPolicyIds"`
}

type User

type User struct {
	Id    string `json:"id"`
	Email string `json:"email"`
}

Jump to

Keyboard shortcuts

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