v1

package
v0.1.201 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2026 License: Apache-2.0 Imports: 33 Imported by: 4

Documentation

Overview

Package v1 provides gRPC client and server definitions for IAM interactions with the Chainguard Console.

This package contains protocol buffer definitions and generated Go code for managing identity and access management resources including groups, roles, role bindings, identities, and identity providers.

Overview

The IAM v1 package provides the following key features:

  • Unified client interface for all IAM services via the Clients interface
  • gRPC client implementations for each IAM resource type
  • Protocol buffer message types for requests, responses, and resources
  • gRPC-Gateway support for REST API access
  • Event types for IAM resource changes

Basic Usage

Create an IAM client using NewClients with the IAM service URL and auth token:

clients, err := v1.NewClients(ctx, "https://iam.example.com", token)
if err != nil {
	return fmt.Errorf("failed to create IAM clients: %w", err)
}
defer clients.Close()

// List groups
groups, err := clients.Groups().List(ctx, &v1.GroupFilter{})
if err != nil {
	return fmt.Errorf("failed to list groups: %w", err)
}

for _, group := range groups.Items {
	fmt.Printf("Group: %s (%s)\n", group.Name, group.Id)
}

Available Service Clients

The Clients interface provides access to the following service clients:

  • Groups: Manage organizational groups
  • GroupInvites: Handle group membership invitations
  • Roles: Define and manage roles with specific capabilities
  • RoleBindings: Assign roles to identities within groups
  • Identities: Manage user and service account identities
  • IdentityProviders: Configure external identity providers
  • AccountAssociations: Link groups to external accounts
  • Subscriptions: Subscribe to IAM event notifications

Using an Existing Connection

If you already have a gRPC connection, use NewClientsFromConnection:

conn, err := grpc.NewClient(target, opts...)
if err != nil {
	return err
}

// Create IAM clients from existing connection
// Note: The caller is responsible for closing the connection
clients := v1.NewClientsFromConnection(conn)

// Use the clients
roles, err := clients.Roles().List(ctx, &v1.RoleFilter{})

Working with Groups

Groups are the primary organizational unit for access control:

// Create a new group
group, err := clients.Groups().Create(ctx, &v1.CreateGroupRequest{
	Parent: parentGroupID,
	Group: &v1.Group{
		Name:        "engineering",
		Description: "Engineering team",
	},
})

// List groups with filtering
groups, err := clients.Groups().List(ctx, &v1.GroupFilter{
	Parent: parentGroupID,
})

Managing Role Bindings

Role bindings associate identities with roles within a group:

// Create a role binding
binding, err := clients.RoleBindings().Create(ctx, &v1.CreateRoleBindingRequest{
	Parent: groupID,
	RoleBinding: &v1.RoleBinding{
		Identity: identityID,
		Role:     roleID,
	},
})

// List role bindings for a group
bindings, err := clients.RoleBindings().List(ctx, &v1.RoleBindingFilter{
	Group: groupID,
})

Testing

For unit testing, use the mock implementations in the test subpackage:

import "chainguard.dev/sdk/proto/platform/iam/v1/test"

mock := &test.MockIAMClient{
	GroupsClient: test.MockGroupsClient{
		OnList: []test.GroupOnList{{
			Given: &v1.GroupFilter{},
			List: &v1.GroupList{
				Items: []*v1.Group{{
					Id:   "group-123",
					Name: "test-group",
				}},
			},
		}},
	},
}

// Use mock in place of real client
service := NewService(mock)

Thread Safety

All client methods are safe for concurrent use. The underlying gRPC connection handles concurrent requests appropriately.

Example (GroupOperations)

Example_groupOperations demonstrates working with groups.

package main

import (
	"fmt"

	iam "chainguard.dev/sdk/proto/platform/iam/v1"
	"chainguard.dev/sdk/proto/platform/iam/v1/test"
)

func main() {
	// Create a mock client with group data
	mock := &test.MockIAMClient{
		GroupsClient: test.MockGroupsClient{
			OnList: []test.GroupOnList{{
				Given: &iam.GroupFilter{},
				List: &iam.GroupList{
					Items: []*iam.Group{{
						Id:          "group-1",
						Name:        "engineering",
						Description: "Engineering team",
					}, {
						Id:          "group-2",
						Name:        "security",
						Description: "Security team",
					}},
				},
			}},
		},
	}

	// List all groups
	fmt.Printf("Available service clients:\n")
	fmt.Printf("  - Groups: %v\n", mock.Groups() != nil)
	fmt.Printf("  - Roles: %v\n", mock.Roles() != nil)
	fmt.Printf("  - RoleBindings: %v\n", mock.RoleBindings() != nil)
	fmt.Printf("  - Identities: %v\n", mock.Identities() != nil)
	fmt.Printf("  - IdentityProviders: %v\n", mock.IdentityProviders() != nil)
	fmt.Printf("  - GroupInvites: %v\n", mock.GroupInvites() != nil)
	fmt.Printf("  - AccountAssociations: %v\n", mock.AccountAssociations() != nil)
	fmt.Printf("  - Subscriptions: %v\n", mock.Subscriptions() != nil)

}
Output:
Available service clients:
  - Groups: true
  - Roles: true
  - RoleBindings: true
  - Identities: true
  - IdentityProviders: true
  - GroupInvites: true
  - AccountAssociations: true
  - Subscriptions: true
Example (RoleBindings)

Example_roleBindings demonstrates the role binding client accessor.

package main

import (
	"fmt"

	iam "chainguard.dev/sdk/proto/platform/iam/v1"
	"chainguard.dev/sdk/proto/platform/iam/v1/test"
)

func main() {
	// Create a mock client
	mock := &test.MockIAMClient{
		RoleBindingsClient: test.MockRoleBindingsClient{
			OnList: []test.RoleBindingOnList{{
				Given: &iam.RoleBindingFilter{},
				List: &iam.RoleBindingList{
					Items: []*iam.RoleBindingList_Binding{{
						Id:       "binding-1",
						Identity: "user@example.com",
						Role:     &iam.Role{Id: "roles/viewer"},
					}},
				},
			}},
		},
	}

	// Access the role bindings client
	rbClient := mock.RoleBindings()
	fmt.Printf("RoleBindings client type: %T\n", rbClient)

}
Output:
RoleBindings client type: *test.MockRoleBindingsClient

Index

Examples

Constants

View Source
const (
	GroupAccountAssociations_Create_FullMethodName = "/chainguard.platform.iam.GroupAccountAssociations/Create"
	GroupAccountAssociations_Update_FullMethodName = "/chainguard.platform.iam.GroupAccountAssociations/Update"
	GroupAccountAssociations_List_FullMethodName   = "/chainguard.platform.iam.GroupAccountAssociations/List"
	GroupAccountAssociations_Delete_FullMethodName = "/chainguard.platform.iam.GroupAccountAssociations/Delete"
	GroupAccountAssociations_Check_FullMethodName  = "/chainguard.platform.iam.GroupAccountAssociations/Check"
)
View Source
const (
	ExternalGroupRoleMappings_Create_FullMethodName      = "/chainguard.platform.iam.ExternalGroupRoleMappings/Create"
	ExternalGroupRoleMappings_Get_FullMethodName         = "/chainguard.platform.iam.ExternalGroupRoleMappings/Get"
	ExternalGroupRoleMappings_List_FullMethodName        = "/chainguard.platform.iam.ExternalGroupRoleMappings/List"
	ExternalGroupRoleMappings_Delete_FullMethodName      = "/chainguard.platform.iam.ExternalGroupRoleMappings/Delete"
	ExternalGroupRoleMappings_BatchDelete_FullMethodName = "/chainguard.platform.iam.ExternalGroupRoleMappings/BatchDelete"
)
View Source
const (
	Groups_Create_FullMethodName             = "/chainguard.platform.iam.Groups/Create"
	Groups_Update_FullMethodName             = "/chainguard.platform.iam.Groups/Update"
	Groups_List_FullMethodName               = "/chainguard.platform.iam.Groups/List"
	Groups_Delete_FullMethodName             = "/chainguard.platform.iam.Groups/Delete"
	Groups_LookupGroup_FullMethodName        = "/chainguard.platform.iam.Groups/LookupGroup"
	Groups_RequestGroupAccess_FullMethodName = "/chainguard.platform.iam.Groups/RequestGroupAccess"
	Groups_CheckEligibility_FullMethodName   = "/chainguard.platform.iam.Groups/CheckEligibility"
)
View Source
const (
	GroupInvites_Create_FullMethodName          = "/chainguard.platform.iam.GroupInvites/Create"
	GroupInvites_CreateWithGroup_FullMethodName = "/chainguard.platform.iam.GroupInvites/CreateWithGroup"
	GroupInvites_List_FullMethodName            = "/chainguard.platform.iam.GroupInvites/List"
	GroupInvites_Delete_FullMethodName          = "/chainguard.platform.iam.GroupInvites/Delete"
)
View Source
const (
	Identities_Create_FullMethodName = "/chainguard.platform.iam.Identities/Create"
	Identities_Update_FullMethodName = "/chainguard.platform.iam.Identities/Update"
	Identities_List_FullMethodName   = "/chainguard.platform.iam.Identities/List"
	Identities_Lookup_FullMethodName = "/chainguard.platform.iam.Identities/Lookup"
	Identities_Delete_FullMethodName = "/chainguard.platform.iam.Identities/Delete"
)
View Source
const (
	IdentityProviders_Create_FullMethodName              = "/chainguard.platform.iam.IdentityProviders/Create"
	IdentityProviders_Update_FullMethodName              = "/chainguard.platform.iam.IdentityProviders/Update"
	IdentityProviders_List_FullMethodName                = "/chainguard.platform.iam.IdentityProviders/List"
	IdentityProviders_Delete_FullMethodName              = "/chainguard.platform.iam.IdentityProviders/Delete"
	IdentityProviders_GenerateScimToken_FullMethodName   = "/chainguard.platform.iam.IdentityProviders/GenerateScimToken"
	IdentityProviders_RegenerateScimToken_FullMethodName = "/chainguard.platform.iam.IdentityProviders/RegenerateScimToken"
	IdentityProviders_RevokeScimToken_FullMethodName     = "/chainguard.platform.iam.IdentityProviders/RevokeScimToken"
	IdentityProviders_SetScimEnabled_FullMethodName      = "/chainguard.platform.iam.IdentityProviders/SetScimEnabled"
)
View Source
const (
	Roles_Create_FullMethodName = "/chainguard.platform.iam.Roles/Create"
	Roles_Update_FullMethodName = "/chainguard.platform.iam.Roles/Update"
	Roles_List_FullMethodName   = "/chainguard.platform.iam.Roles/List"
	Roles_Delete_FullMethodName = "/chainguard.platform.iam.Roles/Delete"
)
View Source
const (
	RoleBindings_Create_FullMethodName      = "/chainguard.platform.iam.RoleBindings/Create"
	RoleBindings_CreateBatch_FullMethodName = "/chainguard.platform.iam.RoleBindings/CreateBatch"
	RoleBindings_Update_FullMethodName      = "/chainguard.platform.iam.RoleBindings/Update"
	RoleBindings_List_FullMethodName        = "/chainguard.platform.iam.RoleBindings/List"
	RoleBindings_Delete_FullMethodName      = "/chainguard.platform.iam.RoleBindings/Delete"
)
View Source
const (
	Terms_AcceptTerms_FullMethodName  = "/chainguard.platform.iam.Terms/AcceptTerms"
	Terms_ListAccepted_FullMethodName = "/chainguard.platform.iam.Terms/ListAccepted"
)

Variables

View Source
var (
	AccountAssociationsStatus_State_name = map[int32]string{
		0: "UNKNOWN",
		1: "Ready",
		2: "NotReady",
	}
	AccountAssociationsStatus_State_value = map[string]int32{
		"UNKNOWN":  0,
		"Ready":    1,
		"NotReady": 2,
	}
)

Enum value maps for AccountAssociationsStatus_State.

View Source
var (
	AccountAssociationsCheckRequest_AccountType_name = map[int32]string{
		0: "UNKNOWN",
		1: "GOOGLE",
		2: "AMAZON",
		3: "AZURE",
	}
	AccountAssociationsCheckRequest_AccountType_value = map[string]int32{
		"UNKNOWN": 0,
		"GOOGLE":  1,
		"AMAZON":  2,
		"AZURE":   3,
	}
)

Enum value maps for AccountAssociationsCheckRequest_AccountType.

View Source
var (
	OrgStatus_name = map[int32]string{
		0: "ORG_STATUS_UNSPECIFIED",
		1: "ORG_STATUS_INITIALIZING",
		2: "ORG_STATUS_READY",
		3: "ORG_STATUS_SUSPENDED",
	}
	OrgStatus_value = map[string]int32{
		"ORG_STATUS_UNSPECIFIED":  0,
		"ORG_STATUS_INITIALIZING": 1,
		"ORG_STATUS_READY":        2,
		"ORG_STATUS_SUSPENDED":    3,
	}
)

Enum value maps for OrgStatus.

View Source
var (
	OrgKind_name = map[int32]string{
		0: "ORG_KIND_UNSPECIFIED",
		1: "ORG_KIND_STARTER",
		2: "ORG_KIND_CUSTOMER",
		3: "ORG_KIND_DEV",
		4: "ORG_KIND_INFRA",
		5: "ORG_KIND_AWS_MARKETPLACE",
	}
	OrgKind_value = map[string]int32{
		"ORG_KIND_UNSPECIFIED":     0,
		"ORG_KIND_STARTER":         1,
		"ORG_KIND_CUSTOMER":        2,
		"ORG_KIND_DEV":             3,
		"ORG_KIND_INFRA":           4,
		"ORG_KIND_AWS_MARKETPLACE": 5,
	}
)

Enum value maps for OrgKind.

View Source
var (
	ServicePrincipal_name = map[int32]string{
		0:  "UNKNOWN",
		1:  "COSIGNED",
		2:  "INGESTER",
		3:  "CATALOG_SYNCER",
		4:  "APKO_BUILDER",
		5:  "ENTITLEMENT_SYNCER",
		6:  "TENANT_SCANNER",
		7:  "SEDIMENTOLOGY",
		8:  "SKILLUP",
		9:  "MATERIALIZER",
		10: "MICROFLOW",
		11: "GUARDENER",
		12: "MICROVM",
		13: "SKILLS",
	}
	ServicePrincipal_value = map[string]int32{
		"UNKNOWN":            0,
		"COSIGNED":           1,
		"INGESTER":           2,
		"CATALOG_SYNCER":     3,
		"APKO_BUILDER":       4,
		"ENTITLEMENT_SYNCER": 5,
		"TENANT_SCANNER":     6,
		"SEDIMENTOLOGY":      7,
		"SKILLUP":            8,
		"MATERIALIZER":       9,
		"MICROFLOW":          10,
		"GUARDENER":          11,
		"MICROVM":            12,
		"SKILLS":             13,
	}
)

Enum value maps for ServicePrincipal.

View Source
var (
	IdentityProvider_OIDC_CorrelationRule_name = map[int32]string{
		0: "CORRELATION_RULE_UNSPECIFIED",
		1: "CORRELATION_RULE_SUB_EQUALS_EXTERNAL_ID",
		2: "CORRELATION_RULE_OID_EQUALS_EXTERNAL_ID",
	}
	IdentityProvider_OIDC_CorrelationRule_value = map[string]int32{
		"CORRELATION_RULE_UNSPECIFIED":            0,
		"CORRELATION_RULE_SUB_EQUALS_EXTERNAL_ID": 1,
		"CORRELATION_RULE_OID_EQUALS_EXTERNAL_ID": 2,
	}
)

Enum value maps for IdentityProvider_OIDC_CorrelationRule.

View Source
var (
	IdentityProvider_SCIM_CredentialState_name = map[int32]string{
		0: "CREDENTIAL_STATE_UNSPECIFIED",
		1: "CREDENTIAL_STATE_NOT_ISSUED",
		2: "CREDENTIAL_STATE_LIVE",
		3: "CREDENTIAL_STATE_EXPIRED",
		4: "CREDENTIAL_STATE_REVOKED",
		5: "CREDENTIAL_STATE_ROTATING",
	}
	IdentityProvider_SCIM_CredentialState_value = map[string]int32{
		"CREDENTIAL_STATE_UNSPECIFIED": 0,
		"CREDENTIAL_STATE_NOT_ISSUED":  1,
		"CREDENTIAL_STATE_LIVE":        2,
		"CREDENTIAL_STATE_EXPIRED":     3,
		"CREDENTIAL_STATE_REVOKED":     4,
		"CREDENTIAL_STATE_ROTATING":    5,
	}
)

Enum value maps for IdentityProvider_SCIM_CredentialState.

View Source
var ExternalGroupRoleMappings_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.ExternalGroupRoleMappings",
	HandlerType: (*ExternalGroupRoleMappingsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _ExternalGroupRoleMappings_Create_Handler,
		},
		{
			MethodName: "Get",
			Handler:    _ExternalGroupRoleMappings_Get_Handler,
		},
		{
			MethodName: "List",
			Handler:    _ExternalGroupRoleMappings_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _ExternalGroupRoleMappings_Delete_Handler,
		},
		{
			MethodName: "BatchDelete",
			Handler:    _ExternalGroupRoleMappings_BatchDelete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "external_group_role_mappings.platform.proto",
}

ExternalGroupRoleMappings_ServiceDesc is the grpc.ServiceDesc for ExternalGroupRoleMappings 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_account_associations_platform_proto protoreflect.FileDescriptor
View Source
var File_external_group_role_mappings_platform_proto protoreflect.FileDescriptor
View Source
var File_group_invites_platform_proto protoreflect.FileDescriptor
View Source
var File_group_platform_proto protoreflect.FileDescriptor
View Source
var File_identity_platform_proto protoreflect.FileDescriptor
View Source
var File_identity_providers_platform_proto protoreflect.FileDescriptor
View Source
var File_role_binding_platform_proto protoreflect.FileDescriptor
View Source
var File_role_platform_proto protoreflect.FileDescriptor
View Source
var File_terms_platform_proto protoreflect.FileDescriptor
View Source
var GroupAccountAssociations_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.GroupAccountAssociations",
	HandlerType: (*GroupAccountAssociationsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _GroupAccountAssociations_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _GroupAccountAssociations_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _GroupAccountAssociations_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _GroupAccountAssociations_Delete_Handler,
		},
		{
			MethodName: "Check",
			Handler:    _GroupAccountAssociations_Check_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "account_associations.platform.proto",
}

GroupAccountAssociations_ServiceDesc is the grpc.ServiceDesc for GroupAccountAssociations 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 GroupInvites_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.GroupInvites",
	HandlerType: (*GroupInvitesServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _GroupInvites_Create_Handler,
		},
		{
			MethodName: "CreateWithGroup",
			Handler:    _GroupInvites_CreateWithGroup_Handler,
		},
		{
			MethodName: "List",
			Handler:    _GroupInvites_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _GroupInvites_Delete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "group_invites.platform.proto",
}

GroupInvites_ServiceDesc is the grpc.ServiceDesc for GroupInvites 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 Groups_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.Groups",
	HandlerType: (*GroupsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _Groups_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _Groups_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _Groups_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _Groups_Delete_Handler,
		},
		{
			MethodName: "LookupGroup",
			Handler:    _Groups_LookupGroup_Handler,
		},
		{
			MethodName: "RequestGroupAccess",
			Handler:    _Groups_RequestGroupAccess_Handler,
		},
		{
			MethodName: "CheckEligibility",
			Handler:    _Groups_CheckEligibility_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "group.platform.proto",
}

Groups_ServiceDesc is the grpc.ServiceDesc for Groups 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 Identities_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.Identities",
	HandlerType: (*IdentitiesServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _Identities_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _Identities_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _Identities_List_Handler,
		},
		{
			MethodName: "Lookup",
			Handler:    _Identities_Lookup_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _Identities_Delete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "identity.platform.proto",
}

Identities_ServiceDesc is the grpc.ServiceDesc for Identities 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 IdentityProviders_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.IdentityProviders",
	HandlerType: (*IdentityProvidersServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _IdentityProviders_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _IdentityProviders_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _IdentityProviders_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _IdentityProviders_Delete_Handler,
		},
		{
			MethodName: "GenerateScimToken",
			Handler:    _IdentityProviders_GenerateScimToken_Handler,
		},
		{
			MethodName: "RegenerateScimToken",
			Handler:    _IdentityProviders_RegenerateScimToken_Handler,
		},
		{
			MethodName: "RevokeScimToken",
			Handler:    _IdentityProviders_RevokeScimToken_Handler,
		},
		{
			MethodName: "SetScimEnabled",
			Handler:    _IdentityProviders_SetScimEnabled_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "identity_providers.platform.proto",
}

IdentityProviders_ServiceDesc is the grpc.ServiceDesc for IdentityProviders 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 RoleBindings_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.RoleBindings",
	HandlerType: (*RoleBindingsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _RoleBindings_Create_Handler,
		},
		{
			MethodName: "CreateBatch",
			Handler:    _RoleBindings_CreateBatch_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _RoleBindings_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _RoleBindings_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _RoleBindings_Delete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "role_binding.platform.proto",
}

RoleBindings_ServiceDesc is the grpc.ServiceDesc for RoleBindings 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 Roles_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.Roles",
	HandlerType: (*RolesServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Create",
			Handler:    _Roles_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _Roles_Update_Handler,
		},
		{
			MethodName: "List",
			Handler:    _Roles_List_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _Roles_Delete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "role.platform.proto",
}

Roles_ServiceDesc is the grpc.ServiceDesc for Roles 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 Terms_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "chainguard.platform.iam.Terms",
	HandlerType: (*TermsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "AcceptTerms",
			Handler:    _Terms_AcceptTerms_Handler,
		},
		{
			MethodName: "ListAccepted",
			Handler:    _Terms_ListAccepted_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "terms.platform.proto",
}

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

Functions

func CheckTermsAcceptance added in v0.1.53

func CheckTermsAcceptance(ctx context.Context, groupID string, client TermsClient, requiredDocIDs []string) error

CheckTermsAcceptance verifies that the group identified by groupID has accepted all of the required documents listed in requiredDocIDs. If any documents are missing, it returns a gRPC FailedPrecondition error carrying a TermsNotAcceptedDetail with the missing document IDs.

func ErrTermsNotAccepted added in v0.1.53

func ErrTermsNotAccepted(missing []TermsDocument) error

ErrTermsNotAccepted returns a gRPC FailedPrecondition error carrying the list of legal documents that the group still needs to accept, including their display metadata (label and URL).

func RegisterExternalGroupRoleMappingsHandler added in v0.1.57

func RegisterExternalGroupRoleMappingsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterExternalGroupRoleMappingsHandler registers the http handlers for service ExternalGroupRoleMappings to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterExternalGroupRoleMappingsHandlerClient added in v0.1.57

func RegisterExternalGroupRoleMappingsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ExternalGroupRoleMappingsClient) error

RegisterExternalGroupRoleMappingsHandlerClient registers the http handlers for service ExternalGroupRoleMappings to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "ExternalGroupRoleMappingsClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "ExternalGroupRoleMappingsClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "ExternalGroupRoleMappingsClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterExternalGroupRoleMappingsHandlerFromEndpoint added in v0.1.57

func RegisterExternalGroupRoleMappingsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterExternalGroupRoleMappingsHandlerFromEndpoint is same as RegisterExternalGroupRoleMappingsHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterExternalGroupRoleMappingsHandlerServer added in v0.1.57

func RegisterExternalGroupRoleMappingsHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ExternalGroupRoleMappingsServer) error

