Skip to content

Commit c7a52f4

Browse files
Google APIscopybara-github
authored andcommitted
feat: serviceAccountKeyName, serviceAccountDelegationInfo, and principalSubject attributes added to the existing access attribute. These new attributes provide additional context about the principals that are associated with the finding
PiperOrigin-RevId: 469787268
1 parent 15b5fb3 commit c7a52f4

1 file changed

Lines changed: 46 additions & 0 deletions

File tree

google/cloud/securitycenter/v1/access.proto

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,13 @@ option ruby_package = "Google::Cloud::SecurityCenter::V1";
2727
// Represents an access event.
2828
message Access {
2929
// Associated email, such as "foo@google.com".
30+
//
31+
// The email address of the authenticated user (or service account on behalf
32+
// of third party principal) making the request. For third party identity
33+
// callers, the `principal_subject` field is populated instead of this field.
34+
// For privacy reasons, the principal email address is sometimes redacted.
35+
// For more information, see [Caller identities in audit
36+
// logs](https://cloud.google.com/logging/docs/audit#user-id).
3037
string principal_email = 1;
3138

3239
// Caller's IP address, such as "1.1.1.1".
@@ -45,6 +52,45 @@ message Access {
4552

4653
// The method that the service account called, e.g. "SetIamPolicy".
4754
string method_name = 6;
55+
56+
// A string representing the principal_subject associated with the identity.
57+
// As compared to `principal_email`, supports principals that aren't
58+
// associated with email addresses, such as third party principals. For most
59+
// identities, the format will be `principal://iam.googleapis.com/{identity
60+
// pool name}/subjects/{subject}` except for some GKE identities
61+
// (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy
62+
// format `serviceAccount:{identity pool name}[{subject}]`
63+
string principal_subject = 7;
64+
65+
// The name of the service account key used to create or exchange
66+
// credentials for authenticating the service account making the request.
67+
// This is a scheme-less URI full resource name. For example:
68+
//
69+
// "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}"
70+
//
71+
string service_account_key_name = 8;
72+
73+
// Identity delegation history of an authenticated service account that makes
74+
// the request. It contains information on the real authorities that try to
75+
// access GCP resources by delegating on a service account. When multiple
76+
// authorities are present, they are guaranteed to be sorted based on the
77+
// original ordering of the identity delegation events.
78+
repeated ServiceAccountDelegationInfo service_account_delegation_info = 9;
79+
}
80+
81+
// Identity delegation history of an authenticated service account.
82+
message ServiceAccountDelegationInfo {
83+
// The email address of a Google account.
84+
string principal_email = 1;
85+
86+
// A string representing the principal_subject associated with the identity.
87+
// As compared to `principal_email`, supports principals that aren't
88+
// associated with email addresses, such as third party principals. For most
89+
// identities, the format will be `principal://iam.googleapis.com/{identity
90+
// pool name}/subjects/{subject}` except for some GKE identities
91+
// (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy
92+
// format `serviceAccount:{identity pool name}[{subject}]`
93+
string principal_subject = 2;
4894
}
4995

5096
// Represents a geographical location for a given access.

0 commit comments

Comments
 (0)