audit

package
v1.0.0-b5 Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AuditActionCategoryValues = auditActionCategoryValuesType{

	Unknown: "unknown",

	Modify: "modify",

	Remove: "remove",

	Create: "create",

	Access: "access",
}
View Source
var ResourceAreaId, _ = uuid.Parse("94ff054d-5ee1-413d-9341-3f4a7827de2e")

Functions

This section is empty.

Types

type AuditActionCategory

type AuditActionCategory string

Defines all the categories an AuditAction can be

type AuditLogQueryResult

type AuditLogQueryResult struct {
	// The continuation token to pass to get the next set of results
	ContinuationToken *string `json:"continuationToken,omitempty"`
	// The list of audit log entries
	DecoratedAuditLogEntries *[]DecoratedAuditLogEntry `json:"decoratedAuditLogEntries,omitempty"`
	// True when there are more matching results to be fetched, false otherwise.
	HasMore *bool `json:"hasMore,omitempty"`
}

The object returned when the audit log is queried. It contains the log and the information needed to query more audit entries.

type Client

type Client interface {
	// [Preview API] Downloads audit log entries.
	DownloadLog(context.Context, DownloadLogArgs) (io.ReadCloser, error)
	// [Preview API] Queries audit log entries
	QueryLog(context.Context, QueryLogArgs) (*AuditLogQueryResult, error)
}

func NewClient

func NewClient(ctx context.Context, connection *azuredevops.Connection) (Client, error)

type ClientImpl

type ClientImpl struct {
	Client azuredevops.Client
}

func (*ClientImpl) DownloadLog

func (client *ClientImpl) DownloadLog(ctx context.Context, args DownloadLogArgs) (io.ReadCloser, error)

[Preview API] Downloads audit log entries.

func (*ClientImpl) QueryLog

func (client *ClientImpl) QueryLog(ctx context.Context, args QueryLogArgs) (*AuditLogQueryResult, error)

[Preview API] Queries audit log entries

type DecoratedAuditLogEntry

type DecoratedAuditLogEntry struct {
	// The action if for the event, i.e Git.CreateRepo, Project.RenameProject
	ActionId *string `json:"actionId,omitempty"`
	// ActivityId
	ActivityId *uuid.UUID `json:"activityId,omitempty"`
	// The Actor's CUID
	ActorCUID *uuid.UUID `json:"actorCUID,omitempty"`
	// DisplayName of the user who initiated the action
	ActorDisplayName *string `json:"actorDisplayName,omitempty"`
	// URL of Actor's Profile image
	ActorImageUrl *string `json:"actorImageUrl,omitempty"`
	// The Actor's User Id
	ActorUserId *uuid.UUID `json:"actorUserId,omitempty"`
	// Area of Azure DevOps the action occurred
	Area *string `json:"area,omitempty"`
	// Type of authentication used by the actor
	AuthenticationMechanism *string `json:"authenticationMechanism,omitempty"`
	// Type of action executed
	Category *AuditActionCategory `json:"category,omitempty"`
	// DisplayName of the category
	CategoryDisplayName *string `json:"categoryDisplayName,omitempty"`
	// This allows related audit entries to be grouped together. Generally this occurs when a single action causes a cascade of audit entries. For example, project creation.
	CorrelationId *uuid.UUID `json:"correlationId,omitempty"`
	// External data such as CUIDs, item names, etc.
	Data *map[string]interface{} `json:"data,omitempty"`
	// Decorated details
	Details *string `json:"details,omitempty"`
	// EventId - Needs to be unique per service
	Id *string `json:"id,omitempty"`
	// IP Address where the event was originated
	IpAddress *string `json:"ipAddress,omitempty"`
	// DisplayName of the scope
	ScopeDisplayName *string `json:"scopeDisplayName,omitempty"`
	// The organization or project Id
	ScopeId *uuid.UUID `json:"scopeId,omitempty"`
	// The type of the scope, Organization or Project
	ScopeType *string `json:"scopeType,omitempty"`
	// The time when the event occurred in UTC
	Timestamp *azuredevops.Time `json:"timestamp,omitempty"`
	// The user agent from the request
	UserAgent *string `json:"userAgent,omitempty"`
}

type DownloadLogArgs

type DownloadLogArgs struct {
	// (required) File format for download. Can be "json" or "csv".
	Format *string
	// (optional) Start time of download window. Optional
	StartTime *azuredevops.Time
	// (optional) End time of download window. Optional
	EndTime *azuredevops.Time
}

Arguments for the DownloadLog function

type QueryLogArgs

type QueryLogArgs struct {
	// (optional) Start time of download window. Optional
	StartTime *azuredevops.Time
	// (optional) End time of download window. Optional
	EndTime *azuredevops.Time
	// (optional) Max number of results to return. Optional
	BatchSize *int
	// (optional) Token used for returning next set of results from previous query. Optional
	ContinuationToken *string
	// (optional) Skips aggregating events and leaves them as individual entries instead. By default events are aggregated. Event types that are aggregated: AuditLog.AccessLog.
	SkipAggregation *bool
}

Arguments for the QueryLog function

Jump to

Keyboard shortcuts

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