RegisterExternalGroupRoleMappingsHandlerServer registers the http handlers for service ExternalGroupRoleMappings to "mux". UnaryRPC :call ExternalGroupRoleMappingsServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterExternalGroupRoleMappingsHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterExternalGroupRoleMappingsServer added in v0.1.57

func RegisterExternalGroupRoleMappingsServer(s grpc.ServiceRegistrar, srv ExternalGroupRoleMappingsServer)

func RegisterGroupAccountAssociationsHandler

func RegisterGroupAccountAssociationsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterGroupAccountAssociationsHandler registers the http handlers for service GroupAccountAssociations to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterGroupAccountAssociationsHandlerClient

func RegisterGroupAccountAssociationsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client GroupAccountAssociationsClient) error

RegisterGroupAccountAssociationsHandlerClient registers the http handlers for service GroupAccountAssociations to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "GroupAccountAssociationsClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "GroupAccountAssociationsClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "GroupAccountAssociationsClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterGroupAccountAssociationsHandlerFromEndpoint

func RegisterGroupAccountAssociationsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterGroupAccountAssociationsHandlerFromEndpoint is same as RegisterGroupAccountAssociationsHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterGroupAccountAssociationsHandlerServer

func RegisterGroupAccountAssociationsHandlerServer(ctx context.Context, mux *runtime.ServeMux, server GroupAccountAssociationsServer) error

RegisterGroupAccountAssociationsHandlerServer registers the http handlers for service GroupAccountAssociations to "mux". UnaryRPC :call GroupAccountAssociationsServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterGroupAccountAssociationsHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterGroupAccountAssociationsServer

func RegisterGroupAccountAssociationsServer(s grpc.ServiceRegistrar, srv GroupAccountAssociationsServer)

func RegisterGroupInvitesHandler

func RegisterGroupInvitesHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterGroupInvitesHandler registers the http handlers for service GroupInvites to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterGroupInvitesHandlerClient

func RegisterGroupInvitesHandlerClient(ctx context.Context, mux *runtime.ServeMux, client GroupInvitesClient) error

RegisterGroupInvitesHandlerClient registers the http handlers for service GroupInvites to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "GroupInvitesClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "GroupInvitesClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "GroupInvitesClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterGroupInvitesHandlerFromEndpoint

func RegisterGroupInvitesHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterGroupInvitesHandlerFromEndpoint is same as RegisterGroupInvitesHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterGroupInvitesHandlerServer

func RegisterGroupInvitesHandlerServer(ctx context.Context, mux *runtime.ServeMux, server GroupInvitesServer) error

RegisterGroupInvitesHandlerServer registers the http handlers for service GroupInvites to "mux". UnaryRPC :call GroupInvitesServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterGroupInvitesHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterGroupInvitesServer

func RegisterGroupInvitesServer(s grpc.ServiceRegistrar, srv GroupInvitesServer)

func RegisterGroupsHandler

func RegisterGroupsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterGroupsHandler registers the http handlers for service Groups to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterGroupsHandlerClient

func RegisterGroupsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client GroupsClient) error

RegisterGroupsHandlerClient registers the http handlers for service Groups to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "GroupsClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "GroupsClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "GroupsClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterGroupsHandlerFromEndpoint

func RegisterGroupsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterGroupsHandlerFromEndpoint is same as RegisterGroupsHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterGroupsHandlerServer

func RegisterGroupsHandlerServer(ctx context.Context, mux *runtime.ServeMux, server GroupsServer) error

RegisterGroupsHandlerServer registers the http handlers for service Groups to "mux". UnaryRPC :call GroupsServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterGroupsHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterGroupsServer

func RegisterGroupsServer(s grpc.ServiceRegistrar, srv GroupsServer)

func RegisterIdentitiesHandler

func RegisterIdentitiesHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterIdentitiesHandler registers the http handlers for service Identities to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterIdentitiesHandlerClient

func RegisterIdentitiesHandlerClient(ctx context.Context, mux *runtime.ServeMux, client IdentitiesClient) error

RegisterIdentitiesHandlerClient registers the http handlers for service Identities to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "IdentitiesClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "IdentitiesClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "IdentitiesClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterIdentitiesHandlerFromEndpoint

func RegisterIdentitiesHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterIdentitiesHandlerFromEndpoint is same as RegisterIdentitiesHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterIdentitiesHandlerServer

func RegisterIdentitiesHandlerServer(ctx context.Context, mux *runtime.ServeMux, server IdentitiesServer) error

RegisterIdentitiesHandlerServer registers the http handlers for service Identities to "mux". UnaryRPC :call IdentitiesServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterIdentitiesHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterIdentitiesServer

func RegisterIdentitiesServer(s grpc.ServiceRegistrar, srv IdentitiesServer)

func RegisterIdentityProvidersHandler

func RegisterIdentityProvidersHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterIdentityProvidersHandler registers the http handlers for service IdentityProviders to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterIdentityProvidersHandlerClient

func RegisterIdentityProvidersHandlerClient(ctx context.Context, mux *runtime.ServeMux, client IdentityProvidersClient) error

RegisterIdentityProvidersHandlerClient registers the http handlers for service IdentityProviders to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "IdentityProvidersClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "IdentityProvidersClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "IdentityProvidersClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterIdentityProvidersHandlerFromEndpoint

func RegisterIdentityProvidersHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterIdentityProvidersHandlerFromEndpoint is same as RegisterIdentityProvidersHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterIdentityProvidersHandlerServer

func RegisterIdentityProvidersHandlerServer(ctx context.Context, mux *runtime.ServeMux, server IdentityProvidersServer) error

RegisterIdentityProvidersHandlerServer registers the http handlers for service IdentityProviders to "mux". UnaryRPC :call IdentityProvidersServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterIdentityProvidersHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterIdentityProvidersServer

func RegisterIdentityProvidersServer(s grpc.ServiceRegistrar, srv IdentityProvidersServer)

func RegisterRoleBindingsHandler

func RegisterRoleBindingsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterRoleBindingsHandler registers the http handlers for service RoleBindings to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterRoleBindingsHandlerClient

func RegisterRoleBindingsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client RoleBindingsClient) error

RegisterRoleBindingsHandlerClient registers the http handlers for service RoleBindings to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "RoleBindingsClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "RoleBindingsClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "RoleBindingsClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterRoleBindingsHandlerFromEndpoint

func RegisterRoleBindingsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterRoleBindingsHandlerFromEndpoint is same as RegisterRoleBindingsHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterRoleBindingsHandlerServer

func RegisterRoleBindingsHandlerServer(ctx context.Context, mux *runtime.ServeMux, server RoleBindingsServer) error

RegisterRoleBindingsHandlerServer registers the http handlers for service RoleBindings to "mux". UnaryRPC :call RoleBindingsServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterRoleBindingsHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterRoleBindingsServer

func RegisterRoleBindingsServer(s grpc.ServiceRegistrar, srv RoleBindingsServer)

func RegisterRolesHandler

func RegisterRolesHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterRolesHandler registers the http handlers for service Roles to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterRolesHandlerClient

func RegisterRolesHandlerClient(ctx context.Context, mux *runtime.ServeMux, client RolesClient) error

RegisterRolesHandlerClient registers the http handlers for service Roles to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "RolesClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "RolesClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "RolesClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterRolesHandlerFromEndpoint

func RegisterRolesHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterRolesHandlerFromEndpoint is same as RegisterRolesHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterRolesHandlerServer

func RegisterRolesHandlerServer(ctx context.Context, mux *runtime.ServeMux, server RolesServer) error

RegisterRolesHandlerServer registers the http handlers for service Roles to "mux". UnaryRPC :call RolesServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterRolesHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterRolesServer

func RegisterRolesServer(s grpc.ServiceRegistrar, srv RolesServer)

func RegisterTermsHandler added in v0.1.53

func RegisterTermsHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterTermsHandler registers the http handlers for service Terms to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterTermsHandlerClient added in v0.1.53

func RegisterTermsHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TermsClient) error

RegisterTermsHandlerClient registers the http handlers for service Terms to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TermsClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TermsClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "TermsClient" to call the correct interceptors. This client ignores the HTTP middlewares.

func RegisterTermsHandlerFromEndpoint added in v0.1.53

func RegisterTermsHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterTermsHandlerFromEndpoint is same as RegisterTermsHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterTermsHandlerServer added in v0.1.53

func RegisterTermsHandlerServer(ctx context.Context, mux *runtime.ServeMux, server TermsServer) error

RegisterTermsHandlerServer registers the http handlers for service Terms to "mux". UnaryRPC :call TermsServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterTermsHandlerFromEndpoint instead. GRPC interceptors will not work for this type of registration. To use interceptors, you must use the "runtime.WithMiddlewares" option in the "runtime.NewServeMux" call.

func RegisterTermsServer added in v0.1.53

func RegisterTermsServer(s grpc.ServiceRegistrar, srv TermsServer)

Types

type AcceptTermsRequest added in v0.1.53

type AcceptTermsRequest struct {

	// group is the UIDP of the org on whose behalf legal docs are being accepted.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// document_ids are the IDs of the documents being accepted.
	DocumentIds []string `protobuf:"bytes,2,rep,name=document_ids,json=documentIds,proto3" json:"document_ids,omitempty"`
	// contains filtered or unexported fields
}

func (*AcceptTermsRequest) Descriptor deprecated added in v0.1.53

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

Deprecated: Use AcceptTermsRequest.ProtoReflect.Descriptor instead.

func (*AcceptTermsRequest) GetDocumentIds added in v0.1.53

func (x *AcceptTermsRequest) GetDocumentIds() []string

func (*AcceptTermsRequest) GetGroup added in v0.1.53

func (x *AcceptTermsRequest) GetGroup() string

func (*AcceptTermsRequest) ProtoMessage added in v0.1.53

func (*AcceptTermsRequest) ProtoMessage()

func (*AcceptTermsRequest) ProtoReflect added in v0.1.53

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

func (*AcceptTermsRequest) Reset added in v0.1.53

func (x *AcceptTermsRequest) Reset()

func (*AcceptTermsRequest) String added in v0.1.53

func (x *AcceptTermsRequest) String() string

type AcceptTermsResponse added in v0.1.63

type AcceptTermsResponse struct {

	// group UIDP that accepted the documents.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// document_ids that were accepted.
	DocumentIds []string `protobuf:"bytes,2,rep,name=document_ids,json=documentIds,proto3" json:"document_ids,omitempty"`
	// contains filtered or unexported fields
}

AcceptTermsResponse is returned after successfully recording acceptance.

func (*AcceptTermsResponse) CloudEventsExtension added in v0.1.63

func (x *AcceptTermsResponse) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements events.Extendable.

func (*AcceptTermsResponse) CloudEventsSubject added in v0.1.63

func (x *AcceptTermsResponse) CloudEventsSubject() string

CloudEventsSubject implements events.Eventable.

func (*AcceptTermsResponse) Descriptor deprecated added in v0.1.63

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

Deprecated: Use AcceptTermsResponse.ProtoReflect.Descriptor instead.

func (*AcceptTermsResponse) GetDocumentIds added in v0.1.63

func (x *AcceptTermsResponse) GetDocumentIds() []string

func (*AcceptTermsResponse) GetGroup added in v0.1.63

func (x *AcceptTermsResponse) GetGroup() string

func (*AcceptTermsResponse) ProtoMessage added in v0.1.63

func (*AcceptTermsResponse) ProtoMessage()

func (*AcceptTermsResponse) ProtoReflect added in v0.1.63

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

func (*AcceptTermsResponse) Reset added in v0.1.63

func (x *AcceptTermsResponse) Reset()

func (*AcceptTermsResponse) String added in v0.1.63

func (x *AcceptTermsResponse) String() string

type AccountAssociations

type AccountAssociations struct {

	// group is the group with which this account information is associated.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// amazon holds information associating an Amazon account with the group.
	Amazon *AccountAssociations_Amazon `protobuf:"bytes,2,opt,name=amazon,proto3" json:"amazon,omitempty"`
	// google holds information associating a Google project with the group.
	Google     *AccountAssociations_Google     `protobuf:"bytes,3,opt,name=google,proto3" json:"google,omitempty"`
	Chainguard *AccountAssociations_Chainguard `protobuf:"bytes,7,opt,name=chainguard,proto3" json:"chainguard,omitempty"`
	Azure      *AccountAssociations_Azure      `protobuf:"bytes,8,opt,name=azure,proto3" json:"azure,omitempty"`
	// name of the association.
	Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	// a short description of this association.
	Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	// github holds GitHub App installation associations for this group.
	Github *AccountAssociations_GitHub `protobuf:"bytes,9,opt,name=github,proto3" json:"github,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociations) CloudEventsExtension

func (x *AccountAssociations) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*AccountAssociations) CloudEventsSubject

func (x *AccountAssociations) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*AccountAssociations) Descriptor deprecated

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

Deprecated: Use AccountAssociations.ProtoReflect.Descriptor instead.

func (*AccountAssociations) GetAmazon

func (*AccountAssociations) GetAzure added in v0.1.36

func (*AccountAssociations) GetChainguard

func (*AccountAssociations) GetDescription

func (x *AccountAssociations) GetDescription() string

func (*AccountAssociations) GetGithub

func (*AccountAssociations) GetGoogle

func (*AccountAssociations) GetGroup

func (x *AccountAssociations) GetGroup() string

func (*AccountAssociations) GetName

func (x *AccountAssociations) GetName() string

func (*AccountAssociations) ProtoMessage

func (*AccountAssociations) ProtoMessage()

func (*AccountAssociations) ProtoReflect

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

func (*AccountAssociations) Reset

func (x *AccountAssociations) Reset()

func (*AccountAssociations) String

func (x *AccountAssociations) String() string

type AccountAssociationsCheckRequest

type AccountAssociationsCheckRequest struct {

	// group is the exact UIDP of the group whose associations we want to check
	Group       string                                      `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	AccountType AccountAssociationsCheckRequest_AccountType `` /* 168-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*AccountAssociationsCheckRequest) Descriptor deprecated

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

Deprecated: Use AccountAssociationsCheckRequest.ProtoReflect.Descriptor instead.

func (*AccountAssociationsCheckRequest) GetAccountType

func (*AccountAssociationsCheckRequest) GetGroup

func (*AccountAssociationsCheckRequest) ProtoMessage

func (*AccountAssociationsCheckRequest) ProtoMessage()

func (*AccountAssociationsCheckRequest) ProtoReflect

func (*AccountAssociationsCheckRequest) Reset

func (*AccountAssociationsCheckRequest) String

type AccountAssociationsCheckRequest_AccountType

type AccountAssociationsCheckRequest_AccountType int32
const (
	AccountAssociationsCheckRequest_UNKNOWN AccountAssociationsCheckRequest_AccountType = 0
	AccountAssociationsCheckRequest_GOOGLE  AccountAssociationsCheckRequest_AccountType = 1
	AccountAssociationsCheckRequest_AMAZON  AccountAssociationsCheckRequest_AccountType = 2
	AccountAssociationsCheckRequest_AZURE   AccountAssociationsCheckRequest_AccountType = 3
)

func (AccountAssociationsCheckRequest_AccountType) Descriptor

func (AccountAssociationsCheckRequest_AccountType) Enum

func (AccountAssociationsCheckRequest_AccountType) EnumDescriptor deprecated

func (AccountAssociationsCheckRequest_AccountType) EnumDescriptor() ([]byte, []int)

Deprecated: Use AccountAssociationsCheckRequest_AccountType.Descriptor instead.

func (AccountAssociationsCheckRequest_AccountType) Number

func (AccountAssociationsCheckRequest_AccountType) String

func (AccountAssociationsCheckRequest_AccountType) Type

type AccountAssociationsFilter

type AccountAssociationsFilter struct {

	// group is the exact UIDP of the group whose associations we want to list.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// name is the exact name of the association.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociationsFilter) Descriptor deprecated

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

Deprecated: Use AccountAssociationsFilter.ProtoReflect.Descriptor instead.

func (*AccountAssociationsFilter) GetGroup

func (x *AccountAssociationsFilter) GetGroup() string

func (*AccountAssociationsFilter) GetName

func (x *AccountAssociationsFilter) GetName() string

func (*AccountAssociationsFilter) ProtoMessage

func (*AccountAssociationsFilter) ProtoMessage()

func (*AccountAssociationsFilter) ProtoReflect

func (*AccountAssociationsFilter) Reset

func (x *AccountAssociationsFilter) Reset()

func (*AccountAssociationsFilter) String

func (x *AccountAssociationsFilter) String() string

type AccountAssociationsList

type AccountAssociationsList struct {
	Items []*AccountAssociations `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociationsList) Descriptor deprecated

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

Deprecated: Use AccountAssociationsList.ProtoReflect.Descriptor instead.

func (*AccountAssociationsList) GetItems

func (*AccountAssociationsList) ProtoMessage

func (*AccountAssociationsList) ProtoMessage()

func (*AccountAssociationsList) ProtoReflect

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

func (*AccountAssociationsList) Reset

func (x *AccountAssociationsList) Reset()

func (*AccountAssociationsList) String

func (x *AccountAssociationsList) String() string

type AccountAssociationsStatus

type AccountAssociationsStatus struct {
	Ready   AccountAssociationsStatus_State `protobuf:"varint,1,opt,name=ready,proto3,enum=chainguard.platform.iam.AccountAssociationsStatus_State" json:"ready,omitempty"`
	Reason  string                          `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	Message string                          `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociationsStatus) Descriptor deprecated

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

Deprecated: Use AccountAssociationsStatus.ProtoReflect.Descriptor instead.

func (*AccountAssociationsStatus) GetMessage

func (x *AccountAssociationsStatus) GetMessage() string

func (*AccountAssociationsStatus) GetReady

func (*AccountAssociationsStatus) GetReason

func (x *AccountAssociationsStatus) GetReason() string

func (*AccountAssociationsStatus) ProtoMessage

func (*AccountAssociationsStatus) ProtoMessage()

func (*AccountAssociationsStatus) ProtoReflect

func (*AccountAssociationsStatus) Reset

func (x *AccountAssociationsStatus) Reset()

func (*AccountAssociationsStatus) String

func (x *AccountAssociationsStatus) String() string

type AccountAssociationsStatus_State

type AccountAssociationsStatus_State int32
const (
	AccountAssociationsStatus_UNKNOWN  AccountAssociationsStatus_State = 0
	AccountAssociationsStatus_Ready    AccountAssociationsStatus_State = 1
	AccountAssociationsStatus_NotReady AccountAssociationsStatus_State = 2
)

func (AccountAssociationsStatus_State) Descriptor

func (AccountAssociationsStatus_State) Enum

func (AccountAssociationsStatus_State) EnumDescriptor deprecated

func (AccountAssociationsStatus_State) EnumDescriptor() ([]byte, []int)

Deprecated: Use AccountAssociationsStatus_State.Descriptor instead.

func (AccountAssociationsStatus_State) Number

func (AccountAssociationsStatus_State) String

func (AccountAssociationsStatus_State) Type

type AccountAssociations_Amazon

type AccountAssociations_Amazon struct {
	Account string `protobuf:"bytes,1,opt,name=account,proto3" json:"account,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociations_Amazon) Descriptor deprecated

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

Deprecated: Use AccountAssociations_Amazon.ProtoReflect.Descriptor instead.

func (*AccountAssociations_Amazon) GetAccount

func (x *AccountAssociations_Amazon) GetAccount() string

func (*AccountAssociations_Amazon) ProtoMessage

func (*AccountAssociations_Amazon) ProtoMessage()

func (*AccountAssociations_Amazon) ProtoReflect

func (*AccountAssociations_Amazon) Reset

func (x *AccountAssociations_Amazon) Reset()

func (*AccountAssociations_Amazon) String

func (x *AccountAssociations_Amazon) String() string

type AccountAssociations_Azure added in v0.1.36

type AccountAssociations_Azure struct {

	// tenant_id is the Azure tenant ID where this group and descendants
	// are authorized to impersonate service principals to access resources.
	//
	// A tenant ID is a unique GUID that identifies an organization in
	// Microsoft Entra ID (formerly Azure AD) instance
	TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	// client_ids is a map from chainguard component to the Azure client IDs (also known as application ID)
	//
	// It serves as the application's identity for authentication with Azure services.
	ClientIds map[string]string `` /* 162-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*AccountAssociations_Azure) Descriptor deprecated added in v0.1.36

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

Deprecated: Use AccountAssociations_Azure.ProtoReflect.Descriptor instead.

func (*AccountAssociations_Azure) GetClientIds added in v0.1.36

func (x *AccountAssociations_Azure) GetClientIds() map[string]string

func (*AccountAssociations_Azure) GetTenantId added in v0.1.36

func (x *AccountAssociations_Azure) GetTenantId() string

func (*AccountAssociations_Azure) ProtoMessage added in v0.1.36

func (*AccountAssociations_Azure) ProtoMessage()

func (*AccountAssociations_Azure) ProtoReflect added in v0.1.36

func (*AccountAssociations_Azure) Reset added in v0.1.36

func (x *AccountAssociations_Azure) Reset()

func (*AccountAssociations_Azure) String added in v0.1.36

func (x *AccountAssociations_Azure) String() string

type AccountAssociations_Chainguard

type AccountAssociations_Chainguard struct {

	// service_bindings map from the Chainguard service principal to the
	// UIDP of the identity that service should assume. Constraints:
	// - The identity must live directly under "group",
	// - The identity must be a service_principal,
	// - The service_principal of the identity must match the key of this map.
	// Note that the key space of this must match the ServicePrincipal enum,
	// but the enum type itself cannot be used here because of:
	// https://groups.google.com/g/protobuf/c/ikeldBe60eI
	ServiceBindings map[string]string `` /* 180-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*AccountAssociations_Chainguard) Descriptor deprecated

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

Deprecated: Use AccountAssociations_Chainguard.ProtoReflect.Descriptor instead.

func (*AccountAssociations_Chainguard) GetServiceBindings

func (x *AccountAssociations_Chainguard) GetServiceBindings() map[string]string

func (*AccountAssociations_Chainguard) ProtoMessage

func (*AccountAssociations_Chainguard) ProtoMessage()

func (*AccountAssociations_Chainguard) ProtoReflect

func (*AccountAssociations_Chainguard) Reset

func (x *AccountAssociations_Chainguard) Reset()

func (*AccountAssociations_Chainguard) String

type AccountAssociations_GitHub added in v0.1.53

type AccountAssociations_GitHub struct {

	// app_installations maps app_id to the set of installations
	// for that app associated with this group.
	AppInstallations map[int64]*AccountAssociations_GitHubAppInstallations `` /* 184-byte string literal not displayed */
	// contains filtered or unexported fields
}

GitHub holds GitHub App installation associations for a group.

func (*AccountAssociations_GitHub) Descriptor deprecated added in v0.1.53

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

Deprecated: Use AccountAssociations_GitHub.ProtoReflect.Descriptor instead.

func (*AccountAssociations_GitHub) GetAppInstallations added in v0.1.53

func (*AccountAssociations_GitHub) ProtoMessage added in v0.1.53

func (*AccountAssociations_GitHub) ProtoMessage()

func (*AccountAssociations_GitHub) ProtoReflect added in v0.1.53

func (*AccountAssociations_GitHub) Reset added in v0.1.53

func (x *AccountAssociations_GitHub) Reset()

func (*AccountAssociations_GitHub) String added in v0.1.53

func (x *AccountAssociations_GitHub) String() string

type AccountAssociations_GitHubAppInstallations added in v0.1.53

