Documentation
¶
Index ¶
- func RunEnum(gitlabUrl, gitlabApiToken string, minAccessLevel int)
- func RunEnumWithOptions(gitlabUrl, gitlabApiToken string, minAccessLevel int, opts ExportOptions)
- func WriteHTMLReport(result *EnumResult, outputPath string) error
- type EnumResult
- type ExportOptions
- type SelfToken
- type TokenAssociationGroup
- type TokenAssociationMember
- type TokenAssociationProject
- type TokenAssociationProjectAccess
- type TokenAssociationProjectNamespace
- type TokenAssociations
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RunEnumWithOptions ¶ added in v0.67.0
func RunEnumWithOptions(gitlabUrl, gitlabApiToken string, minAccessLevel int, opts ExportOptions)
RunEnumWithOptions performs enumeration and optionally writes export artifacts.
func WriteHTMLReport ¶ added in v0.67.0
func WriteHTMLReport(result *EnumResult, outputPath string) error
WriteHTMLReport writes a standalone HTML report for the current enum result.
Types ¶
type EnumResult ¶ added in v0.67.0
type EnumResult struct {
GeneratedAt time.Time `json:"generated_at"`
GitLabURL string `json:"gitlab_url"`
MinAccessLevel int `json:"min_access_level"`
UsersEnumerated bool `json:"users_enumerated"`
User *gitlab.User `json:"user"`
Users []*gitlab.User `json:"users"`
Token *SelfToken `json:"token"`
Associations *TokenAssociations `json:"associations"`
}
EnumResult contains collected user, token and access association data.
type ExportOptions ¶ added in v0.67.0
ExportOptions controls optional enum artifact generation.
type SelfToken ¶
type SelfToken struct {
ID int `json:"id"`
Name string `json:"name"`
Revoked bool `json:"revoked"`
CreatedAt time.Time `json:"created_at"`
Description string `json:"description"`
Scopes []string `json:"scopes"`
UserID int `json:"user_id"`
LastUsedAt time.Time `json:"last_used_at"`
Active bool `json:"active"`
ExpiresAt string `json:"expires_at"`
LastUsedIps []string `json:"last_used_ips"`
}
type TokenAssociationGroup ¶ added in v0.67.0
type TokenAssociationGroup struct {
ID int `json:"id"`
WebURL string `json:"web_url"`
Name string `json:"name"`
ParentID interface{} `json:"parent_id"`
OrganizationID int `json:"organization_id"`
AccessLevels int `json:"access_levels"`
Visibility string `json:"visibility"`
Members []TokenAssociationMember `json:"members,omitempty"`
MembersEnumerated bool `json:"members_enumerated,omitempty"`
MembersAccessible bool `json:"members_accessible,omitempty"`
MembersError string `json:"members_error,omitempty"`
MemberCount int `json:"member_count,omitempty"`
}
type TokenAssociationMember ¶ added in v0.67.0
type TokenAssociationProject ¶ added in v0.67.0
type TokenAssociationProject struct {
ID int `json:"id"`
Description string `json:"description"`
Name string `json:"name"`
NameWithNamespace string `json:"name_with_namespace"`
Path string `json:"path"`
PathWithNamespace string `json:"path_with_namespace"`
CreatedAt time.Time `json:"created_at"`
AccessLevels TokenAssociationProjectAccess `json:"access_levels"`
Visibility string `json:"visibility"`
WebURL string `json:"web_url"`
Namespace TokenAssociationProjectNamespace `json:"namespace"`
Members []TokenAssociationMember `json:"members,omitempty"`
MembersEnumerated bool `json:"members_enumerated,omitempty"`
MembersAccessible bool `json:"members_accessible,omitempty"`
MembersError string `json:"members_error,omitempty"`
MemberCount int `json:"member_count,omitempty"`
}
type TokenAssociationProjectAccess ¶ added in v0.67.0
type TokenAssociationProjectNamespace ¶ added in v0.67.0
type TokenAssociations ¶
type TokenAssociations struct {
Groups []TokenAssociationGroup `json:"groups"`
Projects []TokenAssociationProject `json:"projects"`
}
Click to show internal directories.
Click to hide internal directories.