使用 Firewall Manager 示例 AWS CLI - AWS SDK代码示例

AWS 文档 AWS SDK示例 GitHub 存储库中还有更多SDK示例

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Firewall Manager 示例 AWS CLI

以下代码示例向您展示了如何使用与 Firewall Manager AWS Command Line Interface 配合使用来执行操作和实现常见场景。

操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以在其中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示如何使用 associate-admin-account

AWS CLI

设置 Firewall Manager 管理员帐户

以下associate-admin-account示例为 Firewall Manager 设置管理员帐户。

aws fms associate-admin-account \ --admin-account 123456789012

此命令不生成任何输出。

有关更多信息,请参阅《Firewal AWS l Manager an AWS d Shield 高级开发者指南》中的 “AWS WAF设置 AWS 防火墙管理器管理员帐户”。

以下代码示例演示如何使用 delete-notification-channel

AWS CLI

删除 Firewall Manager 日志的SNS主题信息

以下delete-notification-channel示例删除了SNS主题信息。

aws fms delete-notification-channel

此命令不生成任何输出。

有关更多信息,请参阅 Fi AWS rewall Manager 和 AWS Shield 高级开发人员指南中的配置亚马逊SNS通知和亚马逊 CloudWatch 警报。AWS WAF

以下代码示例演示如何使用 delete-policy

AWS CLI

删除 Firewall Manager 策略

以下delete-policy示例删除了具有指定 ID 的策略及其所有资源。

aws fms delete-policy \ --policy-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --delete-all-policy-resources

此命令不生成任何输出。

有关更多信息,请参阅《Fire wal AWS l Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用 AWS 防火墙管理器策略”。

以下代码示例演示如何使用 disassociate-admin-account

AWS CLI

删除 Firewall Manager 管理员帐户

以下disassociate-admin-account示例从 Firewall Manager 中删除当前的管理员帐户关联。

aws fms disassociate-admin-account

此命令不生成任何输出。

有关更多信息,请参阅《Firewal AWS l Manager an AWS d Shield 高级开发者指南》中的 “AWS WAF设置 AWS 防火墙管理器管理员帐户”。

以下代码示例演示如何使用 get-admin-account

AWS CLI

检索 Firewall Manager 管理员帐户

以下get-admin-account示例检索管理员帐户。

aws fms get-admin-account

输出:

{ "AdminAccount": "123456789012", "RoleStatus": "READY" }

有关更多信息,请参阅《AWS WAF Fi AWS rewall Manager 和 AWS Shield 高级开发者指南》中的 Fi AWS rewall Manager 先决条件

以下代码示例演示如何使用 get-compliance-detail

AWS CLI

检索账户的合规信息

以下get-compliance-detail示例检索指定策略和成员账户的合规性信息。

aws fms get-compliance-detail \ --policy-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --member-account 123456789012

输出:

