/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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. */ package com.amazonaws.services.fms.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* An Firewall Manager policy. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class Policy implements Serializable, Cloneable, StructuredPojo { /** ** The ID of the Firewall Manager policy. *
*/ private String policyId; /** ** The name of the Firewall Manager policy. *
*/ private String policyName; /** *
* A unique identifier for each update to the policy. When issuing a PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current policy
* version. To get the PolicyUpdateToken
of the current policy version, use a GetPolicy
* request.
*
* Details about the security service that is being used to protect the resources. *
*/ private SecurityServicePolicyData securityServicePolicyData; /** *
* The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon
* Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource
* type of ResourceTypeList
and then specify the resource types in a ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
,
* AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content audit
* policy, valid values are AWS::EC2::SecurityGroup
, AWS::EC2::NetworkInterface
, and
* AWS::EC2::Instance
. For a security group usage audit policy, the value is
* AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS Firewall policy, the value is
* AWS::EC2::VPC
.
*
* An array of ResourceType
objects. Use this only to specify multiple resource types. To specify a
* single resource type, use ResourceType
.
*
* An array of ResourceTag
objects.
*
* If set to True
, resources with the tags that are specified in the ResourceTag
array are
* not in scope of the policy. If set to False
, and the ResourceTag
array is not null,
* only resources with the specified tags are in scope of the policy.
*
* Indicates if the policy should be automatically applied to new resources. *
*/ private Boolean remediationEnabled; /** ** Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy * scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy * scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected * customer resource when the customer resource leaves policy scope. *
** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. *
*/ private Boolean deleteUnusedFMManagedResources; /** ** Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* The unique identifiers of the resource sets used by the policy. *
*/ private java.util.List* The definition of the Network Firewall firewall policy. *
*/ private String policyDescription; /** ** Indicates whether the policy is in or out of an admin's policy or Region scope. *
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy won't be
* protected.
*
* The ID of the Firewall Manager policy. *
* * @param policyId * The ID of the Firewall Manager policy. */ public void setPolicyId(String policyId) { this.policyId = policyId; } /** ** The ID of the Firewall Manager policy. *
* * @return The ID of the Firewall Manager policy. */ public String getPolicyId() { return this.policyId; } /** ** The ID of the Firewall Manager policy. *
* * @param policyId * The ID of the Firewall Manager policy. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withPolicyId(String policyId) { setPolicyId(policyId); return this; } /** ** The name of the Firewall Manager policy. *
* * @param policyName * The name of the Firewall Manager policy. */ public void setPolicyName(String policyName) { this.policyName = policyName; } /** ** The name of the Firewall Manager policy. *
* * @return The name of the Firewall Manager policy. */ public String getPolicyName() { return this.policyName; } /** ** The name of the Firewall Manager policy. *
* * @param policyName * The name of the Firewall Manager policy. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withPolicyName(String policyName) { setPolicyName(policyName); return this; } /** *
* A unique identifier for each update to the policy. When issuing a PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current policy
* version. To get the PolicyUpdateToken
of the current policy version, use a GetPolicy
* request.
*
PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current
* policy version. To get the PolicyUpdateToken
of the current policy version, use a
* GetPolicy
request.
*/
public void setPolicyUpdateToken(String policyUpdateToken) {
this.policyUpdateToken = policyUpdateToken;
}
/**
*
* A unique identifier for each update to the policy. When issuing a PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current policy
* version. To get the PolicyUpdateToken
of the current policy version, use a GetPolicy
* request.
*
PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the
* current policy version. To get the PolicyUpdateToken
of the current policy version, use a
* GetPolicy
request.
*/
public String getPolicyUpdateToken() {
return this.policyUpdateToken;
}
/**
*
* A unique identifier for each update to the policy. When issuing a PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current policy
* version. To get the PolicyUpdateToken
of the current policy version, use a GetPolicy
* request.
*
PutPolicy
request, the
* PolicyUpdateToken
in the request must match the PolicyUpdateToken
of the current
* policy version. To get the PolicyUpdateToken
of the current policy version, use a
* GetPolicy
request.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withPolicyUpdateToken(String policyUpdateToken) {
setPolicyUpdateToken(policyUpdateToken);
return this;
}
/**
* * Details about the security service that is being used to protect the resources. *
* * @param securityServicePolicyData * Details about the security service that is being used to protect the resources. */ public void setSecurityServicePolicyData(SecurityServicePolicyData securityServicePolicyData) { this.securityServicePolicyData = securityServicePolicyData; } /** ** Details about the security service that is being used to protect the resources. *
* * @return Details about the security service that is being used to protect the resources. */ public SecurityServicePolicyData getSecurityServicePolicyData() { return this.securityServicePolicyData; } /** ** Details about the security service that is being used to protect the resources. *
* * @param securityServicePolicyData * Details about the security service that is being used to protect the resources. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withSecurityServicePolicyData(SecurityServicePolicyData securityServicePolicyData) { setSecurityServicePolicyData(securityServicePolicyData); return this; } /** *
* The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon
* Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource
* type of ResourceTypeList
and then specify the resource types in a ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
,
* AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content audit
* policy, valid values are AWS::EC2::SecurityGroup
, AWS::EC2::NetworkInterface
, and
* AWS::EC2::Instance
. For a security group usage audit policy, the value is
* AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS Firewall policy, the value is
* AWS::EC2::VPC
.
*
ResourceTypeList
and then specify the resource types in a
* ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
, AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content
* audit policy, valid values are AWS::EC2::SecurityGroup
,
* AWS::EC2::NetworkInterface
, and AWS::EC2::Instance
. For a security group usage
* audit policy, the value is AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS
* Firewall policy, the value is AWS::EC2::VPC
.
*/
public void setResourceType(String resourceType) {
this.resourceType = resourceType;
}
/**
*
* The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon
* Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource
* type of ResourceTypeList
and then specify the resource types in a ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
,
* AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content audit
* policy, valid values are AWS::EC2::SecurityGroup
, AWS::EC2::NetworkInterface
, and
* AWS::EC2::Instance
. For a security group usage audit policy, the value is
* AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS Firewall policy, the value is
* AWS::EC2::VPC
.
*
ResourceTypeList
and then specify the resource types in a
* ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include
* AWS::ElasticLoadBalancingV2::LoadBalancer
,
* AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content
* audit policy, valid values are AWS::EC2::SecurityGroup
,
* AWS::EC2::NetworkInterface
, and AWS::EC2::Instance
. For a security group usage
* audit policy, the value is AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS
* Firewall policy, the value is AWS::EC2::VPC
.
*/
public String getResourceType() {
return this.resourceType;
}
/**
*
* The type of resource protected by or in scope of the policy. This is in the format shown in the Amazon
* Web Services Resource Types Reference. To apply this policy to multiple resource types, specify a resource
* type of ResourceTypeList
and then specify the resource types in a ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
,
* AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content audit
* policy, valid values are AWS::EC2::SecurityGroup
, AWS::EC2::NetworkInterface
, and
* AWS::EC2::Instance
. For a security group usage audit policy, the value is
* AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS Firewall policy, the value is
* AWS::EC2::VPC
.
*
ResourceTypeList
and then specify the resource types in a
* ResourceTypeList
.
*
* For WAF and Shield Advanced, resource types include AWS::ElasticLoadBalancingV2::LoadBalancer
, AWS::ElasticLoadBalancing::LoadBalancer
, AWS::EC2::EIP
, and
* AWS::CloudFront::Distribution
. For a security group common policy, valid values are
* AWS::EC2::NetworkInterface
and AWS::EC2::Instance
. For a security group content
* audit policy, valid values are AWS::EC2::SecurityGroup
,
* AWS::EC2::NetworkInterface
, and AWS::EC2::Instance
. For a security group usage
* audit policy, the value is AWS::EC2::SecurityGroup
. For an Network Firewall policy or DNS
* Firewall policy, the value is AWS::EC2::VPC
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withResourceType(String resourceType) {
setResourceType(resourceType);
return this;
}
/**
*
* An array of ResourceType
objects. Use this only to specify multiple resource types. To specify a
* single resource type, use ResourceType
.
*
ResourceType
objects. Use this only to specify multiple resource types. To
* specify a single resource type, use ResourceType
.
*/
public java.util.List
* An array of ResourceType
objects. Use this only to specify multiple resource types. To specify a
* single resource type, use ResourceType
.
*
ResourceType
objects. Use this only to specify multiple resource types. To
* specify a single resource type, use ResourceType
.
*/
public void setResourceTypeList(java.util.Collection
* An array of ResourceType
objects. Use this only to specify multiple resource types. To specify a
* single resource type, use ResourceType
.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setResourceTypeList(java.util.Collection)} or {@link #withResourceTypeList(java.util.Collection)} if you * want to override the existing values. *
* * @param resourceTypeList * An array ofResourceType
objects. Use this only to specify multiple resource types. To
* specify a single resource type, use ResourceType
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withResourceTypeList(String... resourceTypeList) {
if (this.resourceTypeList == null) {
setResourceTypeList(new java.util.ArrayList
* An array of ResourceType
objects. Use this only to specify multiple resource types. To specify a
* single resource type, use ResourceType
.
*
ResourceType
objects. Use this only to specify multiple resource types. To
* specify a single resource type, use ResourceType
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withResourceTypeList(java.util.Collection
* An array of ResourceTag
objects.
*
ResourceTag
objects.
*/
public java.util.List
* An array of ResourceTag
objects.
*
ResourceTag
objects.
*/
public void setResourceTags(java.util.Collection
* An array of ResourceTag
objects.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setResourceTags(java.util.Collection)} or {@link #withResourceTags(java.util.Collection)} if you want to * override the existing values. *
* * @param resourceTags * An array ofResourceTag
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withResourceTags(ResourceTag... resourceTags) {
if (this.resourceTags == null) {
setResourceTags(new java.util.ArrayList
* An array of ResourceTag
objects.
*
ResourceTag
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withResourceTags(java.util.Collection
* If set to True
, resources with the tags that are specified in the ResourceTag
array are
* not in scope of the policy. If set to False
, and the ResourceTag
array is not null,
* only resources with the specified tags are in scope of the policy.
*
True
, resources with the tags that are specified in the ResourceTag
* array are not in scope of the policy. If set to False
, and the ResourceTag
array
* is not null, only resources with the specified tags are in scope of the policy.
*/
public void setExcludeResourceTags(Boolean excludeResourceTags) {
this.excludeResourceTags = excludeResourceTags;
}
/**
*
* If set to True
, resources with the tags that are specified in the ResourceTag
array are
* not in scope of the policy. If set to False
, and the ResourceTag
array is not null,
* only resources with the specified tags are in scope of the policy.
*
True
, resources with the tags that are specified in the ResourceTag
* array are not in scope of the policy. If set to False
, and the ResourceTag
* array is not null, only resources with the specified tags are in scope of the policy.
*/
public Boolean getExcludeResourceTags() {
return this.excludeResourceTags;
}
/**
*
* If set to True
, resources with the tags that are specified in the ResourceTag
array are
* not in scope of the policy. If set to False
, and the ResourceTag
array is not null,
* only resources with the specified tags are in scope of the policy.
*
True
, resources with the tags that are specified in the ResourceTag
* array are not in scope of the policy. If set to False
, and the ResourceTag
array
* is not null, only resources with the specified tags are in scope of the policy.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Policy withExcludeResourceTags(Boolean excludeResourceTags) {
setExcludeResourceTags(excludeResourceTags);
return this;
}
/**
*
* If set to True
, resources with the tags that are specified in the ResourceTag
array are
* not in scope of the policy. If set to False
, and the ResourceTag
array is not null,
* only resources with the specified tags are in scope of the policy.
*
True
, resources with the tags that are specified in the ResourceTag
* array are not in scope of the policy. If set to False
, and the ResourceTag
* array is not null, only resources with the specified tags are in scope of the policy.
*/
public Boolean isExcludeResourceTags() {
return this.excludeResourceTags;
}
/**
* * Indicates if the policy should be automatically applied to new resources. *
* * @param remediationEnabled * Indicates if the policy should be automatically applied to new resources. */ public void setRemediationEnabled(Boolean remediationEnabled) { this.remediationEnabled = remediationEnabled; } /** ** Indicates if the policy should be automatically applied to new resources. *
* * @return Indicates if the policy should be automatically applied to new resources. */ public Boolean getRemediationEnabled() { return this.remediationEnabled; } /** ** Indicates if the policy should be automatically applied to new resources. *
* * @param remediationEnabled * Indicates if the policy should be automatically applied to new resources. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withRemediationEnabled(Boolean remediationEnabled) { setRemediationEnabled(remediationEnabled); return this; } /** ** Indicates if the policy should be automatically applied to new resources. *
* * @return Indicates if the policy should be automatically applied to new resources. */ public Boolean isRemediationEnabled() { return this.remediationEnabled; } /** ** Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy * scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy * scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected * customer resource when the customer resource leaves policy scope. *
** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. *
* * @param deleteUnusedFMManagedResources * Indicates whether Firewall Manager should automatically remove protections from resources that leave the * policy scope and clean up resources that Firewall Manager is managing for accounts when those accounts * leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL * from a protected customer resource when the customer resource leaves policy scope. ** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. */ public void setDeleteUnusedFMManagedResources(Boolean deleteUnusedFMManagedResources) { this.deleteUnusedFMManagedResources = deleteUnusedFMManagedResources; } /** *
* Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy * scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy * scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected * customer resource when the customer resource leaves policy scope. *
** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. *
* * @return Indicates whether Firewall Manager should automatically remove protections from resources that leave the * policy scope and clean up resources that Firewall Manager is managing for accounts when those accounts * leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL * from a protected customer resource when the customer resource leaves policy scope. ** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. */ public Boolean getDeleteUnusedFMManagedResources() { return this.deleteUnusedFMManagedResources; } /** *
* Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy * scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy * scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected * customer resource when the customer resource leaves policy scope. *
** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. *
* * @param deleteUnusedFMManagedResources * Indicates whether Firewall Manager should automatically remove protections from resources that leave the * policy scope and clean up resources that Firewall Manager is managing for accounts when those accounts * leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL * from a protected customer resource when the customer resource leaves policy scope. ** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withDeleteUnusedFMManagedResources(Boolean deleteUnusedFMManagedResources) { setDeleteUnusedFMManagedResources(deleteUnusedFMManagedResources); return this; } /** *
* Indicates whether Firewall Manager should automatically remove protections from resources that leave the policy * scope and clean up resources that Firewall Manager is managing for accounts when those accounts leave policy * scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL from a protected * customer resource when the customer resource leaves policy scope. *
** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. *
* * @return Indicates whether Firewall Manager should automatically remove protections from resources that leave the * policy scope and clean up resources that Firewall Manager is managing for accounts when those accounts * leave policy scope. For example, Firewall Manager will disassociate a Firewall Manager managed web ACL * from a protected customer resource when the customer resource leaves policy scope. ** By default, Firewall Manager doesn't remove protections or delete Firewall Manager managed resources. *
** This option is not available for Shield Advanced or WAF Classic policies. */ public Boolean isDeleteUnusedFMManagedResources() { return this.deleteUnusedFMManagedResources; } /** *
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does
* not evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
* , then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is
* a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
* .
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does not
* evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
,
* then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a
* valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to include in the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does not
* evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
,
* then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a
* valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does
* not evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
* , then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is
* a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
* .
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does not
* evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
,
* then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a
* valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specifies the Amazon Web Services account IDs and Organizations organizational units (OUs) to exclude from the * policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, * including any child OUs and accounts that are added at a later time. *
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
, Firewall
* Manager applies the policy to all accounts specified by the IncludeMap
, and does not evaluate any
* ExcludeMap
specifications. If you do not specify an IncludeMap
, then Firewall Manager
* applies the policy to all accounts except for those specified by the ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid
* map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* You can specify inclusions or exclusions, but not both. If you specify an IncludeMap
,
* Firewall Manager applies the policy to all accounts specified by the IncludeMap
, and does not
* evaluate any ExcludeMap
specifications. If you do not specify an IncludeMap
,
* then Firewall Manager applies the policy to all accounts except for those specified by the
* ExcludeMap
.
*
* You can specify account IDs, OUs, or a combination: *
*
* Specify account IDs by setting the key to ACCOUNT
. For example, the following is a valid map:
* {“ACCOUNT” : [“accountID1”, “accountID2”]}
.
*
* Specify OUs by setting the key to ORG_UNIT
. For example, the following is a valid map:
* {“ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a
* valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}
.
*
* The unique identifiers of the resource sets used by the policy. *
* * @return The unique identifiers of the resource sets used by the policy. */ public java.util.List* The unique identifiers of the resource sets used by the policy. *
* * @param resourceSetIds * The unique identifiers of the resource sets used by the policy. */ public void setResourceSetIds(java.util.Collection* The unique identifiers of the resource sets used by the policy. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setResourceSetIds(java.util.Collection)} or {@link #withResourceSetIds(java.util.Collection)} if you want * to override the existing values. *
* * @param resourceSetIds * The unique identifiers of the resource sets used by the policy. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withResourceSetIds(String... resourceSetIds) { if (this.resourceSetIds == null) { setResourceSetIds(new java.util.ArrayList* The unique identifiers of the resource sets used by the policy. *
* * @param resourceSetIds * The unique identifiers of the resource sets used by the policy. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withResourceSetIds(java.util.Collection* The definition of the Network Firewall firewall policy. *
* * @param policyDescription * The definition of the Network Firewall firewall policy. */ public void setPolicyDescription(String policyDescription) { this.policyDescription = policyDescription; } /** ** The definition of the Network Firewall firewall policy. *
* * @return The definition of the Network Firewall firewall policy. */ public String getPolicyDescription() { return this.policyDescription; } /** ** The definition of the Network Firewall firewall policy. *
* * @param policyDescription * The definition of the Network Firewall firewall policy. * @return Returns a reference to this object so that method calls can be chained together. */ public Policy withPolicyDescription(String policyDescription) { setPolicyDescription(policyDescription); return this; } /** ** Indicates whether the policy is in or out of an admin's policy or Region scope. *
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy won't be
* protected.
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy
* won't be protected.
*
* Indicates whether the policy is in or out of an admin's policy or Region scope. *
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy won't be
* protected.
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete
* the policy. Existing policy protections stay in place. Any new resources that come into scope of the
* policy won't be protected.
*
* Indicates whether the policy is in or out of an admin's policy or Region scope. *
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy won't be
* protected.
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy
* won't be protected.
*
* Indicates whether the policy is in or out of an admin's policy or Region scope. *
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy won't be
* protected.
*
* ACTIVE
- The administrator can manage and delete the policy.
*
* OUT_OF_ADMIN_SCOPE
- The administrator can view the policy, but they can't edit or delete the
* policy. Existing policy protections stay in place. Any new resources that come into scope of the policy
* won't be protected.
*