Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Synopsis
- data Policy = Policy' {
- policyId :: Maybe Text
- resourceTypeList :: Maybe [Text]
- resourceTags :: Maybe [ResourceTag]
- policyUpdateToken :: Maybe Text
- deleteUnusedFMManagedResources :: Maybe Bool
- excludeMap :: Maybe (HashMap CustomerPolicyScopeIdType [Text])
- includeMap :: Maybe (HashMap CustomerPolicyScopeIdType [Text])
- policyName :: Text
- securityServicePolicyData :: SecurityServicePolicyData
- resourceType :: Text
- excludeResourceTags :: Bool
- remediationEnabled :: Bool
- newPolicy :: Text -> SecurityServicePolicyData -> Text -> Bool -> Bool -> Policy
- policy_policyId :: Lens' Policy (Maybe Text)
- policy_resourceTypeList :: Lens' Policy (Maybe [Text])
- policy_resourceTags :: Lens' Policy (Maybe [ResourceTag])
- policy_policyUpdateToken :: Lens' Policy (Maybe Text)
- policy_deleteUnusedFMManagedResources :: Lens' Policy (Maybe Bool)
- policy_excludeMap :: Lens' Policy (Maybe (HashMap CustomerPolicyScopeIdType [Text]))
- policy_includeMap :: Lens' Policy (Maybe (HashMap CustomerPolicyScopeIdType [Text]))
- policy_policyName :: Lens' Policy Text
- policy_securityServicePolicyData :: Lens' Policy SecurityServicePolicyData
- policy_resourceType :: Lens' Policy Text
- policy_excludeResourceTags :: Lens' Policy Bool
- policy_remediationEnabled :: Lens' Policy Bool
Documentation
An Firewall Manager policy.
See: newPolicy
smart constructor.
Policy' | |
|
Instances
Create a value of Policy
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:policyId:Policy'
, policy_policyId
- The ID of the Firewall Manager policy.
$sel:resourceTypeList:Policy'
, policy_resourceTypeList
- An array of ResourceType
objects. Use this only to specify multiple
resource types. To specify a single resource type, use ResourceType
.
$sel:resourceTags:Policy'
, policy_resourceTags
- An array of ResourceTag
objects.
$sel:policyUpdateToken:Policy'
, policy_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.
$sel:deleteUnusedFMManagedResources:Policy'
, policy_deleteUnusedFMManagedResources
- Indicates whether Firewall Manager should delete Firewall Manager
managed resources, such as web ACLs and security groups, when they are
not in use by the Firewall Manager policy. By default, Firewall Manager
doesn't delete unused Firewall Manager managed resources. This option
is not available for Shield Advanced or WAF Classic policies.
$sel:excludeMap:Policy'
, policy_excludeMap
- 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”]}
.
$sel:includeMap:Policy'
, policy_includeMap
- 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”]}
.
$sel:policyName:Policy'
, policy_policyName
- The name of the Firewall Manager policy.
$sel:securityServicePolicyData:Policy'
, policy_securityServicePolicyData
- Details about the security service that is being used to protect the
resources.
$sel:resourceType:Policy'
, policy_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, example resource types include
AWS::ElasticLoadBalancingV2::LoadBalancer
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
.
$sel:excludeResourceTags:Policy'
, policy_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.
$sel:remediationEnabled:Policy'
, policy_remediationEnabled
- Indicates if the policy should be automatically applied to new
resources.
policy_resourceTypeList :: Lens' Policy (Maybe [Text]) Source #
An array of ResourceType
objects. Use this only to specify multiple
resource types. To specify a single resource type, use ResourceType
.
policy_resourceTags :: Lens' Policy (Maybe [ResourceTag]) Source #
An array of ResourceTag
objects.
policy_policyUpdateToken :: Lens' Policy (Maybe Text) Source #
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.
policy_deleteUnusedFMManagedResources :: Lens' Policy (Maybe Bool) Source #
Indicates whether Firewall Manager should delete Firewall Manager managed resources, such as web ACLs and security groups, when they are not in use by the Firewall Manager policy. By default, Firewall Manager doesn't delete unused Firewall Manager managed resources. This option is not available for Shield Advanced or WAF Classic policies.
policy_excludeMap :: Lens' Policy (Maybe (HashMap CustomerPolicyScopeIdType [Text])) Source #
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”]}
.
policy_includeMap :: Lens' Policy (Maybe (HashMap CustomerPolicyScopeIdType [Text])) Source #
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”]}
.
policy_securityServicePolicyData :: Lens' Policy SecurityServicePolicyData Source #
Details about the security service that is being used to protect the resources.
policy_resourceType :: Lens' Policy Text Source #
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, example resource types include
AWS::ElasticLoadBalancingV2::LoadBalancer
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
.