{ "PolicyComplianceDetail": { "EvaluationLimitExceeded": false, "IssueInfoMap": {}, "MemberAccount": "123456789012", "PolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyOwner": "123456789012", "Violators": [] }

有关更多信息,请参阅《Fi AWS rewall Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用策略查看资源合规性”。

以下代码示例演示如何使用 get-notification-channel

AWS CLI

检索 Firewall Manager 日志的SNS主题信息

以下get-notification-channel示例检索SNS主题信息。

aws fms get-notification-channel

输出:

{ "SnsTopicArn": "arn:aws:sns:us-west-2:123456789012:us-west-2-fms", "SnsRoleName": "arn:aws:iam::123456789012:role/aws-service-role/fms.amazonaws.com/AWSServiceRoleForFMS" }

有关更多信息,请参阅 Fi AWS rewall Manager 和 AWS Shield 高级开发人员指南中的配置亚马逊SNS通知和亚马逊 CloudWatch 警报。AWS WAF

以下代码示例演示如何使用 get-policy

AWS CLI

检索 Firewall Manager 策略

以下get-policy示例检索具有指定 ID 的策略。

aws fms get-policy \ --policy-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

输出:

{ "Policy": { "PolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyName": "test", "PolicyUpdateToken": "1:p+2RpKR4wPFx7mcrL1UOQQ==", "SecurityServicePolicyData": { "Type": "SECURITY_GROUPS_COMMON", "ManagedServiceData": "{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":true,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\"sg-045c43ccc9724e63e\"}]}" }, "ResourceType": "AWS::EC2::Instance", "ResourceTags": [], "ExcludeResourceTags": false, "RemediationEnabled": false }, "PolicyArn": "arn:aws:fms:us-west-2:123456789012:policy/d1ac59b8-938e-42b3-b2e0-7c620422ddc2" }

有关更多信息,请参阅《Fire wal AWS l Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用 AWS 防火墙管理器策略”。

以下代码示例演示如何使用 list-compliance-status

AWS CLI

检索成员账户的政策合规性信息

以下list-compliance-status示例检索指定策略的成员账户合规性信息。

aws fms list-compliance-status \ --policy-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

输出:

{ "PolicyComplianceStatusList": [ { "PolicyOwner": "123456789012", "PolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyName": "test", "MemberAccount": "123456789012", "EvaluationResults": [ { "ComplianceStatus": "COMPLIANT", "ViolatorCount": 0, "EvaluationLimitExceeded": false }, { "ComplianceStatus": "NON_COMPLIANT", "ViolatorCount": 2, "EvaluationLimitExceeded": false } ], "LastUpdated": 1576283774.0, "IssueInfoMap": {} } ] }

有关更多信息,请参阅《Fi AWS rewall Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用策略查看资源合规性”。

以下代码示例演示如何使用 list-member-accounts

AWS CLI

检索组织中的成员账户

以下list-member-accounts示例列出了 Firewall Manager 管理员组织中的所有成员帐户。

aws fms list-member-accounts

输出:

{ "MemberAccounts": [ "222222222222", "333333333333", "444444444444" ] }

有关更多信息,请参阅《Fi AWS rewall Manager和《AWS WAF AWS Shield 高级开发者指南》中的 Fi AWS rewall M anager。

以下代码示例演示如何使用 list-policies

AWS CLI

检索所有 Firewall Manager 策略

以下list-policies示例检索账户的策略列表。在此示例中,每个请求的输出限制为两个结果。每次调用都会返回一个NextToken,该值可用作下次list-policies调用中--starting-token参数的值,以获取列表的下一组结果。

aws fms list-policies \ --max-items 2

输出:

{ "PolicyList": [ { "PolicyArn": "arn:aws:fms:us-west-2:123456789012:policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyName": "test", "ResourceType": "AWS::EC2::Instance", "SecurityServiceType": "SECURITY_GROUPS_COMMON", "RemediationEnabled": false }, { "PolicyArn": "arn:aws:fms:us-west-2:123456789012:policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "PolicyId": "457c9b21-fc94-406c-ae63-21217395ba72", "PolicyName": "test", "ResourceType": "AWS::EC2::Instance", "SecurityServiceType": "SECURITY_GROUPS_COMMON", "RemediationEnabled": false } ], "NextToken": "eyJOZXh0VG9rZW4iOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==" }

有关更多信息,请参阅《Fire wal AWS l Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用 AWS 防火墙管理器策略”。

以下代码示例演示如何使用 put-notification-channel

AWS CLI

设置 Firewall Manager 日志的SNS主题信息

以下put-notification-channel示例设置了SNS主题信息。

aws fms put-notification-channel \ --sns-topic-arn arn:aws:sns:us-west-2:123456789012:us-west-2-fms \ --sns-role-name arn:aws:iam::123456789012:role/aws-service-role/fms.amazonaws.com/AWSServiceRoleForFMS

此命令不生成任何输出。

有关更多信息,请参阅 Fi AWS rewall Manager 和 AWS Shield 高级开发人员指南中的配置亚马逊SNS通知和亚马逊 CloudWatch 警报。AWS WAF

以下代码示例演示如何使用 put-policy

AWS CLI

创建 Firewall Manager 策略

以下put-policy示例创建了 Firewall Manager 安全组策略。

aws fms put-policy \ --cli-input-json file://policy.json

policy.json 的内容:

{ "Policy": { "PolicyName": "test", "SecurityServicePolicyData": { "Type": "SECURITY_GROUPS_USAGE_AUDIT", "ManagedServiceData": "{\"type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"deleteUnusedSecurityGroups\":false,\"coalesceRedundantSecurityGroups\":true}" }, "ResourceType": "AWS::EC2::SecurityGroup", "ResourceTags": [], "ExcludeResourceTags": false, "RemediationEnabled": false }, "TagList": [ { "Key": "foo", "Value": "foo" } ] }

输出:

{ "Policy": { "PolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "PolicyName": "test", "PolicyUpdateToken": "1:X9QGexP7HASDlsFp+G31Iw==", "SecurityServicePolicyData": { "Type": "SECURITY_GROUPS_USAGE_AUDIT", "ManagedServiceData": "{\"type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"deleteUnusedSecurityGroups\":false,\"coalesceRedundantSecurityGroups\":true,\"optionalDelayForUnusedInMinutes\":null}" }, "ResourceType": "AWS::EC2::SecurityGroup", "ResourceTags": [], "ExcludeResourceTags": false, "RemediationEnabled": false }, "PolicyArn": "arn:aws:fms:us-west-2:123456789012:policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

有关更多信息,请参阅《Fire wal AWS l Manager 和 AWS Shield 高级开发者指南》中的 “AWS WAF使用 AWS 防火墙管理器策略”。