type AccountAssociations_GitHubAppInstallations struct {
	Installations []*AccountAssociations_GitHubInstallation `protobuf:"bytes,1,rep,name=installations,proto3" json:"installations,omitempty"`
	// contains filtered or unexported fields
}

GitHubAppInstallations holds the installations for a single GitHub App.

func (*AccountAssociations_GitHubAppInstallations) Descriptor deprecated added in v0.1.53

Deprecated: Use AccountAssociations_GitHubAppInstallations.ProtoReflect.Descriptor instead.

func (*AccountAssociations_GitHubAppInstallations) GetInstallations added in v0.1.53

func (*AccountAssociations_GitHubAppInstallations) ProtoMessage added in v0.1.53

func (*AccountAssociations_GitHubAppInstallations) ProtoReflect added in v0.1.53

func (*AccountAssociations_GitHubAppInstallations) Reset added in v0.1.53

func (*AccountAssociations_GitHubAppInstallations) String added in v0.1.53

type AccountAssociations_GitHubInstallation

type AccountAssociations_GitHubInstallation struct {

	// installation_id is the GitHub App installation ID.
	InstallationId int64 `protobuf:"varint,1,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"`
	// name is the GitHub user/org name this installation belongs to.
	// Non-authoritative: stored for convenience only.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

GitHubInstallation is a single GitHub App installation.

func (*AccountAssociations_GitHubInstallation) Descriptor deprecated

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

Deprecated: Use AccountAssociations_GitHubInstallation.ProtoReflect.Descriptor instead.

func (*AccountAssociations_GitHubInstallation) GetInstallationId

func (x *AccountAssociations_GitHubInstallation) GetInstallationId() int64

func (*AccountAssociations_GitHubInstallation) GetName

func (*AccountAssociations_GitHubInstallation) ProtoMessage

func (*AccountAssociations_GitHubInstallation) ProtoReflect

func (*AccountAssociations_GitHubInstallation) Reset

func (*AccountAssociations_GitHubInstallation) String

type AccountAssociations_Google

type AccountAssociations_Google struct {
	ProjectId     string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ProjectNumber string `protobuf:"bytes,2,opt,name=project_number,json=projectNumber,proto3" json:"project_number,omitempty"`
	// contains filtered or unexported fields
}

func (*AccountAssociations_Google) Descriptor deprecated

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

Deprecated: Use AccountAssociations_Google.ProtoReflect.Descriptor instead.

func (*AccountAssociations_Google) GetProjectId

func (x *AccountAssociations_Google) GetProjectId() string

func (*AccountAssociations_Google) GetProjectNumber

func (x *AccountAssociations_Google) GetProjectNumber() string

func (*AccountAssociations_Google) ProtoMessage

func (*AccountAssociations_Google) ProtoMessage()

func (*AccountAssociations_Google) ProtoReflect

func (*AccountAssociations_Google) Reset

func (x *AccountAssociations_Google) Reset()

func (*AccountAssociations_Google) String

func (x *AccountAssociations_Google) String() string

type BatchDeleteExternalGroupRoleMappingsRequest added in v0.1.113

type BatchDeleteExternalGroupRoleMappingsRequest struct {

	// parent_id is the UIDP of the identity provider the mappings belong to.
	// Every id must be one of its mappings.
	ParentId string `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// ids are the UIDPs of the mappings to delete. Ids that no longer exist
	// under parent_id are silently skipped; ids whose parent differs from
	// parent_id return INVALID_ARGUMENT.
	Ids []string `protobuf:"bytes,2,rep,name=ids,proto3" json:"ids,omitempty"`
	// contains filtered or unexported fields
}

func (*BatchDeleteExternalGroupRoleMappingsRequest) Descriptor deprecated added in v0.1.113

Deprecated: Use BatchDeleteExternalGroupRoleMappingsRequest.ProtoReflect.Descriptor instead.

func (*BatchDeleteExternalGroupRoleMappingsRequest) GetIds added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsRequest) GetParentId added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsRequest) ProtoMessage added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsRequest) ProtoReflect added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsRequest) Reset added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsRequest) String added in v0.1.113

type BatchDeleteExternalGroupRoleMappingsResponse added in v0.1.113

type BatchDeleteExternalGroupRoleMappingsResponse struct {

	// parent_id is the UIDP of the identity provider the delete targeted. Echoed
	// so the operation can be attributed even when no mappings matched.
	ParentId string `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// The mappings that were deleted.
	Items []*ExternalGroupRoleMapping `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*BatchDeleteExternalGroupRoleMappingsResponse) CloudEventsExtension added in v0.1.113

func (x *BatchDeleteExternalGroupRoleMappingsResponse) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*BatchDeleteExternalGroupRoleMappingsResponse) CloudEventsSubject added in v0.1.113

func (x *BatchDeleteExternalGroupRoleMappingsResponse) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject. The identity provider (the mappings' common parent) is the subject — a single resource per the CloudEvents spec intent — while the deleted mapping IDs ride in the Occurrence body. Deriving from the echoed parent keeps the event well-formed even when no mappings matched.

func (*BatchDeleteExternalGroupRoleMappingsResponse) Descriptor deprecated added in v0.1.113

Deprecated: Use BatchDeleteExternalGroupRoleMappingsResponse.ProtoReflect.Descriptor instead.

func (*BatchDeleteExternalGroupRoleMappingsResponse) GetItems added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsResponse) GetParentId added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsResponse) ProtoMessage added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsResponse) ProtoReflect added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsResponse) Reset added in v0.1.113

func (*BatchDeleteExternalGroupRoleMappingsResponse) String added in v0.1.113

type CheckEligibilityRequest added in v0.1.55

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

CheckEligibilityRequest is the request message for CheckEligibility. It is intentionally sparse because CheckEligibility uses the email domain on the caller's token to perform the validation. No user-supplied arguments are necessary.

func (*CheckEligibilityRequest) Descriptor deprecated added in v0.1.55

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

Deprecated: Use CheckEligibilityRequest.ProtoReflect.Descriptor instead.

func (*CheckEligibilityRequest) ProtoMessage added in v0.1.55

func (*CheckEligibilityRequest) ProtoMessage()

func (*CheckEligibilityRequest) ProtoReflect added in v0.1.55

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

func (*CheckEligibilityRequest) Reset added in v0.1.55

func (x *CheckEligibilityRequest) Reset()

func (*CheckEligibilityRequest) String added in v0.1.55

func (x *CheckEligibilityRequest) String() string

type CheckEligibilityResponse added in v0.1.55

type CheckEligibilityResponse struct {

	// Indicates if the domain of the caller's email address is eligible
	// for email-domain-gated Groups flows.
	Eligible bool `protobuf:"varint,1,opt,name=eligible,proto3" json:"eligible,omitempty"`
	// contains filtered or unexported fields
}

CheckEligibilityResponse is the response message for CheckEligibility.

func (*CheckEligibilityResponse) Descriptor deprecated added in v0.1.55

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

Deprecated: Use CheckEligibilityResponse.ProtoReflect.Descriptor instead.

func (*CheckEligibilityResponse) GetEligible added in v0.1.55

func (x *CheckEligibilityResponse) GetEligible() bool

func (*CheckEligibilityResponse) ProtoMessage added in v0.1.55

func (*CheckEligibilityResponse) ProtoMessage()

func (*CheckEligibilityResponse) ProtoReflect added in v0.1.55

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

func (*CheckEligibilityResponse) Reset added in v0.1.55

func (x *CheckEligibilityResponse) Reset()

func (*CheckEligibilityResponse) String added in v0.1.55

func (x *CheckEligibilityResponse) String() string

type Clients

type Clients interface {
	Groups() GroupsClient
	GroupInvites() GroupInvitesClient
	Roles() RolesClient
	RoleBindings() RoleBindingsClient

	Identities() IdentitiesClient
	DeprecatedIdentities() events.IdentitiesClient
	IdentityProviders() IdentityProvidersClient

	AccountAssociations() GroupAccountAssociationsClient

	ExternalGroupRoleMappings() ExternalGroupRoleMappingsClient

	Terms() TermsClient

	Subscriptions() events.SubscriptionsClient

	Close() error
}
Example

ExampleClients demonstrates the Clients interface methods.

package main

import (
	"fmt"

	iam "chainguard.dev/sdk/proto/platform/iam/v1"
	"chainguard.dev/sdk/proto/platform/iam/v1/test"
)

func main() {
	// Create a mock IAM client for demonstration
	// In production, use iam.NewClients() with a real IAM URL and token
	var clients iam.Clients = &test.MockIAMClient{
		GroupsClient: test.MockGroupsClient{
			OnList: []test.GroupOnList{{
				Given: &iam.GroupFilter{},
				List: &iam.GroupList{
					Items: []*iam.Group{{
						Id:   "group-123",
						Name: "example-group",
					}},
				},
			}},
		},
	}

	// Access individual service clients
	groupsClient := clients.Groups()
	rolesClient := clients.Roles()
	identitiesClient := clients.Identities()

	fmt.Printf("Groups client: %T\n", groupsClient)
	fmt.Printf("Roles client: %T\n", rolesClient)
	fmt.Printf("Identities client: %T\n", identitiesClient)

	// Always close the client when done
	if err := clients.Close(); err != nil {
		fmt.Printf("Close error: %v\n", err)
	}

}
Output:
Groups client: *test.MockGroupsClient
Roles client: *test.MockRolesClient
Identities client: *test.MockIdentitiesClient

func NewClients

func NewClients(ctx context.Context, iamURL string, token string) (Clients, error)

func NewClientsFromConnection

func NewClientsFromConnection(conn *grpc.ClientConn) Clients

type CreateExternalGroupRoleMappingRequest added in v0.1.57

type CreateExternalGroupRoleMappingRequest struct {
	ParentId string                    `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	Mapping  *ExternalGroupRoleMapping `protobuf:"bytes,2,opt,name=mapping,proto3" json:"mapping,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateExternalGroupRoleMappingRequest) Descriptor deprecated added in v0.1.57

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

Deprecated: Use CreateExternalGroupRoleMappingRequest.ProtoReflect.Descriptor instead.

func (*CreateExternalGroupRoleMappingRequest) GetMapping added in v0.1.57

func (*CreateExternalGroupRoleMappingRequest) GetParentId added in v0.1.57

func (*CreateExternalGroupRoleMappingRequest) ProtoMessage added in v0.1.57

func (*CreateExternalGroupRoleMappingRequest) ProtoMessage()

func (*CreateExternalGroupRoleMappingRequest) ProtoReflect added in v0.1.57

func (*CreateExternalGroupRoleMappingRequest) Reset added in v0.1.57

func (*CreateExternalGroupRoleMappingRequest) String added in v0.1.57

type CreateGroupRequest

type CreateGroupRequest struct {

	// parent, The Group UIDP path under which the new Group resides.
	// This is effectively the iam_scope for Create requests, but because
	// we also allow users to create new "root" groups, we check the scoping
	// manually. Parent is allowed to be a prefix of a UIDP of a Group within
	// scope, or the name of a Group in scope.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Group to create.
	Group *Group `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateGroupRequest) Descriptor deprecated

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

Deprecated: Use CreateGroupRequest.ProtoReflect.Descriptor instead.

func (*CreateGroupRequest) GetGroup

func (x *CreateGroupRequest) GetGroup() *Group

func (*CreateGroupRequest) GetParent

func (x *CreateGroupRequest) GetParent() string

func (*CreateGroupRequest) ProtoMessage

func (*CreateGroupRequest) ProtoMessage()

func (*CreateGroupRequest) ProtoReflect

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

func (*CreateGroupRequest) Reset

func (x *CreateGroupRequest) Reset()

func (*CreateGroupRequest) String

func (x *CreateGroupRequest) String() string

type CreateIdentityProviderRequest

type CreateIdentityProviderRequest struct {

	// parent_id is the exact UIDP of the IAM group to nest this identity provider under
	ParentId         string            `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	IdentityProvider *IdentityProvider `protobuf:"bytes,2,opt,name=identity_provider,json=identityProvider,proto3" json:"identity_provider,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateIdentityProviderRequest) Descriptor deprecated

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

Deprecated: Use CreateIdentityProviderRequest.ProtoReflect.Descriptor instead.

func (*CreateIdentityProviderRequest) GetIdentityProvider

func (x *CreateIdentityProviderRequest) GetIdentityProvider() *IdentityProvider

func (*CreateIdentityProviderRequest) GetParentId

func (x *CreateIdentityProviderRequest) GetParentId() string

func (*CreateIdentityProviderRequest) ProtoMessage

func (*CreateIdentityProviderRequest) ProtoMessage()

func (*CreateIdentityProviderRequest) ProtoReflect

func (*CreateIdentityProviderRequest) Reset

func (x *CreateIdentityProviderRequest) Reset()

func (*CreateIdentityProviderRequest) String

type CreateIdentityRequest

type CreateIdentityRequest struct {

	// parent_id, The Group UIDP path under which the new Identity resides.
	ParentId string `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// Identity to create.
	Identity *Identity `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateIdentityRequest) Descriptor deprecated

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

Deprecated: Use CreateIdentityRequest.ProtoReflect.Descriptor instead.

func (*CreateIdentityRequest) GetIdentity

func (x *CreateIdentityRequest) GetIdentity() *Identity

func (*CreateIdentityRequest) GetParentId

func (x *CreateIdentityRequest) GetParentId() string

func (*CreateIdentityRequest) ProtoMessage

func (*CreateIdentityRequest) ProtoMessage()

func (*CreateIdentityRequest) ProtoReflect

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

func (*CreateIdentityRequest) Reset

func (x *CreateIdentityRequest) Reset()

func (*CreateIdentityRequest) String

func (x *CreateIdentityRequest) String() string

type CreateRoleBindingBatchRequest added in v0.1.38

type CreateRoleBindingBatchRequest struct {

	// parent, The Group UIDP path under which the new RoleBinding resides.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// RoleBinding to create.
	RoleBindings []*RoleBinding `protobuf:"bytes,2,rep,name=role_bindings,json=roleBindings,proto3" json:"role_bindings,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateRoleBindingBatchRequest) Descriptor deprecated added in v0.1.38

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

Deprecated: Use CreateRoleBindingBatchRequest.ProtoReflect.Descriptor instead.

func (*CreateRoleBindingBatchRequest) GetParent added in v0.1.38

func (x *CreateRoleBindingBatchRequest) GetParent() string

func (*CreateRoleBindingBatchRequest) GetRoleBindings added in v0.1.38

func (x *CreateRoleBindingBatchRequest) GetRoleBindings() []*RoleBinding

func (*CreateRoleBindingBatchRequest) ProtoMessage added in v0.1.38

func (*CreateRoleBindingBatchRequest) ProtoMessage()

func (*CreateRoleBindingBatchRequest) ProtoReflect added in v0.1.38

func (*CreateRoleBindingBatchRequest) Reset added in v0.1.38

func (x *CreateRoleBindingBatchRequest) Reset()

func (*CreateRoleBindingBatchRequest) String added in v0.1.38

type CreateRoleBindingRequest

type CreateRoleBindingRequest struct {

	// parent, The Group UIDP path under which the new RoleBinding resides.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// RoleBinding to create.
	RoleBinding *RoleBinding `protobuf:"bytes,2,opt,name=role_binding,json=roleBinding,proto3" json:"role_binding,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateRoleBindingRequest) Descriptor deprecated

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

Deprecated: Use CreateRoleBindingRequest.ProtoReflect.Descriptor instead.

func (*CreateRoleBindingRequest) GetParent

func (x *CreateRoleBindingRequest) GetParent() string

func (*CreateRoleBindingRequest) GetRoleBinding

func (x *CreateRoleBindingRequest) GetRoleBinding() *RoleBinding

func (*CreateRoleBindingRequest) ProtoMessage

func (*CreateRoleBindingRequest) ProtoMessage()

func (*CreateRoleBindingRequest) ProtoReflect

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

func (*CreateRoleBindingRequest) Reset

func (x *CreateRoleBindingRequest) Reset()

func (*CreateRoleBindingRequest) String

func (x *CreateRoleBindingRequest) String() string

type CreateRoleRequest

type CreateRoleRequest struct {

	// parent_id, The Group UIDP path under which the new Role resides.
	ParentId string `protobuf:"bytes,1,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// Role to create.
	Role *Role `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateRoleRequest) Descriptor deprecated

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

Deprecated: Use CreateRoleRequest.ProtoReflect.Descriptor instead.

func (*CreateRoleRequest) GetParentId

func (x *CreateRoleRequest) GetParentId() string

func (*CreateRoleRequest) GetRole

func (x *CreateRoleRequest) GetRole() *Role

func (*CreateRoleRequest) ProtoMessage

func (*CreateRoleRequest) ProtoMessage()

func (*CreateRoleRequest) ProtoReflect

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

func (*CreateRoleRequest) Reset

func (x *CreateRoleRequest) Reset()

func (*CreateRoleRequest) String

func (x *CreateRoleRequest) String() string

type DeleteAccountAssociationsRequest

type DeleteAccountAssociationsRequest struct {

	// group is the exact UIDP of the group whose associations we want to delete.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteAccountAssociationsRequest) CloudEventsExtension

func (x *DeleteAccountAssociationsRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteAccountAssociationsRequest) CloudEventsRedact

func (x *DeleteAccountAssociationsRequest) CloudEventsRedact() any

CloudEventsRedact implements chainguard.dev/sdk/events/Redactable.Redact.

func (*DeleteAccountAssociationsRequest) CloudEventsSubject

func (x *DeleteAccountAssociationsRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteAccountAssociationsRequest) Descriptor deprecated

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

Deprecated: Use DeleteAccountAssociationsRequest.ProtoReflect.Descriptor instead.

func (*DeleteAccountAssociationsRequest) GetGroup

func (*DeleteAccountAssociationsRequest) ProtoMessage

func (*DeleteAccountAssociationsRequest) ProtoMessage()

func (*DeleteAccountAssociationsRequest) ProtoReflect

func (*DeleteAccountAssociationsRequest) Reset

func (*DeleteAccountAssociationsRequest) String

type DeleteExternalGroupRoleMappingRequest added in v0.1.57

type DeleteExternalGroupRoleMappingRequest struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteExternalGroupRoleMappingRequest) CloudEventsExtension added in v0.1.57

func (x *DeleteExternalGroupRoleMappingRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteExternalGroupRoleMappingRequest) CloudEventsRedact added in v0.1.57

func (x *DeleteExternalGroupRoleMappingRequest) CloudEventsRedact() any

CloudEventsRedact implements chainguard.dev/sdk/events/Redactable.Redact.

func (*DeleteExternalGroupRoleMappingRequest) CloudEventsSubject added in v0.1.57

func (x *DeleteExternalGroupRoleMappingRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteExternalGroupRoleMappingRequest) Descriptor deprecated added in v0.1.57

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

Deprecated: Use DeleteExternalGroupRoleMappingRequest.ProtoReflect.Descriptor instead.

func (*DeleteExternalGroupRoleMappingRequest) GetId added in v0.1.57

func (*DeleteExternalGroupRoleMappingRequest) ProtoMessage added in v0.1.57

func (*DeleteExternalGroupRoleMappingRequest) ProtoMessage()

func (*DeleteExternalGroupRoleMappingRequest) ProtoReflect added in v0.1.57

func (*DeleteExternalGroupRoleMappingRequest) Reset added in v0.1.57

func (*DeleteExternalGroupRoleMappingRequest) String added in v0.1.57

type DeleteGroupInviteRequest

type DeleteGroupInviteRequest struct {

	// id is the exact UIDP of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteGroupInviteRequest) CloudEventsExtension

func (x *DeleteGroupInviteRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteGroupInviteRequest) CloudEventsSubject

func (x *DeleteGroupInviteRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteGroupInviteRequest) Descriptor deprecated

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

Deprecated: Use DeleteGroupInviteRequest.ProtoReflect.Descriptor instead.

func (*DeleteGroupInviteRequest) GetId

func (x *DeleteGroupInviteRequest) GetId() string

func (*DeleteGroupInviteRequest) ProtoMessage

func (*DeleteGroupInviteRequest) ProtoMessage()

func (*DeleteGroupInviteRequest) ProtoReflect

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

func (*DeleteGroupInviteRequest) Reset

func (x *DeleteGroupInviteRequest) Reset()

func (*DeleteGroupInviteRequest) String

func (x *DeleteGroupInviteRequest) String() string

type DeleteGroupRequest

type DeleteGroupRequest struct {

	// id is the exact UIDP of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteGroupRequest) CloudEventsExtension

func (x *DeleteGroupRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteGroupRequest) CloudEventsSubject

func (x *DeleteGroupRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteGroupRequest) Descriptor deprecated

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

Deprecated: Use DeleteGroupRequest.ProtoReflect.Descriptor instead.

func (*DeleteGroupRequest) GetId

func (x *DeleteGroupRequest) GetId() string

func (*DeleteGroupRequest) ProtoMessage

func (*DeleteGroupRequest) ProtoMessage()

func (*DeleteGroupRequest) ProtoReflect

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

func (*DeleteGroupRequest) Reset

func (x *DeleteGroupRequest) Reset()

func (*DeleteGroupRequest) String

func (x *DeleteGroupRequest) String() string

type DeleteIdentityProviderRequest

type DeleteIdentityProviderRequest struct {

	// id is the exact UIDP of the IdP
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteIdentityProviderRequest) CloudEventsExtension

func (x *DeleteIdentityProviderRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteIdentityProviderRequest) CloudEventsSubject

func (x *DeleteIdentityProviderRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteIdentityProviderRequest) Descriptor deprecated

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

Deprecated: Use DeleteIdentityProviderRequest.ProtoReflect.Descriptor instead.

func (*DeleteIdentityProviderRequest) GetId

func (*DeleteIdentityProviderRequest) ProtoMessage

func (*DeleteIdentityProviderRequest) ProtoMessage()

func (*DeleteIdentityProviderRequest) ProtoReflect

func (*DeleteIdentityProviderRequest) Reset

func (x *DeleteIdentityProviderRequest) Reset()

func (*DeleteIdentityProviderRequest) String

type DeleteIdentityRequest

type DeleteIdentityRequest struct {

	// ID, UIDP of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteIdentityRequest) CloudEventsExtension

func (x *DeleteIdentityRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteIdentityRequest) CloudEventsSubject

func (x *DeleteIdentityRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteIdentityRequest) Descriptor deprecated

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

Deprecated: Use DeleteIdentityRequest.ProtoReflect.Descriptor instead.

func (*DeleteIdentityRequest) GetId

func (x *DeleteIdentityRequest) GetId() string

func (*DeleteIdentityRequest) ProtoMessage

func (*DeleteIdentityRequest) ProtoMessage()

func (*DeleteIdentityRequest) ProtoReflect

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

func (*DeleteIdentityRequest) Reset

func (x *DeleteIdentityRequest) Reset()

func (*DeleteIdentityRequest) String

func (x *DeleteIdentityRequest) String() string

type DeleteRoleBindingRequest

type DeleteRoleBindingRequest struct {

	// id is the exact UID of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteRoleBindingRequest) CloudEventsExtension

func (x *DeleteRoleBindingRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteRoleBindingRequest) CloudEventsSubject

func (x *DeleteRoleBindingRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteRoleBindingRequest) Descriptor deprecated

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

Deprecated: Use DeleteRoleBindingRequest.ProtoReflect.Descriptor instead.

func (*DeleteRoleBindingRequest) GetId

func (x *DeleteRoleBindingRequest) GetId() string

func (*DeleteRoleBindingRequest) ProtoMessage

func (*DeleteRoleBindingRequest) ProtoMessage()

func (*DeleteRoleBindingRequest) ProtoReflect

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

func (*DeleteRoleBindingRequest) Reset

func (x *DeleteRoleBindingRequest) Reset()

func (*DeleteRoleBindingRequest) String

func (x *DeleteRoleBindingRequest) String() string

type DeleteRoleRequest

type DeleteRoleRequest struct {

	// id is the exact UIDP of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteRoleRequest) CloudEventsExtension added in v0.1.168

func (x *DeleteRoleRequest) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*DeleteRoleRequest) CloudEventsSubject added in v0.1.168

func (x *DeleteRoleRequest) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*DeleteRoleRequest) Descriptor deprecated

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

Deprecated: Use DeleteRoleRequest.ProtoReflect.Descriptor instead.

func (*DeleteRoleRequest) GetId

func (x *DeleteRoleRequest) GetId() string

func (*DeleteRoleRequest) ProtoMessage

func (*DeleteRoleRequest) ProtoMessage()

func (*DeleteRoleRequest) ProtoReflect

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

func (*DeleteRoleRequest) Reset

func (x *DeleteRoleRequest) Reset()

func (*DeleteRoleRequest) String

func (x *DeleteRoleRequest) String() string

type ExternalGroupRoleMapping added in v0.1.57

type ExternalGroupRoleMapping struct {

	// id is the UIDP of this mapping. It is rooted under the owning
	// IdentityProvider's UIDP ({org}/{idp}/{mapping}).
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// identity_provider_uidp is the UIDP of the IdentityProvider this mapping belongs to.
	IdentityProviderUidp string `protobuf:"bytes,2,opt,name=identity_provider_uidp,json=identityProviderUidp,proto3" json:"identity_provider_uidp,omitempty"`
	// external_group_id is the IdP's identifier for the group.
	ExternalGroupId string `protobuf:"bytes,3,opt,name=external_group_id,json=externalGroupId,proto3" json:"external_group_id,omitempty"`
	// role_uidp is the UIDP of the Chainguard Role to grant.
	RoleUidp string `protobuf:"bytes,4,opt,name=role_uidp,json=roleUidp,proto3" json:"role_uidp,omitempty"`
	// scope is the UIDP of the Chainguard Group where the role applies.
	// Today it must equal the organization root UIDP; it is modeled as a group
	// UIDP (rather than an org_id) so role mappings can later be scoped to a
	// sub-org or folder without a schema change.
	Scope string `protobuf:"bytes,5,opt,name=scope,proto3" json:"scope,omitempty"`
	// When this mapping was created.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// contains filtered or unexported fields
}

func (*ExternalGroupRoleMapping) CloudEventsExtension added in v0.1.57

func (x *ExternalGroupRoleMapping) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*ExternalGroupRoleMapping) CloudEventsSubject added in v0.1.57

func (x *ExternalGroupRoleMapping) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*ExternalGroupRoleMapping) Descriptor deprecated added in v0.1.57

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

Deprecated: Use ExternalGroupRoleMapping.ProtoReflect.Descriptor instead.

func (*ExternalGroupRoleMapping) GetCreatedAt added in v0.1.57

func (x *ExternalGroupRoleMapping) GetCreatedAt() *timestamppb.Timestamp

func (*ExternalGroupRoleMapping) GetExternalGroupId added in v0.1.57

func (x *ExternalGroupRoleMapping) GetExternalGroupId() string

func (*ExternalGroupRoleMapping) GetId added in v0.1.57

func (x *ExternalGroupRoleMapping) GetId() string

func (*ExternalGroupRoleMapping) GetIdentityProviderUidp added in v0.1.57

func (x *ExternalGroupRoleMapping) GetIdentityProviderUidp() string

func (*ExternalGroupRoleMapping) GetRoleUidp added in v0.1.57

func (x *ExternalGroupRoleMapping) GetRoleUidp() string

func (*ExternalGroupRoleMapping) GetScope added in v0.1.57

func (x *ExternalGroupRoleMapping) GetScope() string

func (*ExternalGroupRoleMapping) ProtoMessage added in v0.1.57

func (*ExternalGroupRoleMapping) ProtoMessage()

func (*ExternalGroupRoleMapping) ProtoReflect added in v0.1.57

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

func (*ExternalGroupRoleMapping) Reset added in v0.1.57

func (x *ExternalGroupRoleMapping) Reset()

func (*ExternalGroupRoleMapping) String added in v0.1.57

func (x *ExternalGroupRoleMapping) String() string

type ExternalGroupRoleMappingFilter added in v0.1.57

type ExternalGroupRoleMappingFilter struct {
	Uidp *v1.UIDPFilter `protobuf:"bytes,1,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// identity_provider_uidp filters to a specific IdentityProvider.
	IdentityProviderUidp string `protobuf:"bytes,2,opt,name=identity_provider_uidp,json=identityProviderUidp,proto3" json:"identity_provider_uidp,omitempty"`
	// contains filtered or unexported fields
}

func (*ExternalGroupRoleMappingFilter) Descriptor deprecated added in v0.1.57

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

Deprecated: Use ExternalGroupRoleMappingFilter.ProtoReflect.Descriptor instead.

func (*ExternalGroupRoleMappingFilter) GetIdentityProviderUidp added in v0.1.57

func (x *ExternalGroupRoleMappingFilter) GetIdentityProviderUidp() string

func (*ExternalGroupRoleMappingFilter) GetUidp added in v0.1.57

func (*ExternalGroupRoleMappingFilter) ProtoMessage added in v0.1.57

func (*ExternalGroupRoleMappingFilter) ProtoMessage()

func (*ExternalGroupRoleMappingFilter) ProtoReflect added in v0.1.57

func (*ExternalGroupRoleMappingFilter) Reset added in v0.1.57

func (x *ExternalGroupRoleMappingFilter) Reset()

func (*ExternalGroupRoleMappingFilter) String added in v0.1.57

type ExternalGroupRoleMappingList added in v0.1.57

type ExternalGroupRoleMappingList struct {
	Items []*ExternalGroupRoleMapping `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*ExternalGroupRoleMappingList) Descriptor deprecated added in v0.1.57

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

Deprecated: Use ExternalGroupRoleMappingList.ProtoReflect.Descriptor instead.

func (*ExternalGroupRoleMappingList) GetItems added in v0.1.57

func (*ExternalGroupRoleMappingList) ProtoMessage added in v0.1.57

func (*ExternalGroupRoleMappingList) ProtoMessage()

func (*ExternalGroupRoleMappingList) ProtoReflect added in v0.1.57

func (*ExternalGroupRoleMappingList) Reset added in v0.1.57

func (x *ExternalGroupRoleMappingList) Reset()

func (*ExternalGroupRoleMappingList) String added in v0.1.57

type ExternalGroupRoleMappingsClient added in v0.1.57

type ExternalGroupRoleMappingsClient interface {
	Create(ctx context.Context, in *CreateExternalGroupRoleMappingRequest, opts ...grpc.CallOption) (*ExternalGroupRoleMapping, error)
	Get(ctx context.Context, in *GetExternalGroupRoleMappingRequest, opts ...grpc.CallOption) (*ExternalGroupRoleMapping, error)
	List(ctx context.Context, in *ExternalGroupRoleMappingFilter, opts ...grpc.CallOption) (*ExternalGroupRoleMappingList, error)
	Delete(ctx context.Context, in *DeleteExternalGroupRoleMappingRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// BatchDelete deletes the named mappings under an identity provider in one
	// call, for cleanup, offboarding, or teardown.
	BatchDelete(ctx context.Context, in *BatchDeleteExternalGroupRoleMappingsRequest, opts ...grpc.CallOption) (*BatchDeleteExternalGroupRoleMappingsResponse, error)
}

ExternalGroupRoleMappingsClient is the client API for ExternalGroupRoleMappings 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.

ExternalGroupRoleMappings manages mappings from IdP groups to Chainguard roles. There is intentionally no Update RPC: every field is immutable, so a change is expressed as a Delete of the old mapping and a Create of the new one.

func NewExternalGroupRoleMappingsClient added in v0.1.57

func NewExternalGroupRoleMappingsClient(cc grpc.ClientConnInterface) ExternalGroupRoleMappingsClient

type ExternalGroupRoleMappingsServer added in v0.1.57

type ExternalGroupRoleMappingsServer interface {
	Create(context.Context, *CreateExternalGroupRoleMappingRequest) (*ExternalGroupRoleMapping, error)
	Get(context.Context, *GetExternalGroupRoleMappingRequest) (*ExternalGroupRoleMapping, error)
	List(context.Context, *ExternalGroupRoleMappingFilter) (*ExternalGroupRoleMappingList, error)
	Delete(context.Context, *DeleteExternalGroupRoleMappingRequest) (*emptypb.Empty, error)
	// BatchDelete deletes the named mappings under an identity provider in one
	// call, for cleanup, offboarding, or teardown.
	BatchDelete(context.Context, *BatchDeleteExternalGroupRoleMappingsRequest) (*BatchDeleteExternalGroupRoleMappingsResponse, error)
	// contains filtered or unexported methods
}

ExternalGroupRoleMappingsServer is the server API for ExternalGroupRoleMappings service. All implementations must embed UnimplementedExternalGroupRoleMappingsServer for forward compatibility.

ExternalGroupRoleMappings manages mappings from IdP groups to Chainguard roles. There is intentionally no Update RPC: every field is immutable, so a change is expressed as a Delete of the old mapping and a Create of the new one.

type GenerateScimTokenRequest added in v0.1.155

type GenerateScimTokenRequest struct {

	// identity_provider_id is the UIDP of the identity provider to generate a
	// SCIM bearer token for.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// expire_time is an optional expiry for the generated token, at most two
	// years from now. When neither this nor never_expires is set, the server
	// defaults to one year.
	ExpireTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"`
	// never_expires requests a token without a planned expiry. Setting this
	// together with expire_time is invalid.
	NeverExpires bool `protobuf:"varint,3,opt,name=never_expires,json=neverExpires,proto3" json:"never_expires,omitempty"`
	// contains filtered or unexported fields
}

GenerateScimTokenRequest asks for an identity provider's first SCIM bearer token.

func (*GenerateScimTokenRequest) Descriptor deprecated added in v0.1.155

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

Deprecated: Use GenerateScimTokenRequest.ProtoReflect.Descriptor instead.

func (*GenerateScimTokenRequest) GetExpireTime added in v0.1.155

func (x *GenerateScimTokenRequest) GetExpireTime() *timestamppb.Timestamp

func (*GenerateScimTokenRequest) GetIdentityProviderId added in v0.1.155

func (x *GenerateScimTokenRequest) GetIdentityProviderId() string

func (*GenerateScimTokenRequest) GetNeverExpires added in v0.1.155

func (x *GenerateScimTokenRequest) GetNeverExpires() bool

func (*GenerateScimTokenRequest) ProtoMessage added in v0.1.155

func (*GenerateScimTokenRequest) ProtoMessage()

func (*GenerateScimTokenRequest) ProtoReflect added in v0.1.155

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

func (*GenerateScimTokenRequest) Reset added in v0.1.155

func (x *GenerateScimTokenRequest) Reset()

func (*GenerateScimTokenRequest) String added in v0.1.155

func (x *GenerateScimTokenRequest) String() string

type GenerateScimTokenResponse added in v0.1.155

type GenerateScimTokenResponse struct {

	// token is the plaintext SCIM bearer token, returned exactly once. Store it
	// now: it is never retrievable again, and only its SHA-256 digest is
	// persisted. Format: "cgscim_" followed by 64 hexadecimal characters.
	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	// endpoint_url is the SCIM endpoint the identity provider must be configured
	// to call.
	EndpointUrl string `protobuf:"bytes,2,opt,name=endpoint_url,json=endpointUrl,proto3" json:"endpoint_url,omitempty"`
	// expire_time is the effective server-selected token expiry. Unset only for
	// never_expires.
	ExpireTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"`
	// identity_provider_id is the UIDP the token was generated for, echoed for
	// attribution.
	IdentityProviderId string `protobuf:"bytes,4,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// etag is the opaque version of the SCIM configuration after this call, for
	// optimistic concurrency on subsequent lifecycle mutations.
	Etag string `protobuf:"bytes,5,opt,name=etag,proto3" json:"etag,omitempty"`
	// contains filtered or unexported fields
}

GenerateScimTokenResponse carries the one-time plaintext token and the SCIM endpoint to configure in the identity provider.

func (*GenerateScimTokenResponse) CloudEventsAsync added in v0.1.155

func (x *GenerateScimTokenResponse) CloudEventsAsync() bool

func (*GenerateScimTokenResponse) CloudEventsExtension added in v0.1.155

func (x *GenerateScimTokenResponse) CloudEventsExtension(key string) (string, bool)

func (*GenerateScimTokenResponse) CloudEventsRedact added in v0.1.155

func (x *GenerateScimTokenResponse) CloudEventsRedact() any

CloudEventsRedact omits the reveal-once token from the audit event; only the non-secret result fields are carried.

func (*GenerateScimTokenResponse) CloudEventsSubject added in v0.1.155

func (x *GenerateScimTokenResponse) CloudEventsSubject() string

func (*GenerateScimTokenResponse) Descriptor deprecated added in v0.1.155

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

Deprecated: Use GenerateScimTokenResponse.ProtoReflect.Descriptor instead.

func (*GenerateScimTokenResponse) GetEndpointUrl added in v0.1.155

func (x *GenerateScimTokenResponse) GetEndpointUrl() string

func (*GenerateScimTokenResponse) GetEtag added in v0.1.155

func (x *GenerateScimTokenResponse) GetEtag() string

func (*GenerateScimTokenResponse) GetExpireTime added in v0.1.155

func (x *GenerateScimTokenResponse) GetExpireTime() *timestamppb.Timestamp

func (*GenerateScimTokenResponse) GetIdentityProviderId added in v0.1.155

func (x *GenerateScimTokenResponse) GetIdentityProviderId() string

func (*GenerateScimTokenResponse) GetToken added in v0.1.155

func (x *GenerateScimTokenResponse) GetToken() string

func (*GenerateScimTokenResponse) ProtoMessage added in v0.1.155

func (*GenerateScimTokenResponse) ProtoMessage()

func (*GenerateScimTokenResponse) ProtoReflect added in v0.1.155

func (*GenerateScimTokenResponse) Reset added in v0.1.155

func (x *GenerateScimTokenResponse) Reset()

func (*GenerateScimTokenResponse) String added in v0.1.155

func (x *GenerateScimTokenResponse) String() string

type GetExternalGroupRoleMappingRequest added in v0.1.57

type GetExternalGroupRoleMappingRequest struct {
	Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
	// contains filtered or unexported fields
}

func (*GetExternalGroupRoleMappingRequest) Descriptor deprecated added in v0.1.57

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

Deprecated: Use GetExternalGroupRoleMappingRequest.ProtoReflect.Descriptor instead.

func (*GetExternalGroupRoleMappingRequest) GetUid added in v0.1.57

func (*GetExternalGroupRoleMappingRequest) ProtoMessage added in v0.1.57

func (*GetExternalGroupRoleMappingRequest) ProtoMessage()

func (*GetExternalGroupRoleMappingRequest) ProtoReflect added in v0.1.57

func (*GetExternalGroupRoleMappingRequest) Reset added in v0.1.57

func (*GetExternalGroupRoleMappingRequest) String added in v0.1.57

type Group

type Group struct {

	// id, The group UIDP under which this group resides.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// name, human readable name of group.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// description, human readable of group.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// resource_limits indicate the maximum number of resources allowed for this group by type.
	ResourceLimits map[string]int32 `` /* 178-byte string literal not displayed */
	// verified means we've verified the owners of this organization. Restrictions include:
	// - Only organizations (root groups) can be verified
	// - Property can only be set by manually by Chainguardians
	// - If verified is set, the organizations name field must be globally unique
	// - If verified is set the organizations name should be a domain name
	Verified bool `protobuf:"varint,5,opt,name=verified,proto3" json:"verified,omitempty"`
	// kind is the organization kind. For root groups this is their own kind;
	// for subgroups it is inherited from the root group.
	Kind OrgKind `protobuf:"varint,6,opt,name=kind,proto3,enum=chainguard.platform.iam.OrgKind" json:"kind,omitempty"`
	// status is the provisioning status of the organization.
	Status OrgStatus `protobuf:"varint,7,opt,name=status,proto3,enum=chainguard.platform.iam.OrgStatus" json:"status,omitempty"`
	// contains filtered or unexported fields
}

func (*Group) CloudEventsExtension

func (x *Group) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*Group) CloudEventsSubject

func (x *Group) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*Group) Descriptor deprecated

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

Deprecated: Use Group.ProtoReflect.Descriptor instead.

func (*Group) GetDescription

func (x *Group) GetDescription() string

func (*Group) GetId

func (x *Group) GetId() string

func (*Group) GetKind added in v0.1.53

func (x *Group) GetKind() OrgKind

func (*Group) GetName

func (x *Group) GetName() string

func (*Group) GetResourceLimits

func (x *Group) GetResourceLimits() map[string]int32

func (*Group) GetStatus added in v0.1.53

func (x *Group) GetStatus() OrgStatus

func (*Group) GetVerified

func (x *Group) GetVerified() bool

func (*Group) ProtoMessage

func (*Group) ProtoMessage()

func (*Group) ProtoReflect

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

func (*Group) Reset

func (x *Group) Reset()

func (*Group) String

func (x *Group) String() string

type GroupAccountAssociationsClient

GroupAccountAssociationsClient is the client API for GroupAccountAssociations 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.

type GroupAccountAssociationsServer

GroupAccountAssociationsServer is the server API for GroupAccountAssociations service. All implementations must embed UnimplementedGroupAccountAssociationsServer for forward compatibility.

type GroupFilter

type GroupFilter struct {

	// id is the exact UID of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// uidp filters records based on their position in the group hierarchy.
	Uidp *v1.UIDPFilter `protobuf:"bytes,2,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// name is the exact name of the record.
	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupFilter) Descriptor deprecated

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

Deprecated: Use GroupFilter.ProtoReflect.Descriptor instead.

func (*GroupFilter) GetId

func (x *GroupFilter) GetId() string

func (*GroupFilter) GetName

func (x *GroupFilter) GetName() string

func (*GroupFilter) GetUidp

func (x *GroupFilter) GetUidp() *v1.UIDPFilter

func (*GroupFilter) ProtoMessage

func (*GroupFilter) ProtoMessage()

func (*GroupFilter) ProtoReflect

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

func (*GroupFilter) Reset

func (x *GroupFilter) Reset()

func (*GroupFilter) String

func (x *GroupFilter) String() string

type GroupInvite

type GroupInvite struct {

	// id, The group UIDP under which this invite resides.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// expiration, timestamp this invite becomes no longer valid.
	Expiration *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiration,proto3" json:"expiration,omitempty"`
	// key_id is used to identify the verification key for this code.
	KeyId string `protobuf:"bytes,3,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
	// role is the role the invited identity will be role-bound to the group with.
	Role *Role `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	// code is the json-encoded authentication code.
	Code string `protobuf:"bytes,5,opt,name=code,proto3" json:"code,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupInvite) CloudEventsExtension

func (x *GroupInvite) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*GroupInvite) CloudEventsRedact

func (x *GroupInvite) CloudEventsRedact() any

CloudEventsRedact implements chainguard.dev/sdk/events/Redactable.CloudEventsRedact.

func (*GroupInvite) CloudEventsSubject

func (x *GroupInvite) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*GroupInvite) Descriptor deprecated

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

Deprecated: Use GroupInvite.ProtoReflect.Descriptor instead.

func (*GroupInvite) GetCode

func (x *GroupInvite) GetCode() string

func (*GroupInvite) GetExpiration

func (x *GroupInvite) GetExpiration() *timestamppb.Timestamp

func (*GroupInvite) GetId

func (x *GroupInvite) GetId() string

func (*GroupInvite) GetKeyId

func (x *GroupInvite) GetKeyId() string

func (*GroupInvite) GetRole

func (x *GroupInvite) GetRole() *Role

func (*GroupInvite) ProtoMessage

func (*GroupInvite) ProtoMessage()

func (*GroupInvite) ProtoReflect

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

func (*GroupInvite) Reset

func (x *GroupInvite) Reset()

func (*GroupInvite) String

func (x *GroupInvite) String() string

type GroupInviteFilter

type GroupInviteFilter struct {

	// group is used to identify the group this record is rooted under.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// id is the exact UID of the record.
	Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// key_id is the identify the verification key for this code.
	KeyId string `protobuf:"bytes,3,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupInviteFilter) Descriptor deprecated

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

Deprecated: Use GroupInviteFilter.ProtoReflect.Descriptor instead.

func (*GroupInviteFilter) GetGroup

func (x *GroupInviteFilter) GetGroup() string

func (*GroupInviteFilter) GetId

func (x *GroupInviteFilter) GetId() string

func (*GroupInviteFilter) GetKeyId

func (x *GroupInviteFilter) GetKeyId() string

func (*GroupInviteFilter) ProtoMessage

func (*GroupInviteFilter) ProtoMessage()

func (*GroupInviteFilter) ProtoReflect

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

func (*GroupInviteFilter) Reset

func (x *GroupInviteFilter) Reset()

func (*GroupInviteFilter) String

func (x *GroupInviteFilter) String() string

type GroupInviteList

type GroupInviteList struct {
	Items []*StoredGroupInvite `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupInviteList) Descriptor deprecated

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

Deprecated: Use GroupInviteList.ProtoReflect.Descriptor instead.

func (*GroupInviteList) GetItems

func (x *GroupInviteList) GetItems() []*StoredGroupInvite

func (*GroupInviteList) ProtoMessage

func (*GroupInviteList) ProtoMessage()

func (*GroupInviteList) ProtoReflect

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

func (*GroupInviteList) Reset

func (x *GroupInviteList) Reset()

func (*GroupInviteList) String

func (x *GroupInviteList) String() string

type GroupInviteRequest

type GroupInviteRequest struct {

	// group, The Group UIDP path under which the new group Invite targets.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// expiration, timestamp this invite becomes no longer valid.
	Ttl *durationpb.Duration `protobuf:"bytes,2,opt,name=ttl,proto3" json:"ttl,omitempty"`
	// role is the Role UIDP the invited identity will be role-bound to the group with.
	Role string `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"`
	// email is the exact email address that may accept this invite code, if specified.
	Email string `protobuf:"bytes,4,opt,name=email,proto3" json:"email,omitempty"`
	// if single_use is set to true, then the invite will be deleted after a user joins the group.
	SingleUse bool `protobuf:"varint,5,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupInviteRequest) Descriptor deprecated

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

Deprecated: Use GroupInviteRequest.ProtoReflect.Descriptor instead.

func (*GroupInviteRequest) GetEmail

func (x *GroupInviteRequest) GetEmail() string

func (*GroupInviteRequest) GetGroup

func (x *GroupInviteRequest) GetGroup() string

func (*GroupInviteRequest) GetRole

func (x *GroupInviteRequest) GetRole() string

func (*GroupInviteRequest) GetSingleUse added in v0.1.20

func (x *GroupInviteRequest) GetSingleUse() bool

func (*GroupInviteRequest) GetTtl

func (x *GroupInviteRequest) GetTtl() *durationpb.Duration

func (*GroupInviteRequest) ProtoMessage

func (*GroupInviteRequest) ProtoMessage()

func (*GroupInviteRequest) ProtoReflect

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

func (*GroupInviteRequest) Reset

func (x *GroupInviteRequest) Reset()

func (*GroupInviteRequest) String

func (x *GroupInviteRequest) String() string

type GroupInvitesClient

type GroupInvitesClient interface {
	Create(ctx context.Context, in *GroupInviteRequest, opts ...grpc.CallOption) (*GroupInvite, error)
	// CreateWithGroup is an internal API for creating a new root group
	// where the caller is NOT added as an Owner, but an invite code to
	// become the owner of the group is returned.  This is not intended
	// for external consumption, and will not be supported.
	// Do not use this!
	CreateWithGroup(ctx context.Context, in *GroupInviteRequest, opts ...grpc.CallOption) (*GroupInvite, error)
	List(ctx context.Context, in *GroupInviteFilter, opts ...grpc.CallOption) (*GroupInviteList, error)
	Delete(ctx context.Context, in *DeleteGroupInviteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

GroupInvitesClient is the client API for GroupInvites 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.

type GroupInvitesServer

type GroupInvitesServer interface {
	Create(context.Context, *GroupInviteRequest) (*GroupInvite, error)
	// CreateWithGroup is an internal API for creating a new root group
	// where the caller is NOT added as an Owner, but an invite code to
	// become the owner of the group is returned.  This is not intended
	// for external consumption, and will not be supported.
	// Do not use this!
	CreateWithGroup(context.Context, *GroupInviteRequest) (*GroupInvite, error)
	List(context.Context, *GroupInviteFilter) (*GroupInviteList, error)
	Delete(context.Context, *DeleteGroupInviteRequest) (*emptypb.Empty, error)
	// contains filtered or unexported methods
}

GroupInvitesServer is the server API for GroupInvites service. All implementations must embed UnimplementedGroupInvitesServer for forward compatibility.

type GroupList

type GroupList struct {
	Items []*Group `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*GroupList) Descriptor deprecated

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

Deprecated: Use GroupList.ProtoReflect.Descriptor instead.

func (*GroupList) GetItems

func (x *GroupList) GetItems() []*Group

func (*GroupList) ProtoMessage

func (*GroupList) ProtoMessage()

func (*GroupList) ProtoReflect

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

func (*GroupList) Reset

func (x *GroupList) Reset()

func (*GroupList) String

func (x *GroupList) String() string

type GroupsClient

type GroupsClient interface {
	Create(ctx context.Context, in *CreateGroupRequest, opts ...grpc.CallOption) (*Group, error)
	Update(ctx context.Context, in *Group, opts ...grpc.CallOption) (*Group, error)
	List(ctx context.Context, in *GroupFilter, opts ...grpc.CallOption) (*GroupList, error)
	Delete(ctx context.Context, in *DeleteGroupRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// LookupGroup returns the verified root group whose name matches the email
	// domain on the caller's token, when the token comes from a trusted upstream
	// identity provider that performs its own email verification.
	// See the v2beta1 GroupsService.LookupGroup for full semantics.
	LookupGroup(ctx context.Context, in *LookupGroupRequest, opts ...grpc.CallOption) (*LookupGroupResponse, error)
	// RequestGroupAccess sends an access request from the caller to the owners
	// of the given verified root group. See the v2beta1 GroupsService.RequestGroupAccess
	// for full semantics.
	RequestGroupAccess(ctx context.Context, in *RequestGroupAccessRequest, opts ...grpc.CallOption) (*RequestGroupAccessResponse, error)
	// CheckEligibility reports whether the caller passes the same eligibility
	// gates applied by LookupGroup and RequestGroupAccess. A response of
	// eligible=true does not guarantee those calls succeed for other reasons
	// (no matching org, already requested, etc.).
	CheckEligibility(ctx context.Context, in *CheckEligibilityRequest, opts ...grpc.CallOption) (*CheckEligibilityResponse, error)
}

GroupsClient is the client API for Groups 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 NewGroupsClient

func NewGroupsClient(cc grpc.ClientConnInterface) GroupsClient

type GroupsServer

type GroupsServer interface {
	Create(context.Context, *CreateGroupRequest) (*Group, error)
	Update(context.Context, *Group) (*Group, error)
	List(context.Context, *GroupFilter) (*GroupList, error)
	Delete(context.Context, *DeleteGroupRequest) (*emptypb.Empty, error)
	// LookupGroup returns the verified root group whose name matches the email
	// domain on the caller's token, when the token comes from a trusted upstream
	// identity provider that performs its own email verification.
	// See the v2beta1 GroupsService.LookupGroup for full semantics.
	LookupGroup(context.Context, *LookupGroupRequest) (*LookupGroupResponse, error)
	// RequestGroupAccess sends an access request from the caller to the owners
	// of the given verified root group. See the v2beta1 GroupsService.RequestGroupAccess
	// for full semantics.
	RequestGroupAccess(context.Context, *RequestGroupAccessRequest) (*RequestGroupAccessResponse, error)
	// CheckEligibility reports whether the caller passes the same eligibility
	// gates applied by LookupGroup and RequestGroupAccess. A response of
	// eligible=true does not guarantee those calls succeed for other reasons
	// (no matching org, already requested, etc.).
	CheckEligibility(context.Context, *CheckEligibilityRequest) (*CheckEligibilityResponse, error)
	// contains filtered or unexported methods
}

GroupsServer is the server API for Groups service. All implementations must embed UnimplementedGroupsServer for forward compatibility.

type IdentitiesClient

type IdentitiesClient interface {
	Create(ctx context.Context, in *CreateIdentityRequest, opts ...grpc.CallOption) (*Identity, error)
	Update(ctx context.Context, in *Identity, opts ...grpc.CallOption) (*Identity, error)
	List(ctx context.Context, in *IdentityFilter, opts ...grpc.CallOption) (*IdentityList, error)
	Lookup(ctx context.Context, in *LookupRequest, opts ...grpc.CallOption) (*Identity, error)
	Delete(ctx context.Context, in *DeleteIdentityRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

IdentitiesClient is the client API for Identities 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 NewIdentitiesClient

func NewIdentitiesClient(cc grpc.ClientConnInterface) IdentitiesClient

type IdentitiesServer

type IdentitiesServer interface {
	Create(context.Context, *CreateIdentityRequest) (*Identity, error)
	Update(context.Context, *Identity) (*Identity, error)
	List(context.Context, *IdentityFilter) (*IdentityList, error)
	Lookup(context.Context, *LookupRequest) (*Identity, error)
	Delete(context.Context, *DeleteIdentityRequest) (*emptypb.Empty, error)
	// contains filtered or unexported methods
}

IdentitiesServer is the server API for Identities service. All implementations must embed UnimplementedIdentitiesServer for forward compatibility.

type Identity

type Identity struct {

	// id is unique identifier of this specific identity.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// name, human readable name of identity.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// description, human readable of identity.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// created_at is the timestamp for when the identity was created.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// updated_at is the timestamp for when the identity was last updated.
	UpdatedAt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	// last_seen is the timestamp for when the identity was last federated.
	LastSeen *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"`
	// relationship is used to describe how this identity relates to
	// identities coming from 3rd party Identity Providers (IdPs)
	//
	// Types that are valid to be assigned to Relationship:
	//
	//	*Identity_ClaimMatch_
	//	*Identity_Static
	//	*Identity_ServicePrincipal
	//	*Identity_AwsIdentity
	Relationship isIdentity_Relationship `protobuf_oneof:"relationship"`
	// contains filtered or unexported fields
}

func (*Identity) CloudEventsExtension

func (x *Identity) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*Identity) CloudEventsSubject

func (x *Identity) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*Identity) Descriptor deprecated

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

Deprecated: Use Identity.ProtoReflect.Descriptor instead.

func (*Identity) GetAwsIdentity

func (x *Identity) GetAwsIdentity() *Identity_AWSIdentity

func (*Identity) GetClaimMatch

func (x *Identity) GetClaimMatch() *Identity_ClaimMatch

func (*Identity) GetCreatedAt added in v0.1.2

func (x *Identity) GetCreatedAt() *timestamppb.Timestamp

func (*Identity) GetDescription

func (x *Identity) GetDescription() string

func (*Identity) GetId

func (x *Identity) GetId() string

func (*Identity) GetLastSeen added in v0.1.39

func (x *Identity) GetLastSeen() *timestamppb.Timestamp

func (*Identity) GetName

func (x *Identity) GetName() string

func (*Identity) GetRelationship

func (x *Identity) GetRelationship() isIdentity_Relationship

func (*Identity) GetServicePrincipal

func (x *Identity) GetServicePrincipal() ServicePrincipal

func (*Identity) GetStatic

func (x *Identity) GetStatic() *Identity_StaticKeys

func (*Identity) GetUpdatedAt added in v0.1.2

func (x *Identity) GetUpdatedAt() *timestamppb.Timestamp

func (*Identity) ProtoMessage

func (*Identity) ProtoMessage()

func (*Identity) ProtoReflect

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

func (*Identity) Reset

func (x *Identity) Reset()

func (*Identity) String

func (x *Identity) String() string

type IdentityFilter

type IdentityFilter struct {

	// uidp filters records based on their position in the group hierarchy.
	Uidp *v1.UIDPFilter `protobuf:"bytes,1,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// id is unique identifier to look up.
	Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityFilter) Descriptor deprecated

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

Deprecated: Use IdentityFilter.ProtoReflect.Descriptor instead.

func (*IdentityFilter) GetId

func (x *IdentityFilter) GetId() string

func (*IdentityFilter) GetUidp

func (x *IdentityFilter) GetUidp() *v1.UIDPFilter

func (*IdentityFilter) ProtoMessage

func (*IdentityFilter) ProtoMessage()

func (*IdentityFilter) ProtoReflect

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

func (*IdentityFilter) Reset

func (x *IdentityFilter) Reset()

func (*IdentityFilter) String

func (x *IdentityFilter) String() string

type IdentityList

type IdentityList struct {
	Items []*Identity `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityList) Descriptor deprecated

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

Deprecated: Use IdentityList.ProtoReflect.Descriptor instead.

func (*IdentityList) GetItems

func (x *IdentityList) GetItems() []*Identity

func (*IdentityList) ProtoMessage

func (*IdentityList) ProtoMessage()

func (*IdentityList) ProtoReflect

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

func (*IdentityList) Reset

func (x *IdentityList) Reset()

func (*IdentityList) String

func (x *IdentityList) String() string

type IdentityProvider

type IdentityProvider struct {

	// id is unique identifier of this specific identity provider
	Id          string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name        string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// default_role is the UIDP of an optional default role
	// to grant users of this identity provider.
	DefaultRole string `protobuf:"bytes,4,opt,name=default_role,json=defaultRole,proto3" json:"default_role,omitempty"`
	// Types that are valid to be assigned to Configuration:
	//
	//	*IdentityProvider_Oidc
	Configuration isIdentityProvider_Configuration `protobuf_oneof:"configuration"`
	// scim reports SCIM provisioning status for this identity provider.
	//
	// SCIM is a provisioning protocol independent of the authentication mechanism
	// in configuration, so it is a top-level field rather than a member of the
	// oneof. Output only: populated on reads and ignored on create and update.
	// Token state changes only through the SCIM token methods, and enabling
	// provisioning is its own gated action.
	Scim *IdentityProvider_SCIM `protobuf:"bytes,21,opt,name=scim,proto3" json:"scim,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityProvider) CloudEventsExtension

func (x *IdentityProvider) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*IdentityProvider) CloudEventsRedact added in v0.1.20

func (x *IdentityProvider) CloudEventsRedact() any

CloudEventsRedact implements chainguard.dev/sdk/events/Redactable.CloudEventsRedact.

func (*IdentityProvider) CloudEventsSubject

func (x *IdentityProvider) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*IdentityProvider) Descriptor deprecated

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

Deprecated: Use IdentityProvider.ProtoReflect.Descriptor instead.

func (*IdentityProvider) GetConfiguration

func (x *IdentityProvider) GetConfiguration() isIdentityProvider_Configuration

func (*IdentityProvider) GetDefaultRole

func (x *IdentityProvider) GetDefaultRole() string

func (*IdentityProvider) GetDescription

func (x *IdentityProvider) GetDescription() string

func (*IdentityProvider) GetId

func (x *IdentityProvider) GetId() string

func (*IdentityProvider) GetName

func (x *IdentityProvider) GetName() string

func (*IdentityProvider) GetOidc

func (*IdentityProvider) GetScim added in v0.1.155

func (*IdentityProvider) ProtoMessage

func (*IdentityProvider) ProtoMessage()

func (*IdentityProvider) ProtoReflect

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

func (*IdentityProvider) Reset

func (x *IdentityProvider) Reset()

func (*IdentityProvider) String

func (x *IdentityProvider) String() string

type IdentityProviderFilter

type IdentityProviderFilter struct {

	// Exact match on identity provider UIDP
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Exact match on identity provider name
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// uidp filers records based on their position in the group hierarchy.
	Uidp *v1.UIDPFilter `protobuf:"bytes,3,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityProviderFilter) Descriptor deprecated

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

Deprecated: Use IdentityProviderFilter.ProtoReflect.Descriptor instead.

func (*IdentityProviderFilter) GetId

func (x *IdentityProviderFilter) GetId() string

func (*IdentityProviderFilter) GetName

func (x *IdentityProviderFilter) GetName() string

func (*IdentityProviderFilter) GetUidp

func (x *IdentityProviderFilter) GetUidp() *v1.UIDPFilter

func (*IdentityProviderFilter) ProtoMessage

func (*IdentityProviderFilter) ProtoMessage()

func (*IdentityProviderFilter) ProtoReflect

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

func (*IdentityProviderFilter) Reset

func (x *IdentityProviderFilter) Reset()

func (*IdentityProviderFilter) String

func (x *IdentityProviderFilter) String() string

type IdentityProviderList

type IdentityProviderList struct {
	Items []*IdentityProvider `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityProviderList) Descriptor deprecated

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

Deprecated: Use IdentityProviderList.ProtoReflect.Descriptor instead.

func (*IdentityProviderList) GetItems

func (x *IdentityProviderList) GetItems() []*IdentityProvider

func (*IdentityProviderList) ProtoMessage

func (*IdentityProviderList) ProtoMessage()

func (*IdentityProviderList) ProtoReflect

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

func (*IdentityProviderList) Reset

func (x *IdentityProviderList) Reset()

func (*IdentityProviderList) String

func (x *IdentityProviderList) String() string

type IdentityProvider_OIDC

type IdentityProvider_OIDC struct {

	// Issuer URL (e.g https://accounts.google.com)
	Issuer       string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
	ClientId     string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	ClientSecret string `protobuf:"bytes,3,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"`
	// Additional scopes to request for ID tokens
	AdditionalScopes []string `protobuf:"bytes,4,rep,name=additional_scopes,json=additionalScopes,proto3" json:"additional_scopes,omitempty"`
	// groups_claim is the name of the OIDC token claim containing group memberships.
	// Required for IdP group-based role mapping.
	GroupsClaim string `protobuf:"bytes,5,opt,name=groups_claim,json=groupsClaim,proto3" json:"groups_claim,omitempty"`
	// Selects how OIDC logins are matched to SCIM-provisioned users. Unset
	// selects CORRELATION_RULE_SUB_EQUALS_EXTERNAL_ID. Immutable after the
	// identity provider is created (enforced server-side): a different rule
	// requires creating a new identity provider. Updates that restate the
	// current rule (or leave it unset) are a no-op — a read-modify-write client
	// may echo the field back safely; updates that change it are rejected.
	CorrelationRule IdentityProvider_OIDC_CorrelationRule `` /* 174-byte string literal not displayed */
	// pkce_enabled is whether to use PKCE (RFC 7636) when exchanging authorization codes
	// with this upstream identity provider. Required by OAuth 2.1.
	PkceEnabled bool `protobuf:"varint,7,opt,name=pkce_enabled,json=pkceEnabled,proto3" json:"pkce_enabled,omitempty"`
	// contains filtered or unexported fields
}

func (*IdentityProvider_OIDC) Descriptor deprecated

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

Deprecated: Use IdentityProvider_OIDC.ProtoReflect.Descriptor instead.

func (*IdentityProvider_OIDC) GetAdditionalScopes

func (x *IdentityProvider_OIDC) GetAdditionalScopes() []string

func (*IdentityProvider_OIDC) GetClientId

func (x *IdentityProvider_OIDC) GetClientId() string

func (*IdentityProvider_OIDC) GetClientSecret

func (x *IdentityProvider_OIDC) GetClientSecret() string

func (*IdentityProvider_OIDC) GetCorrelationRule added in v0.1.195

func (*IdentityProvider_OIDC) GetGroupsClaim added in v0.1.57

func (x *IdentityProvider_OIDC) GetGroupsClaim() string

func (*IdentityProvider_OIDC) GetIssuer

func (x *IdentityProvider_OIDC) GetIssuer() string

func (*IdentityProvider_OIDC) GetPkceEnabled added in v0.1.130

func (x *IdentityProvider_OIDC) GetPkceEnabled() bool

func (*IdentityProvider_OIDC) ProtoMessage

func (*IdentityProvider_OIDC) ProtoMessage()

func (*IdentityProvider_OIDC) ProtoReflect

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

func (*IdentityProvider_OIDC) Reset

func (x *IdentityProvider_OIDC) Reset()

func (*IdentityProvider_OIDC) String

func (x *IdentityProvider_OIDC) String() string

type IdentityProvider_OIDC_CorrelationRule added in v0.1.195

type IdentityProvider_OIDC_CorrelationRule int32

CorrelationRule enumerates how an OIDC login is matched to the SCIM user provisioned by this identity provider (identity linking at login). A closed enum: matching is never free-form, and email-based matching is deliberately absent — an attacker could provision a SCIM user carrying a victim's email and capture the victim's login.

const (
	// Treated as CORRELATION_RULE_SUB_EQUALS_EXTERNAL_ID, the stock-Okta
	// alignment where the OIDC sub claim and the SCIM externalId carry the
	// same IdP user ID.
	IdentityProvider_OIDC_CORRELATION_RULE_UNSPECIFIED IdentityProvider_OIDC_CorrelationRule = 0
	// The OIDC sub claim equals the SCIM externalId, scoped to this identity
	// provider.
	IdentityProvider_OIDC_CORRELATION_RULE_SUB_EQUALS_EXTERNAL_ID IdentityProvider_OIDC_CorrelationRule = 1
	// The OIDC oid claim equals the SCIM externalId, scoped to this identity
	// provider. For Microsoft Entra ID, whose sub claim is pairwise per
	// application and never matches the provisioned externalId; oid (the
	// directory objectId) is the durable user identifier. Use only for IdPs
	// whose issuer asserts oid itself; the server does not verify this —
	// where oid is an admin-mapped custom claim a user can edit, this rule
	// re-opens the claim-capture attack email matching avoids.
	IdentityProvider_OIDC_CORRELATION_RULE_OID_EQUALS_EXTERNAL_ID IdentityProvider_OIDC_CorrelationRule = 2
)

func (IdentityProvider_OIDC_CorrelationRule) Descriptor added in v0.1.195

func (IdentityProvider_OIDC_CorrelationRule) Enum added in v0.1.195

func (IdentityProvider_OIDC_CorrelationRule) EnumDescriptor deprecated added in v0.1.195

func (IdentityProvider_OIDC_CorrelationRule) EnumDescriptor() ([]byte, []int)

Deprecated: Use IdentityProvider_OIDC_CorrelationRule.Descriptor instead.

func (IdentityProvider_OIDC_CorrelationRule) Number added in v0.1.195

func (IdentityProvider_OIDC_CorrelationRule) String added in v0.1.195

func (IdentityProvider_OIDC_CorrelationRule) Type added in v0.1.195

type IdentityProvider_Oidc

type IdentityProvider_Oidc struct {
	Oidc *IdentityProvider_OIDC `protobuf:"bytes,20,opt,name=oidc,proto3,oneof"`
}

type IdentityProvider_SCIM added in v0.1.155

type IdentityProvider_SCIM struct {

	// enabled reports whether SCIM provisioning is enabled for this identity
	// provider. Changing it is a dedicated gated action, not an identity
	// provider write.
	Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// endpoint_url is the server-derived SCIM endpoint URL for this identity
	// provider, computed from its UIDP. Not user-configurable and never
	// persisted; the token method responses carry the same derived value.
	EndpointUrl string `protobuf:"bytes,3,opt,name=endpoint_url,json=endpointUrl,proto3" json:"endpoint_url,omitempty"`
	// token_expire_time is when the current SCIM bearer token stops
	// authenticating. Unset when no token has been issued or the token does not
	// expire; a past value means the token is expired or revoked. Reported on
	// reads when SCIM provisioning is deployed.
	TokenExpireTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=token_expire_time,json=tokenExpireTime,proto3" json:"token_expire_time,omitempty"`
	// previous_token_expire_time is when a previous token remains valid during
	// rotation overlap.
	PreviousTokenExpireTime *timestamppb.Timestamp `` /* 134-byte string literal not displayed */
	// credential_state is the explicit credential lifecycle state, derived by
	// the server. Reported on reads when SCIM provisioning is deployed.
	CredentialState IdentityProvider_SCIM_CredentialState `` /* 174-byte string literal not displayed */
	// etag is an opaque version for optimistic concurrency on lifecycle
	// mutations.
	Etag string `protobuf:"bytes,7,opt,name=etag,proto3" json:"etag,omitempty"`
	// contains filtered or unexported fields
}

SCIM holds the System for Cross-domain Identity Management provisioning configuration for an identity provider.

func (*IdentityProvider_SCIM) Descriptor deprecated added in v0.1.155

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

Deprecated: Use IdentityProvider_SCIM.ProtoReflect.Descriptor instead.

func (*IdentityProvider_SCIM) GetCredentialState added in v0.1.155

func (*IdentityProvider_SCIM) GetEnabled added in v0.1.155

func (x *IdentityProvider_SCIM) GetEnabled() bool

func (*IdentityProvider_SCIM) GetEndpointUrl added in v0.1.155

func (x *IdentityProvider_SCIM) GetEndpointUrl() string

func (*IdentityProvider_SCIM) GetEtag added in v0.1.155

func (x *IdentityProvider_SCIM) GetEtag() string

func (*IdentityProvider_SCIM) GetPreviousTokenExpireTime added in v0.1.155

func (x *IdentityProvider_SCIM) GetPreviousTokenExpireTime() *timestamppb.Timestamp

func (*IdentityProvider_SCIM) GetTokenExpireTime added in v0.1.155

func (x *IdentityProvider_SCIM) GetTokenExpireTime() *timestamppb.Timestamp

func (*IdentityProvider_SCIM) ProtoMessage added in v0.1.155

func (*IdentityProvider_SCIM) ProtoMessage()

func (*IdentityProvider_SCIM) ProtoReflect added in v0.1.155

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

func (*IdentityProvider_SCIM) Reset added in v0.1.155

func (x *IdentityProvider_SCIM) Reset()

func (*IdentityProvider_SCIM) String added in v0.1.155

func (x *IdentityProvider_SCIM) String() string

type IdentityProvider_SCIM_CredentialState added in v0.1.155

type IdentityProvider_SCIM_CredentialState int32

CredentialState is the server-derived lifecycle state of the SCIM bearer credential. It describes the credential only; whether provisioning is on is the separate enabled switch.

const (
	// The state is not reported (for example when SCIM is not deployed, or
	// on write responses that do not carry SCIM status).
	IdentityProvider_SCIM_CREDENTIAL_STATE_UNSPECIFIED IdentityProvider_SCIM_CredentialState = 0
	// No token has ever been generated for this identity provider.
	IdentityProvider_SCIM_CREDENTIAL_STATE_NOT_ISSUED IdentityProvider_SCIM_CredentialState = 1
	// The current token authenticates.
	IdentityProvider_SCIM_CREDENTIAL_STATE_LIVE IdentityProvider_SCIM_CredentialState = 2
	// The current token passed its declared expiry and no longer
	// authenticates. Regenerate to issue a replacement.
	IdentityProvider_SCIM_CREDENTIAL_STATE_EXPIRED IdentityProvider_SCIM_CredentialState = 3
	// The token was explicitly revoked; nothing authenticates until a new
	// credential is issued. The enabled switch is unchanged.
	IdentityProvider_SCIM_CREDENTIAL_STATE_REVOKED IdentityProvider_SCIM_CredentialState = 4
	// A regeneration overlap is active: the previous token keeps
	// authenticating until previous_token_expire_time.
	IdentityProvider_SCIM_CREDENTIAL_STATE_ROTATING IdentityProvider_SCIM_CredentialState = 5
)

func (IdentityProvider_SCIM_CredentialState) Descriptor added in v0.1.155

func (IdentityProvider_SCIM_CredentialState) Enum added in v0.1.155

func (IdentityProvider_SCIM_CredentialState) EnumDescriptor deprecated added in v0.1.155

func (IdentityProvider_SCIM_CredentialState) EnumDescriptor() ([]byte, []int)

Deprecated: Use IdentityProvider_SCIM_CredentialState.Descriptor instead.

func (IdentityProvider_SCIM_CredentialState) Number added in v0.1.155

func (IdentityProvider_SCIM_CredentialState) String added in v0.1.155

func (IdentityProvider_SCIM_CredentialState) Type added in v0.1.155

type IdentityProvidersClient

type IdentityProvidersClient interface {
	Create(ctx context.Context, in *CreateIdentityProviderRequest, opts ...grpc.CallOption) (*IdentityProvider, error)
	Update(ctx context.Context, in *IdentityProvider, opts ...grpc.CallOption) (*IdentityProvider, error)
	List(ctx context.Context, in *IdentityProviderFilter, opts ...grpc.CallOption) (*IdentityProviderList, error)
	Delete(ctx context.Context, in *DeleteIdentityProviderRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
	// GenerateScimToken issues the first SCIM bearer token for an identity
	// provider, creating its SCIM provisioning configuration in a disabled state.
	// Tokens and enablement are separate controls: provisioning stays off until
	// SCIM is explicitly enabled. The plaintext token is returned exactly once;
	// only its SHA-256 digest is persisted and it is never logged. This
	// reveal-once operation is not idempotent. Returns FAILED_PRECONDITION if the
	// provider already has a SCIM token (regenerate it instead).
	GenerateScimToken(ctx context.Context, in *GenerateScimTokenRequest, opts ...grpc.CallOption) (*GenerateScimTokenResponse, error)
	// RegenerateScimToken re-keys an identity provider's SCIM bearer token. When
	// the current token is live, the replacement is make-before-break: the
	// previous token keeps authenticating for the requested overlap (capped
	// server-side at 24h). The new plaintext token is returned exactly once. This
	// reveal-once operation is not safe to retry after an ambiguous transport
	// failure. Returns NOT_FOUND if the provider has never had a SCIM token.
	RegenerateScimToken(ctx context.Context, in *RegenerateScimTokenRequest, opts ...grpc.CallOption) (*RegenerateScimTokenResponse, error)
	// RevokeScimToken immediately invalidates the current and overlap SCIM bearer
	// tokens; inbound provisioning stops on the next request because no credential
	// authenticates. The enabled switch is not changed, so a later
	// RegenerateScimToken installs a credential that serves under the existing
	// enabled state.
	RevokeScimToken(ctx context.Context, in *RevokeScimTokenRequest, opts ...grpc.CallOption) (*RevokeScimTokenResponse, error)
	// SetScimEnabled explicitly starts or pauses SCIM provisioning. Enabling fails
	// with FAILED_PRECONDITION for an organization with fewer than two manually
	// assigned owner-tier role bindings, so SCIM can never take over an
	// organization's only owner. Enabling does not require a live token. Token
	// generation, regeneration, and revocation never change this switch.
	SetScimEnabled(ctx context.Context, in *SetScimEnabledRequest, opts ...grpc.CallOption) (*SetScimEnabledResponse, error)
}

IdentityProvidersClient is the client API for IdentityProviders 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.

type IdentityProvidersServer

type IdentityProvidersServer interface {
	Create(context.Context, *CreateIdentityProviderRequest) (*IdentityProvider, error)
	Update(context.Context, *IdentityProvider) (*IdentityProvider, error)
	List(context.Context, *IdentityProviderFilter) (*IdentityProviderList, error)
	Delete(context.Context, *DeleteIdentityProviderRequest) (*emptypb.Empty, error)
	// GenerateScimToken issues the first SCIM bearer token for an identity
	// provider, creating its SCIM provisioning configuration in a disabled state.
	// Tokens and enablement are separate controls: provisioning stays off until
	// SCIM is explicitly enabled. The plaintext token is returned exactly once;
	// only its SHA-256 digest is persisted and it is never logged. This
	// reveal-once operation is not idempotent. Returns FAILED_PRECONDITION if the
	// provider already has a SCIM token (regenerate it instead).
	GenerateScimToken(context.Context, *GenerateScimTokenRequest) (*GenerateScimTokenResponse, error)
	// RegenerateScimToken re-keys an identity provider's SCIM bearer token. When
	// the current token is live, the replacement is make-before-break: the
	// previous token keeps authenticating for the requested overlap (capped
	// server-side at 24h). The new plaintext token is returned exactly once. This
	// reveal-once operation is not safe to retry after an ambiguous transport
	// failure. Returns NOT_FOUND if the provider has never had a SCIM token.
	RegenerateScimToken(context.Context, *RegenerateScimTokenRequest) (*RegenerateScimTokenResponse, error)
	// RevokeScimToken immediately invalidates the current and overlap SCIM bearer
	// tokens; inbound provisioning stops on the next request because no credential
	// authenticates. The enabled switch is not changed, so a later
	// RegenerateScimToken installs a credential that serves under the existing
	// enabled state.
	RevokeScimToken(context.Context, *RevokeScimTokenRequest) (*RevokeScimTokenResponse, error)
	// SetScimEnabled explicitly starts or pauses SCIM provisioning. Enabling fails
	// with FAILED_PRECONDITION for an organization with fewer than two manually
	// assigned owner-tier role bindings, so SCIM can never take over an
	// organization's only owner. Enabling does not require a live token. Token
	// generation, regeneration, and revocation never change this switch.
	SetScimEnabled(context.Context, *SetScimEnabledRequest) (*SetScimEnabledResponse, error)
	// contains filtered or unexported methods
}

IdentityProvidersServer is the server API for IdentityProviders service. All implementations must embed UnimplementedIdentityProvidersServer for forward compatibility.

type Identity_AWSIdentity

type Identity_AWSIdentity struct {

	// Required, matches the `Account` field in the GetCallerID AWS IAM
	// response
	AwsAccount string `protobuf:"bytes,1,opt,name=aws_account,json=awsAccount,proto3" json:"aws_account,omitempty"`
	// Required, matches the `Arn` field in the GetCallerID AWS IAM response
	//
	// Types that are valid to be assigned to AwsArn:
	//
	//	*Identity_AWSIdentity_Arn
	//	*Identity_AWSIdentity_ArnPattern
	AwsArn isIdentity_AWSIdentity_AwsArn `protobuf_oneof:"aws_arn"`
	// Required, matches the `UserId` field of th GetCallerID AWS IAM response
	//
	// Types that are valid to be assigned to AwsUserId:
	//
	//	*Identity_AWSIdentity_UserId
	//	*Identity_AWSIdentity_UserIdPattern
	AwsUserId isIdentity_AWSIdentity_AwsUserId `protobuf_oneof:"aws_user_id"`
	// contains filtered or unexported fields
}

func (*Identity_AWSIdentity) Descriptor deprecated

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

Deprecated: Use Identity_AWSIdentity.ProtoReflect.Descriptor instead.

func (*Identity_AWSIdentity) GetArn

func (x *Identity_AWSIdentity) GetArn() string

func (*Identity_AWSIdentity) GetArnPattern

func (x *Identity_AWSIdentity) GetArnPattern() string

func (*Identity_AWSIdentity) GetAwsAccount

func (x *Identity_AWSIdentity) GetAwsAccount() string

func (*Identity_AWSIdentity) GetAwsArn

func (x *Identity_AWSIdentity) GetAwsArn() isIdentity_AWSIdentity_AwsArn

func (*Identity_AWSIdentity) GetAwsUserId

func (x *Identity_AWSIdentity) GetAwsUserId() isIdentity_AWSIdentity_AwsUserId

func (*Identity_AWSIdentity) GetUserId

func (x *Identity_AWSIdentity) GetUserId() string

func (*Identity_AWSIdentity) GetUserIdPattern

func (x *Identity_AWSIdentity) GetUserIdPattern() string

func (*Identity_AWSIdentity) ProtoMessage

func (*Identity_AWSIdentity) ProtoMessage()

func (*Identity_AWSIdentity) ProtoReflect

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

func (*Identity_AWSIdentity) Reset

func (x *Identity_AWSIdentity) Reset()

func (*Identity_AWSIdentity) String

func (x *Identity_AWSIdentity) String() string

type Identity_AWSIdentity_Arn

type Identity_AWSIdentity_Arn struct {
	// Exact match to Arn of AWS Identity
	Arn string `protobuf:"bytes,3,opt,name=arn,proto3,oneof"`
}

type Identity_AWSIdentity_ArnPattern

type Identity_AWSIdentity_ArnPattern struct {
	// Regular expression for matching Arn
	ArnPattern string `protobuf:"bytes,4,opt,name=arn_pattern,json=arnPattern,proto3,oneof"`
}

type Identity_AWSIdentity_UserId

type Identity_AWSIdentity_UserId struct {
	// Exacty match of the UserID field
	UserId string `protobuf:"bytes,5,opt,name=user_id,json=userId,proto3,oneof"`
}

type Identity_AWSIdentity_UserIdPattern

type Identity_AWSIdentity_UserIdPattern struct {
	// Regular expression for UserId field
	UserIdPattern string `protobuf:"bytes,6,opt,name=user_id_pattern,json=userIdPattern,proto3,oneof"`
}

type Identity_AwsIdentity

type Identity_AwsIdentity struct {
	// aws_identity matches AWS IAM users and roles to an identity
	AwsIdentity *Identity_AWSIdentity `protobuf:"bytes,13,opt,name=aws_identity,json=awsIdentity,proto3,oneof"`
}

type Identity_ClaimMatch

type Identity_ClaimMatch struct {

	// Required, matches the `iss` claim.
	//
	// Types that are valid to be assigned to Iss:
	//
	//	*Identity_ClaimMatch_Issuer
	//	*Identity_ClaimMatch_IssuerPattern
	Iss isIdentity_ClaimMatch_Iss `protobuf_oneof:"iss"`
	// Required, matches the `sub` claim.
	//
	// Types that are valid to be assigned to Sub:
	//
	//	*Identity_ClaimMatch_Subject
	//	*Identity_ClaimMatch_SubjectPattern
	Sub isIdentity_ClaimMatch_Sub `protobuf_oneof:"sub"`
	// Optional, matches the `aud` claim.
	// When unspecified, this defaults to the hostname of the SaaS
	// environment's issuer.
	//
	// Types that are valid to be assigned to Aud:
	//
	//	*Identity_ClaimMatch_Audience
	//	*Identity_ClaimMatch_AudiencePattern
	Aud isIdentity_ClaimMatch_Aud `protobuf_oneof:"aud"`
	// claims is a mapping from the name of a custom claim
	// to a literal matching that claim's value.
	Claims map[string]string `` /* 139-byte string literal not displayed */
	// claim_patterns is a mapping from the name of a custom claim
	// to a regular expression for matching that claim's value.
	ClaimPatterns map[string]string `` /* 174-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Identity_ClaimMatch) Descriptor deprecated

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

Deprecated: Use Identity_ClaimMatch.ProtoReflect.Descriptor instead.

func (*Identity_ClaimMatch) GetAud

func (x *Identity_ClaimMatch) GetAud() isIdentity_ClaimMatch_Aud

func (*Identity_ClaimMatch) GetAudience

func (x *Identity_ClaimMatch) GetAudience() string

func (*Identity_ClaimMatch) GetAudiencePattern

func (x *Identity_ClaimMatch) GetAudiencePattern() string

func (*Identity_ClaimMatch) GetClaimPatterns

func (x *Identity_ClaimMatch) GetClaimPatterns() map[string]string

func (*Identity_ClaimMatch) GetClaims

func (x *Identity_ClaimMatch) GetClaims() map[string]string

func (*Identity_ClaimMatch) GetIss

func (x *Identity_ClaimMatch) GetIss() isIdentity_ClaimMatch_Iss

func (*Identity_ClaimMatch) GetIssuer

func (x *Identity_ClaimMatch) GetIssuer() string

func (*Identity_ClaimMatch) GetIssuerPattern

func (x *Identity_ClaimMatch) GetIssuerPattern() string

func (*Identity_ClaimMatch) GetSub

func (x *Identity_ClaimMatch) GetSub() isIdentity_ClaimMatch_Sub

func (*Identity_ClaimMatch) GetSubject

func (x *Identity_ClaimMatch) GetSubject() string

func (*Identity_ClaimMatch) GetSubjectPattern

func (x *Identity_ClaimMatch) GetSubjectPattern() string

func (*Identity_ClaimMatch) ProtoMessage

func (*Identity_ClaimMatch) ProtoMessage()

func (*Identity_ClaimMatch) ProtoReflect

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

func (*Identity_ClaimMatch) Reset

func (x *Identity_ClaimMatch) Reset()

func (*Identity_ClaimMatch) String

func (x *Identity_ClaimMatch) String() string

type Identity_ClaimMatch_

type Identity_ClaimMatch_ struct {
	// claim_match checks the third party IdP token's claims against one
	// or more configured patterns.
	ClaimMatch *Identity_ClaimMatch `protobuf:"bytes,10,opt,name=claim_match,json=claimMatch,proto3,oneof"`
}

type Identity_ClaimMatch_Audience

type Identity_ClaimMatch_Audience struct {
	// audience of OIDC ID tokens issued for this identity.
	Audience string `protobuf:"bytes,5,opt,name=audience,proto3,oneof"`
}

type Identity_ClaimMatch_AudiencePattern

type Identity_ClaimMatch_AudiencePattern struct {
	// audience_pattern is a regular expression for matching the
	// token's audience claim.
	AudiencePattern string `protobuf:"bytes,6,opt,name=audience_pattern,json=audiencePattern,proto3,oneof"`
}

type Identity_ClaimMatch_Issuer

type Identity_ClaimMatch_Issuer struct {
	// issuer of the OIDC ID tokens issued for this identity.
	Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3,oneof"`
}

type Identity_ClaimMatch_IssuerPattern

type Identity_ClaimMatch_IssuerPattern struct {
	// issuer_pattern is a regular expression for matching the
	// token's issuer claim.
	IssuerPattern string `protobuf:"bytes,2,opt,name=issuer_pattern,json=issuerPattern,proto3,oneof"`
}

type Identity_ClaimMatch_Subject

type Identity_ClaimMatch_Subject struct {
	// subject of OIDC ID tokens issued for this identity.
	Subject string `protobuf:"bytes,3,opt,name=subject,proto3,oneof"`
}

type Identity_ClaimMatch_SubjectPattern

type Identity_ClaimMatch_SubjectPattern struct {
	// subject_pattern is a regular expression for matching the
	// token's subject claim.
	SubjectPattern string `protobuf:"bytes,4,opt,name=subject_pattern,json=subjectPattern,proto3,oneof"`
}

type Identity_ServicePrincipal

type Identity_ServicePrincipal struct {
	// service_principal is the name of the Chainguard service that is
	// allowed to assume this identity.  These names correlate with the
	// service names used in impersonation with account associations.
	ServicePrincipal ServicePrincipal `` /* 128-byte string literal not displayed */
}

type Identity_Static

type Identity_Static struct {
	// static is equivalent to literal, but instead of discovering the
	// IdP's verification keys we verify the identity using pre-registered
	// verification keys.  This is intended for use with identities from
	// providers without an "online" issuer (network accessible to our IdP),
	// such as a KinD/minikube cluster.
	// NOTE: because this path does not have a mechanism for key rotation
	// the identity will expire, with a maximum lifetime of 30d.
	Static *Identity_StaticKeys `protobuf:"bytes,11,opt,name=static,proto3,oneof"`
}

type Identity_StaticKeys

type Identity_StaticKeys struct {

	// issuer of the OIDC ID tokens issued for this identity.
	// Matches the `iss` claim.
	Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
	// subject of OIDC ID tokens issued for this identity.
	// Matches the `sub` claim.
	Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"`
	// issuer_keys is JWKS-formatted public keys for the issuer.
	// Required, otherwise use Literal.
	IssuerKeys string `protobuf:"bytes,4,opt,name=issuer_keys,json=issuerKeys,proto3" json:"issuer_keys,omitempty"`
	// expiration is the time when the issuer_keys will expire.
	// Defaults to / Maximum of 30 days after creation time.
	Expiration *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=expiration,proto3" json:"expiration,omitempty"`
	// audiences are the accepted OIDC token audiences for this identity.
	// When set, the token's audience must match at least one value in this list.
	// Mutually exclusive with the global AllowedAudiences — when set, only
	// these values are checked and the global list is bypassed entirely.
	// When empty, falls back to the global AllowedAudiences.
	//
	// NOTE: Currently only a single audience is supported. The field is
	// repeated for forward compatibility — callers must specify exactly one
	// value. This restriction may be relaxed in a future release.
	Audiences []string `protobuf:"bytes,6,rep,name=audiences,proto3" json:"audiences,omitempty"`
	// contains filtered or unexported fields
}

func (*Identity_StaticKeys) Descriptor deprecated

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

Deprecated: Use Identity_StaticKeys.ProtoReflect.Descriptor instead.

func (*Identity_StaticKeys) GetAudiences added in v0.1.53

func (x *Identity_StaticKeys) GetAudiences() []string

func (*Identity_StaticKeys) GetExpiration

func (x *Identity_StaticKeys) GetExpiration() *timestamppb.Timestamp

func (*Identity_StaticKeys) GetIssuer

func (x *Identity_StaticKeys) GetIssuer() string

func (*Identity_StaticKeys) GetIssuerKeys

func (x *Identity_StaticKeys) GetIssuerKeys() string

func (*Identity_StaticKeys) GetSubject

func (x *Identity_StaticKeys) GetSubject() string

func (*Identity_StaticKeys) ProtoMessage

func (*Identity_StaticKeys) ProtoMessage()

func (*Identity_StaticKeys) ProtoReflect

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

func (*Identity_StaticKeys) Reset

func (x *Identity_StaticKeys) Reset()

func (*Identity_StaticKeys) String

func (x *Identity_StaticKeys) String() string

type LookupGroupRequest added in v0.1.55

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

LookupGroupRequest is the request message for LookupGroup. It is intentionally empty: the lookup is driven entirely by the caller's token claims.

func (*LookupGroupRequest) Descriptor deprecated added in v0.1.55

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

Deprecated: Use LookupGroupRequest.ProtoReflect.Descriptor instead.

func (*LookupGroupRequest) ProtoMessage added in v0.1.55

func (*LookupGroupRequest) ProtoMessage()

func (*LookupGroupRequest) ProtoReflect added in v0.1.55

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

func (*LookupGroupRequest) Reset added in v0.1.55

func (x *LookupGroupRequest) Reset()

func (*LookupGroupRequest) String added in v0.1.55

func (x *LookupGroupRequest) String() string

type LookupGroupResponse added in v0.1.55

type LookupGroupResponse struct {

	// The group matching the caller's email domain from their token.
	Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// contains filtered or unexported fields
}

LookupGroupResponse is the response message for LookupGroup.

func (*LookupGroupResponse) Descriptor deprecated added in v0.1.55

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

Deprecated: Use LookupGroupResponse.ProtoReflect.Descriptor instead.

func (*LookupGroupResponse) GetGroup added in v0.1.55

func (x *LookupGroupResponse) GetGroup() *Group

func (*LookupGroupResponse) ProtoMessage added in v0.1.55

func (*LookupGroupResponse) ProtoMessage()

func (*LookupGroupResponse) ProtoReflect added in v0.1.55

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

func (*LookupGroupResponse) Reset added in v0.1.55

func (x *LookupGroupResponse) Reset()

func (*LookupGroupResponse) String added in v0.1.55

func (x *LookupGroupResponse) String() string

type LookupRequest

type LookupRequest struct {

	// issuer is the oidc issuer to look up.
	Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
	// subject is the subject to look up.
	Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"`
	// contains filtered or unexported fields
}

func (*LookupRequest) Descriptor deprecated

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

Deprecated: Use LookupRequest.ProtoReflect.Descriptor instead.

func (*LookupRequest) GetIssuer

func (x *LookupRequest) GetIssuer() string

func (*LookupRequest) GetSubject

func (x *LookupRequest) GetSubject() string

func (*LookupRequest) ProtoMessage

func (*LookupRequest) ProtoMessage()

func (*LookupRequest) ProtoReflect

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

func (*LookupRequest) Reset

func (x *LookupRequest) Reset()

func (*LookupRequest) String

func (x *LookupRequest) String() string

type MissingDocument added in v0.1.53

type MissingDocument struct {
	Id    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
	Url   string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

MissingDocument describes a required legal document that has not been accepted.

func (*MissingDocument) Descriptor deprecated added in v0.1.53

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

Deprecated: Use MissingDocument.ProtoReflect.Descriptor instead.

func (*MissingDocument) GetId added in v0.1.53

func (x *MissingDocument) GetId() string

func (*MissingDocument) GetLabel added in v0.1.53

func (x *MissingDocument) GetLabel() string

func (*MissingDocument) GetUrl added in v0.1.53

func (x *MissingDocument) GetUrl() string

func (*MissingDocument) ProtoMessage added in v0.1.53

func (*MissingDocument) ProtoMessage()

func (*MissingDocument) ProtoReflect added in v0.1.53

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

func (*MissingDocument) Reset added in v0.1.53

func (x *MissingDocument) Reset()

func (*MissingDocument) String added in v0.1.53

func (x *MissingDocument) String() string

type OrgKind added in v0.1.53

type OrgKind int32

OrgKind is the kind of organization the group belongs to.

const (
	OrgKind_ORG_KIND_UNSPECIFIED OrgKind = 0
	// Free catalog starter organizations.
	OrgKind_ORG_KIND_STARTER OrgKind = 1
	// Paid customer organizations.
	OrgKind_ORG_KIND_CUSTOMER OrgKind = 2
	// Personal developer organizations.
	OrgKind_ORG_KIND_DEV OrgKind = 3
	// Organizations that are used for infrastructure or automation.
	OrgKind_ORG_KIND_INFRA OrgKind = 4
	// Organizations that are created via AWS Marketplace Subscriptions.
	// Orgs can move from this kind to CUSTOMER upon up-sell.
	OrgKind_ORG_KIND_AWS_MARKETPLACE OrgKind = 5
)

func (OrgKind) Descriptor added in v0.1.53

func (OrgKind) Descriptor() protoreflect.EnumDescriptor

func (OrgKind) Enum added in v0.1.53

func (x OrgKind) Enum() *OrgKind

func (OrgKind) EnumDescriptor deprecated added in v0.1.53

func (OrgKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use OrgKind.Descriptor instead.

func (OrgKind) Number added in v0.1.53

func (x OrgKind) Number() protoreflect.EnumNumber

func (OrgKind) String added in v0.1.53

func (x OrgKind) String() string

func (OrgKind) Type added in v0.1.53

func (OrgKind) Type() protoreflect.EnumType

type OrgStatus added in v0.1.53

type OrgStatus int32

OrgStatus is the provisioning status of an organization.

const (
	// Organization status is not yet set.
	OrgStatus_ORG_STATUS_UNSPECIFIED OrgStatus = 0
	// The organization is awaiting provisioning setup by a reconciler.
	OrgStatus_ORG_STATUS_INITIALIZING OrgStatus = 1
	// The organization is fully provisioned and ready to use.
	OrgStatus_ORG_STATUS_READY OrgStatus = 2
	// The organization is suspended and unavailable to its members.
	OrgStatus_ORG_STATUS_SUSPENDED OrgStatus = 3
)

func (OrgStatus) Descriptor added in v0.1.53

func (OrgStatus) Descriptor() protoreflect.EnumDescriptor

func (OrgStatus) Enum added in v0.1.53

func (x OrgStatus) Enum() *OrgStatus

func (OrgStatus) EnumDescriptor deprecated added in v0.1.53

func (OrgStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use OrgStatus.Descriptor instead.

func (OrgStatus) Number added in v0.1.53

func (x OrgStatus) Number() protoreflect.EnumNumber

func (OrgStatus) String added in v0.1.53

func (x OrgStatus) String() string

func (OrgStatus) Type added in v0.1.53

type RegenerateScimTokenRequest added in v0.1.155

type RegenerateScimTokenRequest struct {

	// identity_provider_id is the UIDP of the identity provider whose SCIM bearer
	// token is being regenerated.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// overlap is how long the previous token keeps authenticating after the
	// regeneration (make-before-break), capped server-side at 24h. Zero means
	// immediate cutover; when omitted the server defaults to one hour. A token
	// that is already expired or revoked stays dead regardless.
	Overlap *durationpb.Duration `protobuf:"bytes,2,opt,name=overlap,proto3" json:"overlap,omitempty"`
	// expire_time is an optional expiry for the new token, at most two years from
	// now. When neither this nor never_expires is set, the server defaults to one
	// year.
	ExpireTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"`
	// etag returned by a read or a prior lifecycle response. Required to prevent
	// concurrent reveal-once rotations from silently invalidating one another.
	Etag string `protobuf:"bytes,4,opt,name=etag,proto3" json:"etag,omitempty"`
	// never_expires requests a token without a planned expiry. Setting this
	// together with expire_time is invalid.
	NeverExpires bool `protobuf:"varint,5,opt,name=never_expires,json=neverExpires,proto3" json:"never_expires,omitempty"`
	// contains filtered or unexported fields
}

RegenerateScimTokenRequest asks for a replacement SCIM bearer token for an identity provider.

func (*RegenerateScimTokenRequest) Descriptor deprecated added in v0.1.155

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

Deprecated: Use RegenerateScimTokenRequest.ProtoReflect.Descriptor instead.

func (*RegenerateScimTokenRequest) GetEtag added in v0.1.155

func (x *RegenerateScimTokenRequest) GetEtag() string

func (*RegenerateScimTokenRequest) GetExpireTime added in v0.1.155

func (x *RegenerateScimTokenRequest) GetExpireTime() *timestamppb.Timestamp

func (*RegenerateScimTokenRequest) GetIdentityProviderId added in v0.1.155

func (x *RegenerateScimTokenRequest) GetIdentityProviderId() string

func (*RegenerateScimTokenRequest) GetNeverExpires added in v0.1.155

func (x *RegenerateScimTokenRequest) GetNeverExpires() bool

func (*RegenerateScimTokenRequest) GetOverlap added in v0.1.155

func (*RegenerateScimTokenRequest) ProtoMessage added in v0.1.155

func (*RegenerateScimTokenRequest) ProtoMessage()

func (*RegenerateScimTokenRequest) ProtoReflect added in v0.1.155

func (*RegenerateScimTokenRequest) Reset added in v0.1.155

func (x *RegenerateScimTokenRequest) Reset()

func (*RegenerateScimTokenRequest) String added in v0.1.155

func (x *RegenerateScimTokenRequest) String() string

type RegenerateScimTokenResponse added in v0.1.155

type RegenerateScimTokenResponse struct {

	// token is the plaintext SCIM bearer token, returned exactly once. Store it
	// now: it is never retrievable again, and only its SHA-256 digest is
	// persisted. Format: "cgscim_" followed by 64 hexadecimal characters.
	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	// endpoint_url is the SCIM endpoint the identity provider must be configured
	// to call.
	EndpointUrl string `protobuf:"bytes,2,opt,name=endpoint_url,json=endpointUrl,proto3" json:"endpoint_url,omitempty"`
	// expire_time is the effective server-selected token expiry. Unset only for
	// never_expires.
	ExpireTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"`
	// identity_provider_id is the UIDP the token was regenerated for, echoed for
	// attribution.
	IdentityProviderId string `protobuf:"bytes,4,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// etag is the opaque version of the SCIM configuration after this call, for
	// optimistic concurrency on subsequent lifecycle mutations.
	Etag string `protobuf:"bytes,5,opt,name=etag,proto3" json:"etag,omitempty"`
	// previous_token_expire_time is when the previous token stops authenticating
	// (the effective end of the make-before-break overlap). Unset when the
	// previous token was already dead, so no overlap is active.
	PreviousTokenExpireTime *timestamppb.Timestamp `` /* 134-byte string literal not displayed */
	// requested_overlap is the overlap requested by the caller after server
	// defaulting. Audit events carry this separately from the effective
	// previous-token cutoff so operator intent remains reconstructable.
	RequestedOverlap *durationpb.Duration `protobuf:"bytes,7,opt,name=requested_overlap,json=requestedOverlap,proto3" json:"requested_overlap,omitempty"`
	// contains filtered or unexported fields
}

RegenerateScimTokenResponse carries the one-time plaintext replacement token and the SCIM endpoint to configure in the identity provider.

func (*RegenerateScimTokenResponse) CloudEventsAsync added in v0.1.155

func (x *RegenerateScimTokenResponse) CloudEventsAsync() bool

func (*RegenerateScimTokenResponse) CloudEventsExtension added in v0.1.155

func (x *RegenerateScimTokenResponse) CloudEventsExtension(key string) (string, bool)

func (*RegenerateScimTokenResponse) CloudEventsRedact added in v0.1.155

func (x *RegenerateScimTokenResponse) CloudEventsRedact() any

CloudEventsRedact omits the reveal-once token from the audit event; only the non-secret result fields are carried.

func (*RegenerateScimTokenResponse) CloudEventsSubject added in v0.1.155

func (x *RegenerateScimTokenResponse) CloudEventsSubject() string

func (*RegenerateScimTokenResponse) Descriptor deprecated added in v0.1.155

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

Deprecated: Use RegenerateScimTokenResponse.ProtoReflect.Descriptor instead.

func (*RegenerateScimTokenResponse) GetEndpointUrl added in v0.1.155

func (x *RegenerateScimTokenResponse) GetEndpointUrl() string

func (*RegenerateScimTokenResponse) GetEtag added in v0.1.155

func (x *RegenerateScimTokenResponse) GetEtag() string

func (*RegenerateScimTokenResponse) GetExpireTime added in v0.1.155

func (*RegenerateScimTokenResponse) GetIdentityProviderId added in v0.1.155

func (x *RegenerateScimTokenResponse) GetIdentityProviderId() string

func (*RegenerateScimTokenResponse) GetPreviousTokenExpireTime added in v0.1.155

func (x *RegenerateScimTokenResponse) GetPreviousTokenExpireTime() *timestamppb.Timestamp

func (*RegenerateScimTokenResponse) GetRequestedOverlap added in v0.1.155

func (x *RegenerateScimTokenResponse) GetRequestedOverlap() *durationpb.Duration

func (*RegenerateScimTokenResponse) GetToken added in v0.1.155

func (x *RegenerateScimTokenResponse) GetToken() string

func (*RegenerateScimTokenResponse) ProtoMessage added in v0.1.155

func (*RegenerateScimTokenResponse) ProtoMessage()

func (*RegenerateScimTokenResponse) ProtoReflect added in v0.1.155

func (*RegenerateScimTokenResponse) Reset added in v0.1.155

func (x *RegenerateScimTokenResponse) Reset()

func (*RegenerateScimTokenResponse) String added in v0.1.155

func (x *RegenerateScimTokenResponse) String() string

type RegistrationRequest

type RegistrationRequest struct {

	// Types that are valid to be assigned to Kind:
	//
	//	*RegistrationRequest_Human_
	//	*RegistrationRequest_Cluster_
	Kind isRegistrationRequest_Kind `protobuf_oneof:"kind"`
	// contains filtered or unexported fields
}

func (*RegistrationRequest) Descriptor deprecated

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

Deprecated: Use RegistrationRequest.ProtoReflect.Descriptor instead.

func (*RegistrationRequest) GetCluster

func (*RegistrationRequest) GetHuman

func (*RegistrationRequest) GetKind

func (x *RegistrationRequest) GetKind() isRegistrationRequest_Kind

func (*RegistrationRequest) ProtoMessage

func (*RegistrationRequest) ProtoMessage()

func (*RegistrationRequest) ProtoReflect

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

func (*RegistrationRequest) Reset

func (x *RegistrationRequest) Reset()

func (*RegistrationRequest) String

func (x *RegistrationRequest) String() string

type RegistrationRequest_Cluster

type RegistrationRequest_Cluster struct {

	// code is the json-encoded authentication code.
	Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
	// cluster_id is an optional cluster id if registering a cluster.
	ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// contains filtered or unexported fields
}

func (*RegistrationRequest_Cluster) Descriptor deprecated

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

Deprecated: Use RegistrationRequest_Cluster.ProtoReflect.Descriptor instead.

func (*RegistrationRequest_Cluster) GetClusterId

func (x *RegistrationRequest_Cluster) GetClusterId() string

func (*RegistrationRequest_Cluster) GetCode

func (x *RegistrationRequest_Cluster) GetCode() string

func (*RegistrationRequest_Cluster) ProtoMessage

func (*RegistrationRequest_Cluster) ProtoMessage()

func (*RegistrationRequest_Cluster) ProtoReflect

func (*RegistrationRequest_Cluster) Reset

func (x *RegistrationRequest_Cluster) Reset()

func (*RegistrationRequest_Cluster) String

func (x *RegistrationRequest_Cluster) String() string

type RegistrationRequest_Cluster_

type RegistrationRequest_Cluster_ struct {
	Cluster *RegistrationRequest_Cluster `protobuf:"bytes,2,opt,name=cluster,proto3,oneof"`
}

type RegistrationRequest_Human

type RegistrationRequest_Human struct {

	// code is the json-encoded authentication code.
	// +optional
	Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code,omitempty"`
	// contains filtered or unexported fields
}

func (*RegistrationRequest_Human) Descriptor deprecated

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

Deprecated: Use RegistrationRequest_Human.ProtoReflect.Descriptor instead.

func (*RegistrationRequest_Human) GetCode

func (x *RegistrationRequest_Human) GetCode() string

func (*RegistrationRequest_Human) ProtoMessage

func (*RegistrationRequest_Human) ProtoMessage()

func (*RegistrationRequest_Human) ProtoReflect

func (*RegistrationRequest_Human) Reset

func (x *RegistrationRequest_Human) Reset()

func (*RegistrationRequest_Human) String

func (x *RegistrationRequest_Human) String() string

type RegistrationRequest_Human_

type RegistrationRequest_Human_ struct {
	Human *RegistrationRequest_Human `protobuf:"bytes,1,opt,name=human,proto3,oneof"`
}

type RequestGroupAccessRequest added in v0.1.55

type RequestGroupAccessRequest struct {

	// group_id is the UIDP of the group to request access to. Must be the
	// group whose name matches the email domain on the caller's token; the
	// server revalidates this on every call.
	GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	// contains filtered or unexported fields
}

RequestGroupAccessRequest is the request message for RequestGroupAccess.

func (*RequestGroupAccessRequest) Descriptor deprecated added in v0.1.55

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

Deprecated: Use RequestGroupAccessRequest.ProtoReflect.Descriptor instead.

func (*RequestGroupAccessRequest) GetGroupId added in v0.1.55

func (x *RequestGroupAccessRequest) GetGroupId() string

func (*RequestGroupAccessRequest) ProtoMessage added in v0.1.55

func (*RequestGroupAccessRequest) ProtoMessage()

func (*RequestGroupAccessRequest) ProtoReflect added in v0.1.55

func (*RequestGroupAccessRequest) Reset added in v0.1.55

func (x *RequestGroupAccessRequest) Reset()

func (*RequestGroupAccessRequest) String added in v0.1.55

func (x *RequestGroupAccessRequest) String() string

type RequestGroupAccessResponse added in v0.1.55

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

RequestGroupAccessResponse is the response message for RequestGroupAccess. It is intentionally empty; the access request is delivered out of band.

func (*RequestGroupAccessResponse) Descriptor deprecated added in v0.1.55

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

Deprecated: Use RequestGroupAccessResponse.ProtoReflect.Descriptor instead.

func (*RequestGroupAccessResponse) ProtoMessage added in v0.1.55

func (*RequestGroupAccessResponse) ProtoMessage()

func (*RequestGroupAccessResponse) ProtoReflect added in v0.1.55

func (*RequestGroupAccessResponse) Reset added in v0.1.55

func (x *RequestGroupAccessResponse) Reset()

func (*RequestGroupAccessResponse) String added in v0.1.55

func (x *RequestGroupAccessResponse) String() string

type RevokeScimTokenRequest added in v0.1.155

type RevokeScimTokenRequest struct {

	// identity_provider_id is the UIDP of the identity provider whose SCIM bearer
	// token is being revoked.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// contains filtered or unexported fields
}

RevokeScimTokenRequest immediately invalidates an identity provider's SCIM bearer tokens (current and regeneration-overlap).

func (*RevokeScimTokenRequest) Descriptor deprecated added in v0.1.155

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

Deprecated: Use RevokeScimTokenRequest.ProtoReflect.Descriptor instead.

func (*RevokeScimTokenRequest) GetIdentityProviderId added in v0.1.155

func (x *RevokeScimTokenRequest) GetIdentityProviderId() string

func (*RevokeScimTokenRequest) ProtoMessage added in v0.1.155

func (*RevokeScimTokenRequest) ProtoMessage()

func (*RevokeScimTokenRequest) ProtoReflect added in v0.1.155

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

func (*RevokeScimTokenRequest) Reset added in v0.1.155

func (x *RevokeScimTokenRequest) Reset()

func (*RevokeScimTokenRequest) String added in v0.1.155

func (x *RevokeScimTokenRequest) String() string

type RevokeScimTokenResponse added in v0.1.155

type RevokeScimTokenResponse struct {

	// identity_provider_id is the UIDP whose tokens were revoked, echoed for
	// attribution.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// etag is the opaque version of the SCIM configuration after this call, for
	// optimistic concurrency on subsequent lifecycle mutations.
	Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"`
	// enabled is whether provisioning is enabled after the revocation. Revocation
	// never changes this switch: the dead credential is itself the containment.
	Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// revoke_time is when the revocation took effect.
	RevokeTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=revoke_time,json=revokeTime,proto3" json:"revoke_time,omitempty"`
	// contains filtered or unexported fields
}

RevokeScimTokenResponse reports the resulting credential and provisioning state for auditing and subsequent optimistic concurrency.

func (*RevokeScimTokenResponse) CloudEventsExtension added in v0.1.155

func (x *RevokeScimTokenResponse) CloudEventsExtension(key string) (string, bool)

func (*RevokeScimTokenResponse) CloudEventsSubject added in v0.1.155

func (x *RevokeScimTokenResponse) CloudEventsSubject() string

func (*RevokeScimTokenResponse) Descriptor deprecated added in v0.1.155

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

Deprecated: Use RevokeScimTokenResponse.ProtoReflect.Descriptor instead.

func (*RevokeScimTokenResponse) GetEnabled added in v0.1.155

func (x *RevokeScimTokenResponse) GetEnabled() bool

func (*RevokeScimTokenResponse) GetEtag added in v0.1.155

func (x *RevokeScimTokenResponse) GetEtag() string

func (*RevokeScimTokenResponse) GetIdentityProviderId added in v0.1.155

func (x *RevokeScimTokenResponse) GetIdentityProviderId() string

func (*RevokeScimTokenResponse) GetRevokeTime added in v0.1.155

func (x *RevokeScimTokenResponse) GetRevokeTime() *timestamppb.Timestamp

func (*RevokeScimTokenResponse) ProtoMessage added in v0.1.155

func (*RevokeScimTokenResponse) ProtoMessage()

func (*RevokeScimTokenResponse) ProtoReflect added in v0.1.155

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

func (*RevokeScimTokenResponse) Reset added in v0.1.155

func (x *RevokeScimTokenResponse) Reset()

func (*RevokeScimTokenResponse) String added in v0.1.155

func (x *RevokeScimTokenResponse) String() string

type Role

type Role struct {

	// id, The Group path under which this Role resides.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// name, human readable name of group.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// description, human readable description of group.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// capabilities, human readable list of capabilities supported by the group.
	Capabilities []string `protobuf:"bytes,4,rep,name=capabilities,proto3" json:"capabilities,omitempty"`
	// contains filtered or unexported fields
}

func (*Role) CloudEventsExtension

func (x *Role) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*Role) CloudEventsSubject

func (x *Role) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*Role) Descriptor deprecated

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

Deprecated: Use Role.ProtoReflect.Descriptor instead.

func (*Role) GetCapabilities

func (x *Role) GetCapabilities() []string

func (*Role) GetDescription

func (x *Role) GetDescription() string

func (*Role) GetId

func (x *Role) GetId() string

func (*Role) GetName

func (x *Role) GetName() string

func (*Role) ProtoMessage

func (*Role) ProtoMessage()

func (*Role) ProtoReflect

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

func (*Role) Reset

func (x *Role) Reset()

func (*Role) String

func (x *Role) String() string

type RoleBinding

type RoleBinding struct {

	// id, the UID of this role binding.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// identity, UID of the Identity to bind.
	Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"`
	// group, UIDP of the group to bind. This field is ignored and will be removed
	// in the future. The group is always the parent of the UIDP.
	//
	// Deprecated: Marked as deprecated in role_binding.platform.proto.
	Group string `protobuf:"bytes,3,opt,name=group,proto3" json:"group,omitempty"`
	// role, UIDP of the Role to bind
	Role string `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleBinding) CloudEventsExtension

func (x *RoleBinding) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*RoleBinding) CloudEventsSubject

func (x *RoleBinding) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*RoleBinding) Descriptor deprecated

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

Deprecated: Use RoleBinding.ProtoReflect.Descriptor instead.

func (*RoleBinding) GetGroup deprecated

func (x *RoleBinding) GetGroup() string

Deprecated: Marked as deprecated in role_binding.platform.proto.

func (*RoleBinding) GetId

func (x *RoleBinding) GetId() string

func (*RoleBinding) GetIdentity

func (x *RoleBinding) GetIdentity() string

func (*RoleBinding) GetRole

func (x *RoleBinding) GetRole() string

func (*RoleBinding) ProtoMessage

func (*RoleBinding) ProtoMessage()

func (*RoleBinding) ProtoReflect

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

func (*RoleBinding) Reset

func (x *RoleBinding) Reset()

func (*RoleBinding) String

func (x *RoleBinding) String() string

type RoleBindingBatch added in v0.1.38

type RoleBindingBatch struct {
	RoleBindings []*RoleBinding `protobuf:"bytes,1,rep,name=role_bindings,json=roleBindings,proto3" json:"role_bindings,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleBindingBatch) CloudEventsExtension added in v0.1.38

func (x *RoleBindingBatch) CloudEventsExtension(key string) (string, bool)

CloudEventsExtension implements chainguard.dev/sdk/events/Extendable.CloudEventsExtension

func (*RoleBindingBatch) CloudEventsSubject added in v0.1.38

func (x *RoleBindingBatch) CloudEventsSubject() string

CloudEventsSubject implements chainguard.dev/sdk/events/Eventable.CloudEventsSubject.

func (*RoleBindingBatch) Descriptor deprecated added in v0.1.38

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

Deprecated: Use RoleBindingBatch.ProtoReflect.Descriptor instead.

func (*RoleBindingBatch) GetRoleBindings added in v0.1.38

func (x *RoleBindingBatch) GetRoleBindings() []*RoleBinding

func (*RoleBindingBatch) ProtoMessage added in v0.1.38

func (*RoleBindingBatch) ProtoMessage()

func (*RoleBindingBatch) ProtoReflect added in v0.1.38

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

func (*RoleBindingBatch) Reset added in v0.1.38

func (x *RoleBindingBatch) Reset()

func (*RoleBindingBatch) String added in v0.1.38

func (x *RoleBindingBatch) String() string

type RoleBindingFilter

type RoleBindingFilter struct {

	// id is the exact UID of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// uidp filters records based on their position in the group hierarchy.
	Uidp *v1.UIDPFilter `protobuf:"bytes,2,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleBindingFilter) Descriptor deprecated

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

Deprecated: Use RoleBindingFilter.ProtoReflect.Descriptor instead.

func (*RoleBindingFilter) GetId

func (x *RoleBindingFilter) GetId() string

func (*RoleBindingFilter) GetUidp

func (x *RoleBindingFilter) GetUidp() *v1.UIDPFilter

func (*RoleBindingFilter) ProtoMessage

func (*RoleBindingFilter) ProtoMessage()

func (*RoleBindingFilter) ProtoReflect

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

func (*RoleBindingFilter) Reset

func (x *RoleBindingFilter) Reset()

func (*RoleBindingFilter) String

func (x *RoleBindingFilter) String() string

type RoleBindingList

type RoleBindingList struct {
	Items []*RoleBindingList_Binding `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleBindingList) Descriptor deprecated

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

Deprecated: Use RoleBindingList.ProtoReflect.Descriptor instead.

func (*RoleBindingList) GetItems

func (x *RoleBindingList) GetItems() []*RoleBindingList_Binding

func (*RoleBindingList) ProtoMessage

func (*RoleBindingList) ProtoMessage()

func (*RoleBindingList) ProtoReflect

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

func (*RoleBindingList) Reset

func (x *RoleBindingList) Reset()

func (*RoleBindingList) String

func (x *RoleBindingList) String() string

type RoleBindingList_Binding

type RoleBindingList_Binding struct {

	// id, the UID of this role binding.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// group of the bound role.
	Group *Group `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"`
	// identity, UID of the Identity bound.
	Identity string `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"`
	// role of the bound identity.
	Role *Role `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	// verified email of the bound identity.
	Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
	// ClaimMatch issuer of the bound identity.
	ClaimMatchIssuer string `protobuf:"bytes,6,opt,name=claim_match_issuer,json=claimMatchIssuer,proto3" json:"claim_match_issuer,omitempty"`
	// ClaimMatch subject of the bound identity.
	ClaimMatchSubject string `protobuf:"bytes,7,opt,name=claim_match_subject,json=claimMatchSubject,proto3" json:"claim_match_subject,omitempty"`
	// created_at is the timestamp for when the role binding was created.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// unverified email of the bound identity.
	EmailUnverified string `protobuf:"bytes,9,opt,name=email_unverified,json=emailUnverified,proto3" json:"email_unverified,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleBindingList_Binding) Descriptor deprecated

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

Deprecated: Use RoleBindingList_Binding.ProtoReflect.Descriptor instead.

func (*RoleBindingList_Binding) GetClaimMatchIssuer

func (x *RoleBindingList_Binding) GetClaimMatchIssuer() string

func (*RoleBindingList_Binding) GetClaimMatchSubject

func (x *RoleBindingList_Binding) GetClaimMatchSubject() string

func (*RoleBindingList_Binding) GetCreatedAt added in v0.1.20

func (x *RoleBindingList_Binding) GetCreatedAt() *timestamppb.Timestamp

func (*RoleBindingList_Binding) GetEmail

func (x *RoleBindingList_Binding) GetEmail() string

func (*RoleBindingList_Binding) GetEmailUnverified added in v0.1.21

func (x *RoleBindingList_Binding) GetEmailUnverified() string

func (*RoleBindingList_Binding) GetGroup

func (x *RoleBindingList_Binding) GetGroup() *Group

func (*RoleBindingList_Binding) GetId

func (x *RoleBindingList_Binding) GetId() string

func (*RoleBindingList_Binding) GetIdentity

func (x *RoleBindingList_Binding) GetIdentity() string

func (*RoleBindingList_Binding) GetRole

func (x *RoleBindingList_Binding) GetRole() *Role

func (*RoleBindingList_Binding) ProtoMessage

func (*RoleBindingList_Binding) ProtoMessage()

func (*RoleBindingList_Binding) ProtoReflect

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

func (*RoleBindingList_Binding) Reset

func (x *RoleBindingList_Binding) Reset()

func (*RoleBindingList_Binding) String

func (x *RoleBindingList_Binding) String() string

type RoleBindingsClient

type RoleBindingsClient interface {
	Create(ctx context.Context, in *CreateRoleBindingRequest, opts ...grpc.CallOption) (*RoleBinding, error)
	CreateBatch(ctx context.Context, in *CreateRoleBindingBatchRequest, opts ...grpc.CallOption) (*RoleBindingBatch, error)
	Update(ctx context.Context, in *RoleBinding, opts ...grpc.CallOption) (*RoleBinding, error)
	List(ctx context.Context, in *RoleBindingFilter, opts ...grpc.CallOption) (*RoleBindingList, error)
	Delete(ctx context.Context, in *DeleteRoleBindingRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

RoleBindingsClient is the client API for RoleBindings 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.

type RoleBindingsServer

type RoleBindingsServer interface {
	Create(context.Context, *CreateRoleBindingRequest) (*RoleBinding, error)
	CreateBatch(context.Context, *CreateRoleBindingBatchRequest) (*RoleBindingBatch, error)
	Update(context.Context, *RoleBinding) (*RoleBinding, error)
	List(context.Context, *RoleBindingFilter) (*RoleBindingList, error)
	Delete(context.Context, *DeleteRoleBindingRequest) (*emptypb.Empty, error)
	// contains filtered or unexported methods
}

RoleBindingsServer is the server API for RoleBindings service. All implementations must embed UnimplementedRoleBindingsServer for forward compatibility.

type RoleFilter

type RoleFilter struct {

	// id is the exact UIDP of the record.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// name is the exact name of the record
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// parent is the exact UIDP of the parent, or / for root
	Parent string `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"`
	// uidp filters records based on their position in the group hierarchy.
	Uidp *v1.UIDPFilter `protobuf:"bytes,4,opt,name=uidp,proto3" json:"uidp,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleFilter) Descriptor deprecated

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

Deprecated: Use RoleFilter.ProtoReflect.Descriptor instead.

func (*RoleFilter) GetId

func (x *RoleFilter) GetId() string

func (*RoleFilter) GetName

func (x *RoleFilter) GetName() string

func (*RoleFilter) GetParent

func (x *RoleFilter) GetParent() string

func (*RoleFilter) GetUidp

func (x *RoleFilter) GetUidp() *v1.UIDPFilter

func (*RoleFilter) ProtoMessage

func (*RoleFilter) ProtoMessage()

func (*RoleFilter) ProtoReflect

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

func (*RoleFilter) Reset

func (x *RoleFilter) Reset()

func (*RoleFilter) String

func (x *RoleFilter) String() string

type RoleList

type RoleList struct {
	Items []*Role `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*RoleList) Descriptor deprecated

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

Deprecated: Use RoleList.ProtoReflect.Descriptor instead.

func (*RoleList) GetItems

func (x *RoleList) GetItems() []*Role

func (*RoleList) ProtoMessage

func (*RoleList) ProtoMessage()

func (*RoleList) ProtoReflect

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

func (*RoleList) Reset

func (x *RoleList) Reset()

func (*RoleList) String

func (x *RoleList) String() string

type RolesClient

type RolesClient interface {
	Create(ctx context.Context, in *CreateRoleRequest, opts ...grpc.CallOption) (*Role, error)
	Update(ctx context.Context, in *Role, opts ...grpc.CallOption) (*Role, error)
	List(ctx context.Context, in *RoleFilter, opts ...grpc.CallOption) (*RoleList, error)
	Delete(ctx context.Context, in *DeleteRoleRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

RolesClient is the client API for Roles 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 NewRolesClient

func NewRolesClient(cc grpc.ClientConnInterface) RolesClient

type RolesServer

type RolesServer interface {
	Create(context.Context, *CreateRoleRequest) (*Role, error)
	Update(context.Context, *Role) (*Role, error)
	List(context.Context, *RoleFilter) (*RoleList, error)
	Delete(context.Context, *DeleteRoleRequest) (*emptypb.Empty, error)
	// contains filtered or unexported methods
}

RolesServer is the server API for Roles service. All implementations must embed UnimplementedRolesServer for forward compatibility.

type ServicePrincipal

type ServicePrincipal int32
const (
	ServicePrincipal_UNKNOWN            ServicePrincipal = 0
	ServicePrincipal_COSIGNED           ServicePrincipal = 1
	ServicePrincipal_INGESTER           ServicePrincipal = 2
	ServicePrincipal_CATALOG_SYNCER     ServicePrincipal = 3
	ServicePrincipal_APKO_BUILDER       ServicePrincipal = 4
	ServicePrincipal_ENTITLEMENT_SYNCER ServicePrincipal = 5
	ServicePrincipal_TENANT_SCANNER     ServicePrincipal = 6
	ServicePrincipal_SEDIMENTOLOGY      ServicePrincipal = 7
	ServicePrincipal_SKILLUP            ServicePrincipal = 8
	ServicePrincipal_MATERIALIZER       ServicePrincipal = 9
	ServicePrincipal_MICROFLOW          ServicePrincipal = 10
	ServicePrincipal_GUARDENER          ServicePrincipal = 11
	ServicePrincipal_MICROVM            ServicePrincipal = 12
	ServicePrincipal_SKILLS             ServicePrincipal = 13
)

func (ServicePrincipal) Descriptor

func (ServicePrincipal) Enum

func (ServicePrincipal) EnumDescriptor deprecated

func (ServicePrincipal) EnumDescriptor() ([]byte, []int)

Deprecated: Use ServicePrincipal.Descriptor instead.

func (ServicePrincipal) Number

func (ServicePrincipal) String

func (x ServicePrincipal) String() string

func (ServicePrincipal) Type

type SetScimEnabledRequest added in v0.1.155

type SetScimEnabledRequest struct {

	// identity_provider_id is the UIDP of the identity provider whose
	// provisioning is being switched.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// enabled is the desired provisioning state. Enabling does not require a live
	// token; disabling pauses provisioning while leaving the credential,
	// provisioned users, and bindings intact.
	Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// etag returned by a read or a token lifecycle response. Required so a switch
	// cannot race a concurrent lifecycle mutation.
	Etag string `protobuf:"bytes,3,opt,name=etag,proto3" json:"etag,omitempty"`
	// contains filtered or unexported fields
}

SetScimEnabledRequest starts or pauses SCIM provisioning for an identity provider.

func (*SetScimEnabledRequest) Descriptor deprecated added in v0.1.155

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

Deprecated: Use SetScimEnabledRequest.ProtoReflect.Descriptor instead.

func (*SetScimEnabledRequest) GetEnabled added in v0.1.155

func (x *SetScimEnabledRequest) GetEnabled() bool

func (*SetScimEnabledRequest) GetEtag added in v0.1.155

func (x *SetScimEnabledRequest) GetEtag() string

func (*SetScimEnabledRequest) GetIdentityProviderId added in v0.1.155

func (x *SetScimEnabledRequest) GetIdentityProviderId() string

func (*SetScimEnabledRequest) ProtoMessage added in v0.1.155

func (*SetScimEnabledRequest) ProtoMessage()

func (*SetScimEnabledRequest) ProtoReflect added in v0.1.155

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

func (*SetScimEnabledRequest) Reset added in v0.1.155

func (x *SetScimEnabledRequest) Reset()

func (*SetScimEnabledRequest) String added in v0.1.155

func (x *SetScimEnabledRequest) String() string

type SetScimEnabledResponse added in v0.1.155

type SetScimEnabledResponse struct {

	// identity_provider_id is the UIDP, echoed for attribution.
	IdentityProviderId string `protobuf:"bytes,1,opt,name=identity_provider_id,json=identityProviderId,proto3" json:"identity_provider_id,omitempty"`
	// enabled is the provisioning state after this call.
	Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// etag is the opaque version of the SCIM configuration after this call, for
	// optimistic concurrency on subsequent lifecycle mutations.
	Etag string `protobuf:"bytes,3,opt,name=etag,proto3" json:"etag,omitempty"`
	// contains filtered or unexported fields
}

SetScimEnabledResponse reports the resulting provisioning state.

func (*SetScimEnabledResponse) CloudEventsExtension added in v0.1.155

func (x *SetScimEnabledResponse) CloudEventsExtension(key string) (string, bool)

func (*SetScimEnabledResponse) CloudEventsSubject added in v0.1.155

func (x *SetScimEnabledResponse) CloudEventsSubject() string

func (*SetScimEnabledResponse) Descriptor deprecated added in v0.1.155

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

Deprecated: Use SetScimEnabledResponse.ProtoReflect.Descriptor instead.

func (*SetScimEnabledResponse) GetEnabled added in v0.1.155

func (x *SetScimEnabledResponse) GetEnabled() bool

func (*SetScimEnabledResponse) GetEtag added in v0.1.155

func (x *SetScimEnabledResponse) GetEtag() string

func (*SetScimEnabledResponse) GetIdentityProviderId added in v0.1.155

func (x *SetScimEnabledResponse) GetIdentityProviderId() string

func (*SetScimEnabledResponse) ProtoMessage added in v0.1.155

func (*SetScimEnabledResponse) ProtoMessage()

func (*SetScimEnabledResponse) ProtoReflect added in v0.1.155

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

func (*SetScimEnabledResponse) Reset added in v0.1.155

func (x *SetScimEnabledResponse) Reset()

func (*SetScimEnabledResponse) String added in v0.1.155

func (x *SetScimEnabledResponse) String() string

type StoredGroupInvite

type StoredGroupInvite struct {

	// id, The group UIDP under which this invite resides.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// expiration, timestamp this invite becomes no longer valid.
	Expiration *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiration,proto3" json:"expiration,omitempty"`
	// key_id is used to identify the verification key for this code.
	KeyId string `protobuf:"bytes,3,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
	// role is the role the invited identity will be role-bound to the group with.
	Role *Role `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	// email is the email address that is allowed to accept this invite code. If blank,
	// anyone with the invite code an accept.
	Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
	// created_at is the timestamp for when the invite was created.
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// single_use indicates whether or not the invite will be deleted after a user joins the group.
	SingleUse bool `protobuf:"varint,7,opt,name=single_use,json=singleUse,proto3" json:"single_use,omitempty"`
	// contains filtered or unexported fields
}

func (*StoredGroupInvite) Descriptor deprecated

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

Deprecated: Use StoredGroupInvite.ProtoReflect.Descriptor instead.

func (*StoredGroupInvite) GetCreatedAt added in v0.1.20

func (x *StoredGroupInvite) GetCreatedAt() *timestamppb.Timestamp

func (*StoredGroupInvite) GetEmail added in v0.1.20

func (x *StoredGroupInvite) GetEmail() string

func (*StoredGroupInvite) GetExpiration

func (x *StoredGroupInvite) GetExpiration() *timestamppb.Timestamp

func (*StoredGroupInvite) GetId

func (x *StoredGroupInvite) GetId() string

func (*StoredGroupInvite) GetKeyId

func (x *StoredGroupInvite) GetKeyId() string

func (*StoredGroupInvite) GetRole

func (x *StoredGroupInvite) GetRole() *Role

func (*StoredGroupInvite) GetSingleUse added in v0.1.20

func (x *StoredGroupInvite) GetSingleUse() bool

func (*StoredGroupInvite) ProtoMessage

func (*StoredGroupInvite) ProtoMessage()

func (*StoredGroupInvite) ProtoReflect

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

func (*StoredGroupInvite) Reset

func (x *StoredGroupInvite) Reset()

func (*StoredGroupInvite) String

func (x *StoredGroupInvite) String() string

type TermsClient added in v0.1.53

type TermsClient interface {
	// AcceptTerms records that the group has accepted one or more legal
	// documents. Called by chainctl after the user completes the acceptance flow.
	AcceptTerms(ctx context.Context, in *AcceptTermsRequest, opts ...grpc.CallOption) (*AcceptTermsResponse, error)
	// ListAccepted returns the legal documents that the group has accepted.
	ListAccepted(ctx context.Context, in *TermsFilter, opts ...grpc.CallOption) (*TermsList, error)
}

TermsClient is the client API for Terms 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 NewTermsClient added in v0.1.53

func NewTermsClient(cc grpc.ClientConnInterface) TermsClient

type TermsDocument added in v0.1.53

type TermsDocument struct {
	// ID is the stable identifier for this document (e.g. "guardener-tos.v1").
	ID string
	// Label is a human-readable name for display purposes.
	Label string
	// URL is a link to the full document text.
	URL string
}

TermsDocument describes a legal document, including its stable ID and optional display metadata (label and URL) for presentation in a UI.

func DocumentMetadata added in v0.1.53

func DocumentMetadata(id string) TermsDocument

DocumentMetadata returns the display metadata for a known document ID, falling back to a TermsDocument with only the ID set for unknown IDs. Delegates to the shared terms package to avoid duplicating the canonical map.

func IsTermsNotAccepted added in v0.1.53

func IsTermsNotAccepted(err error) (bool, []TermsDocument)

IsTermsNotAccepted reports whether err signals that required legal documents have not been accepted. If it does, it also returns the missing documents with their display metadata.

type TermsDocumentStatus added in v0.1.53

type TermsDocumentStatus struct {

	// doc_id is the stable identifier for the accepted document.
	DocId string `protobuf:"bytes,1,opt,name=doc_id,json=docId,proto3" json:"doc_id,omitempty"`
	// accepted_by is the identity (subject) that accepted the document.
	AcceptedBy string `protobuf:"bytes,2,opt,name=accepted_by,json=acceptedBy,proto3" json:"accepted_by,omitempty"`
	// accepted_at is when the document was accepted.
	AcceptedAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=accepted_at,json=acceptedAt,proto3" json:"accepted_at,omitempty"`
	// contains filtered or unexported fields
}

TermsDocumentStatus records an acceptance event for a single document.

func (*TermsDocumentStatus) Descriptor deprecated added in v0.1.53

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

Deprecated: Use TermsDocumentStatus.ProtoReflect.Descriptor instead.

func (*TermsDocumentStatus) GetAcceptedAt added in v0.1.53

func (x *TermsDocumentStatus) GetAcceptedAt() *timestamppb.Timestamp

func (*TermsDocumentStatus) GetAcceptedBy added in v0.1.53

func (x *TermsDocumentStatus) GetAcceptedBy() string

func (*TermsDocumentStatus) GetDocId added in v0.1.53

func (x *TermsDocumentStatus) GetDocId() string

func (*TermsDocumentStatus) ProtoMessage added in v0.1.53

func (*TermsDocumentStatus) ProtoMessage()

func (*TermsDocumentStatus) ProtoReflect added in v0.1.53

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

func (*TermsDocumentStatus) Reset added in v0.1.53

func (x *TermsDocumentStatus) Reset()

func (*TermsDocumentStatus) String added in v0.1.53

func (x *TermsDocumentStatus) String() string

type TermsFilter added in v0.1.53

type TermsFilter struct {

	// group is the UIDP of the org to list documents for.
	Group string `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	// contains filtered or unexported fields
}

func (*TermsFilter) Descriptor deprecated added in v0.1.53

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

Deprecated: Use TermsFilter.ProtoReflect.Descriptor instead.

func (*TermsFilter) GetGroup added in v0.1.53

func (x *TermsFilter) GetGroup() string

func (*TermsFilter) ProtoMessage added in v0.1.53

func (*TermsFilter) ProtoMessage()

func (*TermsFilter) ProtoReflect added in v0.1.53

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

func (*TermsFilter) Reset added in v0.1.53

func (x *TermsFilter) Reset()

func (*TermsFilter) String added in v0.1.53

func (x *TermsFilter) String() string

type TermsList added in v0.1.53

type TermsList struct {
	Items []*TermsDocumentStatus `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*TermsList) Descriptor deprecated added in v0.1.53

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

Deprecated: Use TermsList.ProtoReflect.Descriptor instead.

func (*TermsList) GetItems added in v0.1.53

func (x *TermsList) GetItems() []*TermsDocumentStatus

func (*TermsList) ProtoMessage added in v0.1.53

func (*TermsList) ProtoMessage()

func (*TermsList) ProtoReflect added in v0.1.53

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

func (*TermsList) Reset added in v0.1.53

func (x *TermsList) Reset()

func (*TermsList) String added in v0.1.53

func (x *TermsList) String() string

type TermsNotAcceptedDetail added in v0.1.53

type TermsNotAcceptedDetail struct {
	Missing []*MissingDocument `protobuf:"bytes,1,rep,name=missing,proto3" json:"missing,omitempty"`
	// contains filtered or unexported fields
}

TermsNotAcceptedDetail is attached to gRPC FailedPrecondition errors when the group has not accepted all required legal documents.

func (*TermsNotAcceptedDetail) Descriptor deprecated added in v0.1.53

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

Deprecated: Use TermsNotAcceptedDetail.ProtoReflect.Descriptor instead.

func (*TermsNotAcceptedDetail) GetMissing added in v0.1.53

func (x *TermsNotAcceptedDetail) GetMissing() []*MissingDocument

func (*TermsNotAcceptedDetail) MissingTermsDocs added in v0.1.63

func (d *TermsNotAcceptedDetail) MissingTermsDocs() []terms.Document

MissingTermsDocs satisfies the terms.ErrorDetail interface, allowing the version-agnostic terms.IsTermsNotAccepted to extract missing documents from v1 error details.

func (*TermsNotAcceptedDetail) ProtoMessage added in v0.1.53

func (*TermsNotAcceptedDetail) ProtoMessage()

func (*TermsNotAcceptedDetail) ProtoReflect added in v0.1.53

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

func (*TermsNotAcceptedDetail) Reset added in v0.1.53

func (x *TermsNotAcceptedDetail) Reset()

func (*TermsNotAcceptedDetail) String added in v0.1.53

func (x *TermsNotAcceptedDetail) String() string

type TermsServer added in v0.1.53

type TermsServer interface {
	// AcceptTerms records that the group has accepted one or more legal
	// documents. Called by chainctl after the user completes the acceptance flow.
	AcceptTerms(context.Context, *AcceptTermsRequest) (*AcceptTermsResponse, error)
	// ListAccepted returns the legal documents that the group has accepted.
	ListAccepted(context.Context, *TermsFilter) (*TermsList, error)
	// contains filtered or unexported methods
}

TermsServer is the server API for Terms service. All implementations must embed UnimplementedTermsServer for forward compatibility.

type UnimplementedExternalGroupRoleMappingsServer added in v0.1.57

type UnimplementedExternalGroupRoleMappingsServer struct{}

UnimplementedExternalGroupRoleMappingsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedExternalGroupRoleMappingsServer) Create added in v0.1.57

func (UnimplementedExternalGroupRoleMappingsServer) Delete added in v0.1.57

func (UnimplementedExternalGroupRoleMappingsServer) Get added in v0.1.57

func (UnimplementedExternalGroupRoleMappingsServer) List added in v0.1.57

type UnimplementedGroupAccountAssociationsServer

type UnimplementedGroupAccountAssociationsServer struct{}

UnimplementedGroupAccountAssociationsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedGroupAccountAssociationsServer) Create

func (UnimplementedGroupAccountAssociationsServer) Delete

func (UnimplementedGroupAccountAssociationsServer) List

func (UnimplementedGroupAccountAssociationsServer) Update

type UnimplementedGroupInvitesServer

type UnimplementedGroupInvitesServer struct{}

UnimplementedGroupInvitesServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedGroupInvitesServer) Create

func (UnimplementedGroupInvitesServer) CreateWithGroup

func (UnimplementedGroupInvitesServer) Delete

func (UnimplementedGroupInvitesServer) List

type UnimplementedGroupsServer

type UnimplementedGroupsServer struct{}

UnimplementedGroupsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedGroupsServer) CheckEligibility added in v0.1.55

func (UnimplementedGroupsServer) Create

func (UnimplementedGroupsServer) Delete

func (UnimplementedGroupsServer) List

func (UnimplementedGroupsServer) LookupGroup added in v0.1.55

func (UnimplementedGroupsServer) RequestGroupAccess added in v0.1.55

func (UnimplementedGroupsServer) Update

type UnimplementedIdentitiesServer

type UnimplementedIdentitiesServer struct{}

UnimplementedIdentitiesServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedIdentitiesServer) Create

func (UnimplementedIdentitiesServer) Delete

func (UnimplementedIdentitiesServer) List

func (UnimplementedIdentitiesServer) Lookup

func (UnimplementedIdentitiesServer) Update

type UnimplementedIdentityProvidersServer

type UnimplementedIdentityProvidersServer struct{}

UnimplementedIdentityProvidersServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedIdentityProvidersServer) Create

func (UnimplementedIdentityProvidersServer) Delete

func (UnimplementedIdentityProvidersServer) GenerateScimToken added in v0.1.155

func (UnimplementedIdentityProvidersServer) List

func (UnimplementedIdentityProvidersServer) RegenerateScimToken added in v0.1.155

func (UnimplementedIdentityProvidersServer) RevokeScimToken added in v0.1.155

func (UnimplementedIdentityProvidersServer) SetScimEnabled added in v0.1.155

func (UnimplementedIdentityProvidersServer) Update

type UnimplementedRoleBindingsServer

type UnimplementedRoleBindingsServer struct{}

UnimplementedRoleBindingsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedRoleBindingsServer) Create

func (UnimplementedRoleBindingsServer) CreateBatch added in v0.1.38

func (UnimplementedRoleBindingsServer) Delete

func (UnimplementedRoleBindingsServer) List

func (UnimplementedRoleBindingsServer) Update

type UnimplementedRolesServer

type UnimplementedRolesServer struct{}

UnimplementedRolesServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedRolesServer) Create

func (UnimplementedRolesServer) Delete

func (UnimplementedRolesServer) List

func (UnimplementedRolesServer) Update

type UnimplementedTermsServer added in v0.1.53

type UnimplementedTermsServer struct{}

UnimplementedTermsServer must be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedTermsServer) AcceptTerms added in v0.1.53

func (UnimplementedTermsServer) ListAccepted added in v0.1.53

type UnsafeExternalGroupRoleMappingsServer added in v0.1.57

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

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

type UnsafeGroupAccountAssociationsServer

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

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

type UnsafeGroupInvitesServer

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

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

type UnsafeGroupsServer

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

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

type UnsafeIdentitiesServer

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

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

type UnsafeIdentityProvidersServer

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

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

type UnsafeRoleBindingsServer

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

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

type UnsafeRolesServer

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

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

type UnsafeTermsServer added in v0.1.53

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

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

Directories

Path Synopsis
Package test provides mock implementations of IAM gRPC clients for testing.
Package test provides mock implementations of IAM gRPC clients for testing.

Jump to

Keyboard shortcuts

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