com.pulumi.azure.pim.outputs.GetRoleManagementPolicyActivationRule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azure.pim.outputs;
import com.pulumi.azure.pim.outputs.GetRoleManagementPolicyActivationRuleApprovalStage;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
@CustomType
public final class GetRoleManagementPolicyActivationRule {
/**
* @return An `approval_stage` block as defined below.
*
*/
private List approvalStages;
/**
* @return (String) The maximum length of time an activated role can be valid, in an ISO8601 Duration format.
*
*/
private String maximumDuration;
/**
* @return (Boolean) Is approval required for activation.
*
*/
private Boolean requireApproval;
/**
* @return (Boolean) Is a justification required to create new assignments.
*
*/
private Boolean requireJustification;
/**
* @return (Boolean) Is multi-factor authentication required to create new assignments.
*
*/
private Boolean requireMultifactorAuthentication;
/**
* @return (Boolean) Is ticket information required to create new assignments.
*
*/
private Boolean requireTicketInfo;
/**
* @return (String) The Entra ID Conditional Access context that must be present for activation.
*
*/
private String requiredConditionalAccessAuthenticationContext;
private GetRoleManagementPolicyActivationRule() {}
/**
* @return An `approval_stage` block as defined below.
*
*/
public List approvalStages() {
return this.approvalStages;
}
/**
* @return (String) The maximum length of time an activated role can be valid, in an ISO8601 Duration format.
*
*/
public String maximumDuration() {
return this.maximumDuration;
}
/**
* @return (Boolean) Is approval required for activation.
*
*/
public Boolean requireApproval() {
return this.requireApproval;
}
/**
* @return (Boolean) Is a justification required to create new assignments.
*
*/
public Boolean requireJustification() {
return this.requireJustification;
}
/**
* @return (Boolean) Is multi-factor authentication required to create new assignments.
*
*/
public Boolean requireMultifactorAuthentication() {
return this.requireMultifactorAuthentication;
}
/**
* @return (Boolean) Is ticket information required to create new assignments.
*
*/
public Boolean requireTicketInfo() {
return this.requireTicketInfo;
}
/**
* @return (String) The Entra ID Conditional Access context that must be present for activation.
*
*/
public String requiredConditionalAccessAuthenticationContext() {
return this.requiredConditionalAccessAuthenticationContext;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetRoleManagementPolicyActivationRule defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private List approvalStages;
private String maximumDuration;
private Boolean requireApproval;
private Boolean requireJustification;
private Boolean requireMultifactorAuthentication;
private Boolean requireTicketInfo;
private String requiredConditionalAccessAuthenticationContext;
public Builder() {}
public Builder(GetRoleManagementPolicyActivationRule defaults) {
Objects.requireNonNull(defaults);
this.approvalStages = defaults.approvalStages;
this.maximumDuration = defaults.maximumDuration;
this.requireApproval = defaults.requireApproval;
this.requireJustification = defaults.requireJustification;
this.requireMultifactorAuthentication = defaults.requireMultifactorAuthentication;
this.requireTicketInfo = defaults.requireTicketInfo;
this.requiredConditionalAccessAuthenticationContext = defaults.requiredConditionalAccessAuthenticationContext;
}
@CustomType.Setter
public Builder approvalStages(List approvalStages) {
if (approvalStages == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "approvalStages");
}
this.approvalStages = approvalStages;
return this;
}
public Builder approvalStages(GetRoleManagementPolicyActivationRuleApprovalStage... approvalStages) {
return approvalStages(List.of(approvalStages));
}
@CustomType.Setter
public Builder maximumDuration(String maximumDuration) {
if (maximumDuration == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "maximumDuration");
}
this.maximumDuration = maximumDuration;
return this;
}
@CustomType.Setter
public Builder requireApproval(Boolean requireApproval) {
if (requireApproval == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "requireApproval");
}
this.requireApproval = requireApproval;
return this;
}
@CustomType.Setter
public Builder requireJustification(Boolean requireJustification) {
if (requireJustification == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "requireJustification");
}
this.requireJustification = requireJustification;
return this;
}
@CustomType.Setter
public Builder requireMultifactorAuthentication(Boolean requireMultifactorAuthentication) {
if (requireMultifactorAuthentication == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "requireMultifactorAuthentication");
}
this.requireMultifactorAuthentication = requireMultifactorAuthentication;
return this;
}
@CustomType.Setter
public Builder requireTicketInfo(Boolean requireTicketInfo) {
if (requireTicketInfo == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "requireTicketInfo");
}
this.requireTicketInfo = requireTicketInfo;
return this;
}
@CustomType.Setter
public Builder requiredConditionalAccessAuthenticationContext(String requiredConditionalAccessAuthenticationContext) {
if (requiredConditionalAccessAuthenticationContext == null) {
throw new MissingRequiredPropertyException("GetRoleManagementPolicyActivationRule", "requiredConditionalAccessAuthenticationContext");
}
this.requiredConditionalAccessAuthenticationContext = requiredConditionalAccessAuthenticationContext;
return this;
}
public GetRoleManagementPolicyActivationRule build() {
final var _resultValue = new GetRoleManagementPolicyActivationRule();
_resultValue.approvalStages = approvalStages;
_resultValue.maximumDuration = maximumDuration;
_resultValue.requireApproval = requireApproval;
_resultValue.requireJustification = requireJustification;
_resultValue.requireMultifactorAuthentication = requireMultifactorAuthentication;
_resultValue.requireTicketInfo = requireTicketInfo;
_resultValue.requiredConditionalAccessAuthenticationContext = requiredConditionalAccessAuthenticationContext;
return _resultValue;
}
}
}