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

com.nutanix.dp1.sec.security.v4.config.HardeningStatus Maven / Gradle / Ivy

Go to download

Manage security features, such as encryption, certificates, or platform hardening.

The newest version!
/*
 * Generated file ..
 *
 * Product version: 4.0.1-beta-1
 *
 * Part of the Nutanix Security APIs
 *
 * (c) 2024 Nutanix Inc.  All rights reserved
 *
 */

package com.nutanix.dp1.sec.security.v4.config;

import com.fasterxml.jackson.annotation.JsonAnySetter;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.AccessLevel;
import com.nutanix.devplatform.models.PrettyModeViews.*;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.stream.Collectors;
import com.nutanix.dp1.sec.deserializers.SecObjectTypeTypedObject;

import javax.validation.constraints.*;

import java.util.List;

import static com.nutanix.dp1.sec.deserializers.SecDeserializerUtils.*;


/**
 * Contains status of all the hardening settings for a cluster.
 */
@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class HardeningStatus extends com.nutanix.dp1.sec.common.v1.response.ExternalizableAbstractModel implements java.io.Serializable, SecObjectTypeTypedObject {

  

  public HardeningStatus() {
    super();

  }

  @lombok.Builder(builderMethodName = "HardeningStatusBuilder")
  public HardeningStatus(String tenantId, String extId, java.util.List links, String clusterExtId, Boolean isHighStrengthPasswordEnabled, Boolean isAideEnabled, Boolean isSecureBootEnabled, Boolean isClusterLockdownEnabled, Boolean isLogForwardingEnabled, com.nutanix.dp1.sec.security.v4.config.Schedule scmaSchedule, com.nutanix.dp1.sec.security.v4.config.Schedule ahvScmaSchedule, Boolean isAhvDefenseConsentBannerEnabled, Boolean isCvmDefenseConsentBannerEnabled, Boolean isNetworkSegmentationEnabled) {
    super(tenantId, extId, links);
    this.setClusterExtId(clusterExtId);
    this.setIsHighStrengthPasswordEnabled(isHighStrengthPasswordEnabled);
    this.setIsAideEnabled(isAideEnabled);
    this.setIsSecureBootEnabled(isSecureBootEnabled);
    this.setIsClusterLockdownEnabled(isClusterLockdownEnabled);
    this.setIsLogForwardingEnabled(isLogForwardingEnabled);
    this.setScmaSchedule(scmaSchedule);
    this.setAhvScmaSchedule(ahvScmaSchedule);
    this.setIsAhvDefenseConsentBannerEnabled(isAhvDefenseConsentBannerEnabled);
    this.setIsCvmDefenseConsentBannerEnabled(isCvmDefenseConsentBannerEnabled);
    this.setIsNetworkSegmentationEnabled(isNetworkSegmentationEnabled);
  }

  @Override 
  protected String initialize$objectType() {
    return "security.v4.config.HardeningStatus";
  }

  @Override 
  protected String initialize$fv() {
    return "v4.r0.b1";
  }


  
    @javax.validation.constraints.Pattern(regexp="^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$")
    
    
    
    
    private String clusterExtId = null;
  
    /**
     * UUID for the cluster.
     */
    public void setClusterExtId(String clusterExtId) {
      if (this.clusterExtId == null) {
        this.clusterExtId = clusterExtId;
      }
      else {
        log.warn("Read-only property clusterExtId already contains a non-null value and cannot be set again");
      }
    }
  
    
    
    
    
    private Boolean isSecureBootEnabled = null;
  
    /**
     * Represents whether host secure boot is enabled on a cluster.
     */
    public void setIsSecureBootEnabled(Boolean isSecureBootEnabled) {
      if (this.isSecureBootEnabled == null) {
        this.isSecureBootEnabled = isSecureBootEnabled;
      }
      else {
        log.warn("Read-only property isSecureBootEnabled already contains a non-null value and cannot be set again");
      }
    }
  
    
    
    
    
    private Boolean isClusterLockdownEnabled = null;
  
    /**
     * Represents whether cluster lockdown mode is enabled on a cluster.
     */
    public void setIsClusterLockdownEnabled(Boolean isClusterLockdownEnabled) {
      if (this.isClusterLockdownEnabled == null) {
        this.isClusterLockdownEnabled = isClusterLockdownEnabled;
      }
      else {
        log.warn("Read-only property isClusterLockdownEnabled already contains a non-null value and cannot be set again");
      }
    }
  
    
    
    
    
    private Boolean isLogForwardingEnabled = null;
  
    /**
     * Represents whether log forwarding is enabled on a cluster.
     */
    public void setIsLogForwardingEnabled(Boolean isLogForwardingEnabled) {
      if (this.isLogForwardingEnabled == null) {
        this.isLogForwardingEnabled = isLogForwardingEnabled;
      }
      else {
        log.warn("Read-only property isLogForwardingEnabled already contains a non-null value and cannot be set again");
      }
    }
  
    
    
    
    
    private Boolean isNetworkSegmentationEnabled = null;
  
    /**
     * Represents the network segmentation settings on a cluster.
     */
    public void setIsNetworkSegmentationEnabled(Boolean isNetworkSegmentationEnabled) {
      if (this.isNetworkSegmentationEnabled == null) {
        this.isNetworkSegmentationEnabled = isNetworkSegmentationEnabled;
      }
      else {
        log.warn("Read-only property isNetworkSegmentationEnabled already contains a non-null value and cannot be set again");
      }
    }
  
  
  
    /**
    * Represents whether high strength password is enabled on a cluster.
    */
    
    
    @JsonProperty("isHighStrengthPasswordEnabled")
    public Boolean isHighStrengthPasswordEnabled = null;
  
  
  
    /**
    * Represents whether aide service is enabled on a cluster.
    */
    
    
    @JsonProperty("isAideEnabled")
    public Boolean isAideEnabled = null;
  
  
  
    /**
    * 
    */
    
    
    @JsonProperty("scmaSchedule")
    public com.nutanix.dp1.sec.security.v4.config.Schedule scmaSchedule = null;
  
  
  
    /**
    * 
    */
    
    
    @JsonProperty("ahvScmaSchedule")
    public com.nutanix.dp1.sec.security.v4.config.Schedule ahvScmaSchedule = null;
  
  
  
    /**
    * Represents whether AHV defense knowledge consent banner is enabled on the hypervisor.
    */
    
    
    @JsonProperty("isAhvDefenseConsentBannerEnabled")
    public Boolean isAhvDefenseConsentBannerEnabled = null;
  
  
  
    /**
    * Represents whether Nutanix CVM defense knowledge consent banner is enabled.
    */
    
    
    @JsonProperty("isCvmDefenseConsentBannerEnabled")
    public Boolean isCvmDefenseConsentBannerEnabled = null;
  
  

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy