All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.api.services.securitycenter.v1.model.Access Maven / Gradle / Ivy

There is a newer version: v1-rev20241111-2.0.0
Show newest version
/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.securitycenter.v1.model;

/**
 * Represents an access event.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Security Command Center API. For a detailed * explanation see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class Access extends com.google.api.client.json.GenericJson { /** * Caller's IP address, such as "1.1.1.1". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String callerIp; /** * The caller IP's geolocation, which identifies where the call came from. * The value may be {@code null}. */ @com.google.api.client.util.Key private Geolocation callerIpGeo; /** * The method that the service account called, e.g. "SetIamPolicy". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String methodName; /** * Associated email, such as "[email protected]". The email address of the authenticated user or a * service account acting on behalf of a third party principal making the request. For third party * identity callers, the `principal_subject` field is populated instead of this field. For privacy * reasons, the principal email address is sometimes redacted. For more information, see [Caller * identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String principalEmail; /** * A string that represents the principal_subject that is associated with the identity. Unlike * `principal_email`, `principal_subject` supports principals that aren't associated with email * addresses, such as third party principals. For most identities, the format is * `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, * such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format * `serviceAccount:{identity pool name}[{subject}]`. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String principalSubject; /** * The identity delegation history of an authenticated service account that made the request. The * `serviceAccountDelegationInfo[]` object contains information about the real authorities that * try to access Google Cloud resources by delegating on a service account. When multiple * authorities are present, they are guaranteed to be sorted based on the original ordering of the * identity delegation events. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List serviceAccountDelegationInfo; /** * The name of the service account key that was used to create or exchange credentials when * authenticating the service account that made the request. This is a scheme-less URI full * resource name. For example: * "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String serviceAccountKeyName; /** * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String serviceName; /** * The caller's user agent string associated with the finding. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String userAgent; /** * Type of user agent associated with the finding. For example, an operating system shell or an * embedded or standalone application. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String userAgentFamily; /** * A string that represents a username. The username provided depends on the type of the finding * and is likely not an IAM principal. For example, this can be a system username if the finding * is related to a virtual machine, or it can be an application login username. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String userName; /** * Caller's IP address, such as "1.1.1.1". * @return value or {@code null} for none */ public java.lang.String getCallerIp() { return callerIp; } /** * Caller's IP address, such as "1.1.1.1". * @param callerIp callerIp or {@code null} for none */ public Access setCallerIp(java.lang.String callerIp) { this.callerIp = callerIp; return this; } /** * The caller IP's geolocation, which identifies where the call came from. * @return value or {@code null} for none */ public Geolocation getCallerIpGeo() { return callerIpGeo; } /** * The caller IP's geolocation, which identifies where the call came from. * @param callerIpGeo callerIpGeo or {@code null} for none */ public Access setCallerIpGeo(Geolocation callerIpGeo) { this.callerIpGeo = callerIpGeo; return this; } /** * The method that the service account called, e.g. "SetIamPolicy". * @return value or {@code null} for none */ public java.lang.String getMethodName() { return methodName; } /** * The method that the service account called, e.g. "SetIamPolicy". * @param methodName methodName or {@code null} for none */ public Access setMethodName(java.lang.String methodName) { this.methodName = methodName; return this; } /** * Associated email, such as "[email protected]". The email address of the authenticated user or a * service account acting on behalf of a third party principal making the request. For third party * identity callers, the `principal_subject` field is populated instead of this field. For privacy * reasons, the principal email address is sometimes redacted. For more information, see [Caller * identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). * @return value or {@code null} for none */ public java.lang.String getPrincipalEmail() { return principalEmail; } /** * Associated email, such as "[email protected]". The email address of the authenticated user or a * service account acting on behalf of a third party principal making the request. For third party * identity callers, the `principal_subject` field is populated instead of this field. For privacy * reasons, the principal email address is sometimes redacted. For more information, see [Caller * identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). * @param principalEmail principalEmail or {@code null} for none */ public Access setPrincipalEmail(java.lang.String principalEmail) { this.principalEmail = principalEmail; return this; } /** * A string that represents the principal_subject that is associated with the identity. Unlike * `principal_email`, `principal_subject` supports principals that aren't associated with email * addresses, such as third party principals. For most identities, the format is * `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, * such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format * `serviceAccount:{identity pool name}[{subject}]`. * @return value or {@code null} for none */ public java.lang.String getPrincipalSubject() { return principalSubject; } /** * A string that represents the principal_subject that is associated with the identity. Unlike * `principal_email`, `principal_subject` supports principals that aren't associated with email * addresses, such as third party principals. For most identities, the format is * `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, * such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format * `serviceAccount:{identity pool name}[{subject}]`. * @param principalSubject principalSubject or {@code null} for none */ public Access setPrincipalSubject(java.lang.String principalSubject) { this.principalSubject = principalSubject; return this; } /** * The identity delegation history of an authenticated service account that made the request. The * `serviceAccountDelegationInfo[]` object contains information about the real authorities that * try to access Google Cloud resources by delegating on a service account. When multiple * authorities are present, they are guaranteed to be sorted based on the original ordering of the * identity delegation events. * @return value or {@code null} for none */ public java.util.List getServiceAccountDelegationInfo() { return serviceAccountDelegationInfo; } /** * The identity delegation history of an authenticated service account that made the request. The * `serviceAccountDelegationInfo[]` object contains information about the real authorities that * try to access Google Cloud resources by delegating on a service account. When multiple * authorities are present, they are guaranteed to be sorted based on the original ordering of the * identity delegation events. * @param serviceAccountDelegationInfo serviceAccountDelegationInfo or {@code null} for none */ public Access setServiceAccountDelegationInfo(java.util.List serviceAccountDelegationInfo) { this.serviceAccountDelegationInfo = serviceAccountDelegationInfo; return this; } /** * The name of the service account key that was used to create or exchange credentials when * authenticating the service account that made the request. This is a scheme-less URI full * resource name. For example: * "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}". * @return value or {@code null} for none */ public java.lang.String getServiceAccountKeyName() { return serviceAccountKeyName; } /** * The name of the service account key that was used to create or exchange credentials when * authenticating the service account that made the request. This is a scheme-less URI full * resource name. For example: * "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}". * @param serviceAccountKeyName serviceAccountKeyName or {@code null} for none */ public Access setServiceAccountKeyName(java.lang.String serviceAccountKeyName) { this.serviceAccountKeyName = serviceAccountKeyName; return this; } /** * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" * @return value or {@code null} for none */ public java.lang.String getServiceName() { return serviceName; } /** * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" * @param serviceName serviceName or {@code null} for none */ public Access setServiceName(java.lang.String serviceName) { this.serviceName = serviceName; return this; } /** * The caller's user agent string associated with the finding. * @return value or {@code null} for none */ public java.lang.String getUserAgent() { return userAgent; } /** * The caller's user agent string associated with the finding. * @param userAgent userAgent or {@code null} for none */ public Access setUserAgent(java.lang.String userAgent) { this.userAgent = userAgent; return this; } /** * Type of user agent associated with the finding. For example, an operating system shell or an * embedded or standalone application. * @return value or {@code null} for none */ public java.lang.String getUserAgentFamily() { return userAgentFamily; } /** * Type of user agent associated with the finding. For example, an operating system shell or an * embedded or standalone application. * @param userAgentFamily userAgentFamily or {@code null} for none */ public Access setUserAgentFamily(java.lang.String userAgentFamily) { this.userAgentFamily = userAgentFamily; return this; } /** * A string that represents a username. The username provided depends on the type of the finding * and is likely not an IAM principal. For example, this can be a system username if the finding * is related to a virtual machine, or it can be an application login username. * @return value or {@code null} for none */ public java.lang.String getUserName() { return userName; } /** * A string that represents a username. The username provided depends on the type of the finding * and is likely not an IAM principal. For example, this can be a system username if the finding * is related to a virtual machine, or it can be an application login username. * @param userName userName or {@code null} for none */ public Access setUserName(java.lang.String userName) { this.userName = userName; return this; } @Override public Access set(String fieldName, Object value) { return (Access) super.set(fieldName, value); } @Override public Access clone() { return (Access) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy