Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add AWS identity center integration enroll event #51082

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,442 changes: 1,068 additions & 374 deletions api/gen/proto/go/usageevents/v1/usageevents.pb.go

Large diffs are not rendered by default.

52 changes: 52 additions & 0 deletions api/proto/teleport/usageevents/v1/usageevents.proto
Original file line number Diff line number Diff line change
Expand Up @@ -602,6 +602,7 @@ enum IntegrationEnrollKind {
INTEGRATION_ENROLL_KIND_MACHINE_ID_AZURE = 23;
INTEGRATION_ENROLL_KIND_MACHINE_ID_SPACELIFT = 24;
INTEGRATION_ENROLL_KIND_MACHINE_ID_KUBERNETES = 25;
INTEGRATION_ENROLL_KIND_AWS_IDENTITY_CENTER = 26;
}

// IntegrationEnrollMetadata contains common metadata
Expand All @@ -628,6 +629,56 @@ message UIIntegrationEnrollCompleteEvent {
IntegrationEnrollMetadata metadata = 1;
}

// IntegrationEnrollStep defines inner configuration steps
// for a given integration type.
enum IntegrationEnrollStep {
INTEGRATION_ENROLL_STEP_UNSPECIFIED = 0;

// AWSIC denotes AWS Identity Center integration.
INTEGRATION_ENROLL_STEP_AWSIC_CONNECT_OIDC = 1;
INTEGRATION_ENROLL_STEP_AWSIC_SET_ACCESSLIST_DEFAULT_OWNER = 2;
INTEGRATION_ENROLL_STEP_AWSIC_UPLOAD_AWS_SAML_SP_METADATA = 3;
INTEGRATION_ENROLL_STEP_AWSIC_TEST_SCIM_CONNECTION = 4;
}

// IntegrationEnrollStatusCode defines status code for an integration enroll step.
enum IntegrationEnrollStatusCode {
INTEGRATION_ENROLL_STATUS_CODE_UNSPECIFIED = 0;
// The user tried to complete the action and it succeeded.
INTEGRATION_ENROLL_STATUS_CODE_SUCCESS = 1;
// The user or system skipped the step.
// For example:
// When setting up an AWS IAM Identity Center integration, we allow reusing
// OIDC integrationn if it was previously created for the Identity Center.
INTEGRATION_ENROLL_STATUS_CODE_SKIPPED = 2;
// The user tried to complete the action and it failed.
INTEGRATION_ENROLL_STATUS_CODE_ERROR = 3;
// The user did not complete the action and left the wizard.
INTEGRATION_ENROLL_STATUS_CODE_ABORTED = 4;
}

// IntegrationEnrollStepStatus defines fields that track a particular step outcome,
// for example connection test failed or succeeded, or user aborted the step.
message IntegrationEnrollStepStatus {
// Code indicates the step outcome.
IntegrationEnrollStatusCode code = 1;
// Error contains error details in case of an error status code.
// Error message should not include any identifiable information
// like server address.
string error = 2;
}

// UIIntegrationEnrollStepEvent defines configuration step event
// with a status for a specific integration enroll kind.
message UIIntegrationEnrollStepEvent {
// Metadata is the metadata of an event.
IntegrationEnrollMetadata metadata = 1;
// Step is the name of the step for a given integration kind.
IntegrationEnrollStep step = 2;
// Status is the status of the step outcome.
IntegrationEnrollStepStatus status = 3;
}

// ResourceCreateEvent is emitted when a resource is created.
message ResourceCreateEvent {
// resource_type is the type of resource ("node", "node.openssh", "db", "k8s", "app").
Expand Down Expand Up @@ -847,6 +898,7 @@ message UsageEventOneOf {
AccessGraphAWSScanEvent access_graph_aws_scan_event = 58;
UIAccessGraphCrownJewelDiffViewEvent ui_access_graph_crown_jewel_diff_view = 59;
UserTaskStateEvent user_task_state_event = 60;
UIIntegrationEnrollStepEvent ui_integration_enroll_step_event = 61;
}
reserved 2; //UIOnboardGetStartedClickEvent
reserved "ui_onboard_get_started_click";
Expand Down
Loading
Loading