fms

package
v0.24.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2020 License: Apache-2.0 Imports: 9 Imported by: 15

Documentation

Overview

Package fms provides the client and types for making API requests to FMS.

This is the AWS Firewall Manager API Reference. This guide is for developers who need detailed information about the AWS Firewall Manager API actions, data types, and errors. For detailed information about AWS Firewall Manager features, see the AWS Firewall Manager Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/fms-chapter.html).

See https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01 for more information on this service.

See fms package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/fms/

Using the Client

To use FMS with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the FMS client for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/fms/#New

Index

Constants

View Source
const (
	ServiceName = "FMS" // Service's name
	ServiceID   = "FMS" // Service's identifier
	EndpointsID = "fms" // Service's Endpoint identifier
)
View Source
const (

	// ErrCodeInternalErrorException for service response error code
	// "InternalErrorException".
	//
	// The operation failed because of a system problem, even though the request
	// was valid. Retry your request.
	ErrCodeInternalErrorException = "InternalErrorException"

	// ErrCodeInvalidInputException for service response error code
	// "InvalidInputException".
	//
	// The parameters of the request were invalid.
	ErrCodeInvalidInputException = "InvalidInputException"

	// ErrCodeInvalidOperationException for service response error code
	// "InvalidOperationException".
	//
	// The operation failed because there was nothing to do or the operation wasn't
	// possible. For example, you might have submitted an AssociateAdminAccount
	// request for an account ID that was already set as the AWS Firewall Manager
	// administrator. Or you might have tried to access a Region that's disabled
	// by default, and that you need to enable for the Firewall Manager administrator
	// account and for AWS Organizations before you can access it.
	ErrCodeInvalidOperationException = "InvalidOperationException"

	// ErrCodeInvalidTypeException for service response error code
	// "InvalidTypeException".
	//
	// The value of the Type parameter is invalid.
	ErrCodeInvalidTypeException = "InvalidTypeException"

	// ErrCodeLimitExceededException for service response error code
	// "LimitExceededException".
	//
	// The operation exceeds a resource limit, for example, the maximum number of
	// policy objects that you can create for an AWS account. For more information,
	// see Firewall Manager Limits (https://docs.aws.amazon.com/waf/latest/developerguide/fms-limits.html)
	// in the AWS WAF Developer Guide.
	ErrCodeLimitExceededException = "LimitExceededException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// The specified resource was not found.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountRoleStatus added in v0.5.0

type AccountRoleStatus string
const (
	AccountRoleStatusReady           AccountRoleStatus = "READY"
	AccountRoleStatusCreating        AccountRoleStatus = "CREATING"
	AccountRoleStatusPendingDeletion AccountRoleStatus = "PENDING_DELETION"
	AccountRoleStatusDeleting        AccountRoleStatus = "DELETING"
	AccountRoleStatusDeleted         AccountRoleStatus = "DELETED"
)

Enum values for AccountRoleStatus

func (AccountRoleStatus) MarshalValue added in v0.5.0

func (enum AccountRoleStatus) MarshalValue() (string, error)

func (AccountRoleStatus) MarshalValueBuf added in v0.5.0

func (enum AccountRoleStatus) MarshalValueBuf(b []byte) ([]byte, error)

type App added in v0.24.0

type App struct {

	// The application's name.
	//
	// AppName is a required field
	AppName *string `min:"1" type:"string" required:"true"`

	// The application's port number, for example 80.
	//
	// Port is a required field
	Port *int64 `type:"long" required:"true"`

	// The IP protocol name or number. The name can be one of tcp, udp, or icmp.
	// For information on possible numbers, see Protocol Numbers (https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml).
	//
	// Protocol is a required field
	Protocol *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

An individual AWS Firewall Manager application.

func (App) String added in v0.24.0

func (s App) String() string

String returns the string representation

func (*App) Validate added in v0.24.0

func (s *App) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AppsListData added in v0.24.0

type AppsListData struct {

	// An array of applications in the AWS Firewall Manager applications list.
	//
	// AppsList is a required field
	AppsList []App `type:"list" required:"true"`

	// The time that the AWS Firewall Manager applications list was created.
	CreateTime *time.Time `type:"timestamp"`

	// The time that the AWS Firewall Manager applications list was last updated.
	LastUpdateTime *time.Time `type:"timestamp"`

	// The ID of the AWS Firewall Manager applications list.
	ListId *string `min:"36" type:"string"`

	// The name of the AWS Firewall Manager applications list.
	//
	// ListName is a required field
	ListName *string `min:"1" type:"string" required:"true"`

	// A unique identifier for each update to the list. When you update the list,
	// the update token must match the token of the current version of the application
	// list. You can retrieve the update token by getting the list.
	ListUpdateToken *string `min:"1" type:"string"`

	// A map of previous version numbers to their corresponding App object arrays.
	PreviousAppsList map[string][]App `type:"map"`
	// contains filtered or unexported fields
}

An AWS Firewall Manager applications list.

func (AppsListData) String added in v0.24.0

func (s AppsListData) String() string

String returns the string representation

func (*AppsListData) Validate added in v0.24.0

func (s *AppsListData) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AppsListDataSummary added in v0.24.0

type AppsListDataSummary struct {

	// An array of App objects in the AWS Firewall Manager applications list.
	AppsList []App `type:"list"`

	// The Amazon Resource Name (ARN) of the applications list.
	ListArn *string `min:"1" type:"string"`

	// The ID of the applications list.
	ListId *string `min:"36" type:"string"`

	// The name of the applications list.
	ListName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Details of the AWS Firewall Manager applications list.

func (AppsListDataSummary) String added in v0.24.0

func (s AppsListDataSummary) String() string

String returns the string representation

type AssociateAdminAccountInput

type AssociateAdminAccountInput struct {

	// The AWS account ID to associate with AWS Firewall Manager as the AWS Firewall
	// Manager administrator account. This can be an AWS Organizations master account
	// or a member account. For more information about AWS Organizations and master
	// accounts, see Managing the AWS Accounts in Your Organization (https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts.html).
	//
	// AdminAccount is a required field
	AdminAccount *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AssociateAdminAccountInput) String

String returns the string representation

func (*AssociateAdminAccountInput) Validate

func (s *AssociateAdminAccountInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type AssociateAdminAccountOutput

type AssociateAdminAccountOutput struct {
	// contains filtered or unexported fields
}

func (AssociateAdminAccountOutput) String

String returns the string representation

type AssociateAdminAccountRequest

type AssociateAdminAccountRequest struct {
	*aws.Request
	Input *AssociateAdminAccountInput
	Copy  func(*AssociateAdminAccountInput) AssociateAdminAccountRequest
}

AssociateAdminAccountRequest is the request type for the AssociateAdminAccount API operation.

func (AssociateAdminAccountRequest) Send

Send marshals and sends the AssociateAdminAccount API request.

type AssociateAdminAccountResponse added in v0.9.0

type AssociateAdminAccountResponse struct {
	*AssociateAdminAccountOutput
	// contains filtered or unexported fields
}

AssociateAdminAccountResponse is the response type for the AssociateAdminAccount API operation.

func (*AssociateAdminAccountResponse) SDKResponseMetdata added in v0.9.0

func (r *AssociateAdminAccountResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the AssociateAdminAccount request.

type AwsEc2InstanceViolation added in v0.24.0

type AwsEc2InstanceViolation struct {

	// Violations for network interfaces associated with the EC2 instance.
	AwsEc2NetworkInterfaceViolations []AwsEc2NetworkInterfaceViolation `type:"list"`

	// The resource ID of the EC2 instance.
	ViolationTarget *string `type:"string"`
	// contains filtered or unexported fields
}

Violations for an EC2 instance resource.

func (AwsEc2InstanceViolation) String added in v0.24.0

func (s AwsEc2InstanceViolation) String() string

String returns the string representation

type AwsEc2NetworkInterfaceViolation added in v0.24.0

type AwsEc2NetworkInterfaceViolation struct {

	// List of security groups that violate the rules specified in the master security
	// group of the AWS Firewall Manager policy.
	ViolatingSecurityGroups []string `type:"list"`

	// The resource ID of the network interface.
	ViolationTarget *string `type:"string"`
	// contains filtered or unexported fields
}

Violations for network interfaces associated with an EC2 instance.

func (AwsEc2NetworkInterfaceViolation) String added in v0.24.0

String returns the string representation

type AwsVPCSecurityGroupViolation added in v0.24.0

type AwsVPCSecurityGroupViolation struct {

	// List of rules specified in the security group of the AWS Firewall Manager
	// policy that partially match the ViolationTarget rule.
	PartialMatches []PartialMatch `type:"list"`

	// Remediation options for the rule specified in the ViolationTarget.
	PossibleSecurityGroupRemediationActions []SecurityGroupRemediationAction `type:"list"`

	// The security group rule that is being evaluated.
	ViolationTarget *string `type:"string"`

	// A description of the security group that violates the policy.
	ViolationTargetDescription *string `type:"string"`
	// contains filtered or unexported fields
}

Details of the rule violation in a security group when compared to the master security group of the AWS Firewall Manager policy.

func (AwsVPCSecurityGroupViolation) String added in v0.24.0

String returns the string representation

type Client added in v0.9.0

type Client struct {
	*aws.Client
}

Client provides the API operation methods for making requests to FMS. See this package's package overview docs for details on the service.

The client's methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(config aws.Config) *Client

New creates a new instance of the client from the provided Config.

Example:

// Create a client from just a config.
svc := fms.New(myConfig)

func (*Client) AssociateAdminAccountRequest added in v0.9.0

func (c *Client) AssociateAdminAccountRequest(input *AssociateAdminAccountInput) AssociateAdminAccountRequest

AssociateAdminAccountRequest returns a request value for making API operation for Firewall Management Service.

Sets the AWS Firewall Manager administrator account. AWS Firewall Manager must be associated with the master account of your AWS organization or associated with a member account that has the appropriate permissions. If the account ID that you submit is not an AWS Organizations master account, AWS Firewall Manager will set the appropriate permissions for the given member account.

The account that you associate with AWS Firewall Manager is called the AWS Firewall Manager administrator account.

// Example sending a request using AssociateAdminAccountRequest.
req := client.AssociateAdminAccountRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/AssociateAdminAccount

func (*Client) DeleteAppsListRequest added in v0.24.0

func (c *Client) DeleteAppsListRequest(input *DeleteAppsListInput) DeleteAppsListRequest

DeleteAppsListRequest returns a request value for making API operation for Firewall Management Service.

Permanently deletes an AWS Firewall Manager applications list.

// Example sending a request using DeleteAppsListRequest.
req := client.DeleteAppsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DeleteAppsList

func (*Client) DeleteNotificationChannelRequest added in v0.9.0

func (c *Client) DeleteNotificationChannelRequest(input *DeleteNotificationChannelInput) DeleteNotificationChannelRequest

DeleteNotificationChannelRequest returns a request value for making API operation for Firewall Management Service.

Deletes an AWS Firewall Manager association with the IAM role and the Amazon Simple Notification Service (SNS) topic that is used to record AWS Firewall Manager SNS logs.

// Example sending a request using DeleteNotificationChannelRequest.
req := client.DeleteNotificationChannelRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DeleteNotificationChannel

func (*Client) DeletePolicyRequest added in v0.9.0

func (c *Client) DeletePolicyRequest(input *DeletePolicyInput) DeletePolicyRequest

DeletePolicyRequest returns a request value for making API operation for Firewall Management Service.

Permanently deletes an AWS Firewall Manager policy.

// Example sending a request using DeletePolicyRequest.
req := client.DeletePolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DeletePolicy

func (*Client) DeleteProtocolsListRequest added in v0.24.0

func (c *Client) DeleteProtocolsListRequest(input *DeleteProtocolsListInput) DeleteProtocolsListRequest

DeleteProtocolsListRequest returns a request value for making API operation for Firewall Management Service.

Permanently deletes an AWS Firewall Manager protocols list.

// Example sending a request using DeleteProtocolsListRequest.
req := client.DeleteProtocolsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DeleteProtocolsList

func (*Client) DisassociateAdminAccountRequest added in v0.9.0

func (c *Client) DisassociateAdminAccountRequest(input *DisassociateAdminAccountInput) DisassociateAdminAccountRequest

DisassociateAdminAccountRequest returns a request value for making API operation for Firewall Management Service.

Disassociates the account that has been set as the AWS Firewall Manager administrator account. To set a different account as the administrator account, you must submit an AssociateAdminAccount request.

// Example sending a request using DisassociateAdminAccountRequest.
req := client.DisassociateAdminAccountRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/DisassociateAdminAccount

func (*Client) GetAdminAccountRequest added in v0.9.0

func (c *Client) GetAdminAccountRequest(input *GetAdminAccountInput) GetAdminAccountRequest

GetAdminAccountRequest returns a request value for making API operation for Firewall Management Service.

Returns the AWS Organizations master account that is associated with AWS Firewall Manager as the AWS Firewall Manager administrator.

// Example sending a request using GetAdminAccountRequest.
req := client.GetAdminAccountRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAdminAccount

func (*Client) GetAppsListRequest added in v0.24.0

func (c *Client) GetAppsListRequest(input *GetAppsListInput) GetAppsListRequest

GetAppsListRequest returns a request value for making API operation for Firewall Management Service.

Returns information about the specified AWS Firewall Manager applications list.

// Example sending a request using GetAppsListRequest.
req := client.GetAppsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAppsList

func (*Client) GetComplianceDetailRequest added in v0.9.0

func (c *Client) GetComplianceDetailRequest(input *GetComplianceDetailInput) GetComplianceDetailRequest

GetComplianceDetailRequest returns a request value for making API operation for Firewall Management Service.

Returns detailed compliance information about the specified member account. Details include resources that are in and out of compliance with the specified policy. Resources are considered noncompliant for AWS WAF and Shield Advanced policies if the specified policy has not been applied to them. Resources are considered noncompliant for security group policies if they are in scope of the policy, they violate one or more of the policy rules, and remediation is disabled or not possible.

// Example sending a request using GetComplianceDetailRequest.
req := client.GetComplianceDetailRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetComplianceDetail

func (*Client) GetNotificationChannelRequest added in v0.9.0

func (c *Client) GetNotificationChannelRequest(input *GetNotificationChannelInput) GetNotificationChannelRequest

GetNotificationChannelRequest returns a request value for making API operation for Firewall Management Service.

Information about the Amazon Simple Notification Service (SNS) topic that is used to record AWS Firewall Manager SNS logs.

// Example sending a request using GetNotificationChannelRequest.
req := client.GetNotificationChannelRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetNotificationChannel

func (*Client) GetPolicyRequest added in v0.9.0

func (c *Client) GetPolicyRequest(input *GetPolicyInput) GetPolicyRequest

GetPolicyRequest returns a request value for making API operation for Firewall Management Service.

Returns information about the specified AWS Firewall Manager policy.

// Example sending a request using GetPolicyRequest.
req := client.GetPolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetPolicy

func (*Client) GetProtectionStatusRequest added in v0.9.0

func (c *Client) GetProtectionStatusRequest(input *GetProtectionStatusInput) GetProtectionStatusRequest

GetProtectionStatusRequest returns a request value for making API operation for Firewall Management Service.

If you created a Shield Advanced policy, returns policy-level attack summary information in the event of a potential DDoS attack. Other policy types are currently unsupported.

// Example sending a request using GetProtectionStatusRequest.
req := client.GetProtectionStatusRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtectionStatus

func (*Client) GetProtocolsListRequest added in v0.24.0

func (c *Client) GetProtocolsListRequest(input *GetProtocolsListInput) GetProtocolsListRequest

GetProtocolsListRequest returns a request value for making API operation for Firewall Management Service.

Returns information about the specified AWS Firewall Manager protocols list.

// Example sending a request using GetProtocolsListRequest.
req := client.GetProtocolsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtocolsList

func (*Client) GetViolationDetailsRequest added in v0.24.0

func (c *Client) GetViolationDetailsRequest(input *GetViolationDetailsInput) GetViolationDetailsRequest

GetViolationDetailsRequest returns a request value for making API operation for Firewall Management Service.

Retrieves violations for a resource based on the specified AWS Firewall Manager policy and AWS account.

// Example sending a request using GetViolationDetailsRequest.
req := client.GetViolationDetailsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetViolationDetails

func (*Client) ListAppsListsRequest added in v0.24.0

func (c *Client) ListAppsListsRequest(input *ListAppsListsInput) ListAppsListsRequest

ListAppsListsRequest returns a request value for making API operation for Firewall Management Service.

Returns an array of AppsListDataSummary objects.

// Example sending a request using ListAppsListsRequest.
req := client.ListAppsListsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListAppsLists

func (*Client) ListComplianceStatusRequest added in v0.9.0

func (c *Client) ListComplianceStatusRequest(input *ListComplianceStatusInput) ListComplianceStatusRequest

ListComplianceStatusRequest returns a request value for making API operation for Firewall Management Service.

Returns an array of PolicyComplianceStatus objects. Use PolicyComplianceStatus to get a summary of which member accounts are protected by the specified policy.

// Example sending a request using ListComplianceStatusRequest.
req := client.ListComplianceStatusRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListComplianceStatus

func (*Client) ListMemberAccountsRequest added in v0.9.0

func (c *Client) ListMemberAccountsRequest(input *ListMemberAccountsInput) ListMemberAccountsRequest

ListMemberAccountsRequest returns a request value for making API operation for Firewall Management Service.

Returns a MemberAccounts object that lists the member accounts in the administrator's AWS organization.

The ListMemberAccounts must be submitted by the account that is set as the AWS Firewall Manager administrator.

// Example sending a request using ListMemberAccountsRequest.
req := client.ListMemberAccountsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListMemberAccounts

func (*Client) ListPoliciesRequest added in v0.9.0

func (c *Client) ListPoliciesRequest(input *ListPoliciesInput) ListPoliciesRequest

ListPoliciesRequest returns a request value for making API operation for Firewall Management Service.

Returns an array of PolicySummary objects.

// Example sending a request using ListPoliciesRequest.
req := client.ListPoliciesRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListPolicies

func (*Client) ListProtocolsListsRequest added in v0.24.0

func (c *Client) ListProtocolsListsRequest(input *ListProtocolsListsInput) ListProtocolsListsRequest

ListProtocolsListsRequest returns a request value for making API operation for Firewall Management Service.

Returns an array of ProtocolsListDataSummary objects.

// Example sending a request using ListProtocolsListsRequest.
req := client.ListProtocolsListsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListProtocolsLists

func (*Client) ListTagsForResourceRequest added in v0.19.0

func (c *Client) ListTagsForResourceRequest(input *ListTagsForResourceInput) ListTagsForResourceRequest

ListTagsForResourceRequest returns a request value for making API operation for Firewall Management Service.

Retrieves the list of tags for the specified AWS resource.

// Example sending a request using ListTagsForResourceRequest.
req := client.ListTagsForResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListTagsForResource

func (*Client) PutAppsListRequest added in v0.24.0

func (c *Client) PutAppsListRequest(input *PutAppsListInput) PutAppsListRequest

PutAppsListRequest returns a request value for making API operation for Firewall Management Service.

Creates an AWS Firewall Manager applications list.

// Example sending a request using PutAppsListRequest.
req := client.PutAppsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutAppsList

func (*Client) PutNotificationChannelRequest added in v0.9.0

func (c *Client) PutNotificationChannelRequest(input *PutNotificationChannelInput) PutNotificationChannelRequest

PutNotificationChannelRequest returns a request value for making API operation for Firewall Management Service.

Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.

// Example sending a request using PutNotificationChannelRequest.
req := client.PutNotificationChannelRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutNotificationChannel

func (*Client) PutPolicyRequest added in v0.9.0

func (c *Client) PutPolicyRequest(input *PutPolicyInput) PutPolicyRequest

PutPolicyRequest returns a request value for making API operation for Firewall Management Service.

Creates an AWS Firewall Manager policy.

Firewall Manager provides the following types of policies:

  • A Shield Advanced policy, which applies Shield Advanced protection to specified accounts and resources

  • An AWS WAF policy (type WAFV2), which defines rule groups to run first in the corresponding AWS WAF web ACL and rule groups to run last in the web ACL.

  • An AWS WAF Classic policy (type WAF), which defines a rule group.

  • A security group policy, which manages VPC security groups across your AWS organization.

Each policy is specific to one of the types. If you want to enforce more than one policy type across accounts, create multiple policies. You can create multiple policies for each type.

You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more information about subscribing to Shield Advanced, see CreateSubscription (https://docs.aws.amazon.com/waf/latest/DDOSAPIReference/API_CreateSubscription.html).

// Example sending a request using PutPolicyRequest.
req := client.PutPolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutPolicy

func (*Client) PutProtocolsListRequest added in v0.24.0

func (c *Client) PutProtocolsListRequest(input *PutProtocolsListInput) PutProtocolsListRequest

PutProtocolsListRequest returns a request value for making API operation for Firewall Management Service.

Creates an AWS Firewall Manager protocols list.

// Example sending a request using PutProtocolsListRequest.
req := client.PutProtocolsListRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutProtocolsList

func (*Client) TagResourceRequest added in v0.19.0

func (c *Client) TagResourceRequest(input *TagResourceInput) TagResourceRequest

TagResourceRequest returns a request value for making API operation for Firewall Management Service.

Adds one or more tags to an AWS resource.

// Example sending a request using TagResourceRequest.
req := client.TagResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/TagResource

func (*Client) UntagResourceRequest added in v0.19.0

func (c *Client) UntagResourceRequest(input *UntagResourceInput) UntagResourceRequest

UntagResourceRequest returns a request value for making API operation for Firewall Management Service.

Removes one or more tags from an AWS resource.

// Example sending a request using UntagResourceRequest.
req := client.UntagResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/UntagResource

type ComplianceViolator

type ComplianceViolator struct {

	// The resource ID.
	ResourceId *string `min:"1" type:"string"`

	// The resource type. This is in the format shown in the AWS Resource Types
	// Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html).
	// For example: AWS::ElasticLoadBalancingV2::LoadBalancer or AWS::CloudFront::Distribution.
	ResourceType *string `min:"1" type:"string"`

	// The reason that the resource is not protected by the policy.
	ViolationReason ViolationReason `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

Details of the resource that is not protected by the policy.

func (ComplianceViolator) String

func (s ComplianceViolator) String() string

String returns the string representation

type CustomerPolicyScopeIdType added in v0.5.0

type CustomerPolicyScopeIdType string
const (
	CustomerPolicyScopeIdTypeAccount CustomerPolicyScopeIdType = "ACCOUNT"
	CustomerPolicyScopeIdTypeOrgUnit CustomerPolicyScopeIdType = "ORG_UNIT"
)

Enum values for CustomerPolicyScopeIdType

func (CustomerPolicyScopeIdType) MarshalValue added in v0.5.0

func (enum CustomerPolicyScopeIdType) MarshalValue() (string, error)

func (CustomerPolicyScopeIdType) MarshalValueBuf added in v0.5.0

func (enum CustomerPolicyScopeIdType) MarshalValueBuf(b []byte) ([]byte, error)

type DeleteAppsListInput added in v0.24.0

type DeleteAppsListInput struct {

	// The ID of the applications list that you want to delete. You can retrieve
	// this ID from PutAppsList, ListAppsLists, and GetAppsList.
	//
	// ListId is a required field
	ListId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteAppsListInput) String added in v0.24.0

func (s DeleteAppsListInput) String() string

String returns the string representation

func (*DeleteAppsListInput) Validate added in v0.24.0

func (s *DeleteAppsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteAppsListOutput added in v0.24.0

type DeleteAppsListOutput struct {
	// contains filtered or unexported fields
}

func (DeleteAppsListOutput) String added in v0.24.0

func (s DeleteAppsListOutput) String() string

String returns the string representation

type DeleteAppsListRequest added in v0.24.0

type DeleteAppsListRequest struct {
	*aws.Request
	Input *DeleteAppsListInput
	Copy  func(*DeleteAppsListInput) DeleteAppsListRequest
}

DeleteAppsListRequest is the request type for the DeleteAppsList API operation.

func (DeleteAppsListRequest) Send added in v0.24.0

Send marshals and sends the DeleteAppsList API request.

type DeleteAppsListResponse added in v0.24.0

type DeleteAppsListResponse struct {
	*DeleteAppsListOutput
	// contains filtered or unexported fields
}

DeleteAppsListResponse is the response type for the DeleteAppsList API operation.

func (*DeleteAppsListResponse) SDKResponseMetdata added in v0.24.0

func (r *DeleteAppsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteAppsList request.

type DeleteNotificationChannelInput

type DeleteNotificationChannelInput struct {
	// contains filtered or unexported fields
}

func (DeleteNotificationChannelInput) String

String returns the string representation

type DeleteNotificationChannelOutput

type DeleteNotificationChannelOutput struct {
	// contains filtered or unexported fields
}

func (DeleteNotificationChannelOutput) String

String returns the string representation

type DeleteNotificationChannelRequest

type DeleteNotificationChannelRequest struct {
	*aws.Request
	Input *DeleteNotificationChannelInput
	Copy  func(*DeleteNotificationChannelInput) DeleteNotificationChannelRequest
}

DeleteNotificationChannelRequest is the request type for the DeleteNotificationChannel API operation.

func (DeleteNotificationChannelRequest) Send

Send marshals and sends the DeleteNotificationChannel API request.

type DeleteNotificationChannelResponse added in v0.9.0

type DeleteNotificationChannelResponse struct {
	*DeleteNotificationChannelOutput
	// contains filtered or unexported fields
}

DeleteNotificationChannelResponse is the response type for the DeleteNotificationChannel API operation.

func (*DeleteNotificationChannelResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteNotificationChannelResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteNotificationChannel request.

type DeletePolicyInput

type DeletePolicyInput struct {

	// If True, the request performs cleanup according to the policy type.
	//
	// For AWS WAF and Shield Advanced policies, the cleanup does the following:
	//
	//    * Deletes rule groups created by AWS Firewall Manager
	//
	//    * Removes web ACLs from in-scope resources
	//
	//    * Deletes web ACLs that contain no rules or rule groups
	//
	// For security group policies, the cleanup does the following for each security
	// group in the policy:
	//
	//    * Disassociates the security group from in-scope resources
	//
	//    * Deletes the security group if it was created through Firewall Manager
	//    and if it's no longer associated with any resources through another policy
	//
	// After the cleanup, in-scope resources are no longer protected by web ACLs
	// in this policy. Protection of out-of-scope resources remains unchanged. Scope
	// is determined by tags that you create and accounts that you associate with
	// the policy. When creating the policy, if you specify that only resources
	// in specific accounts or with specific tags are in scope of the policy, those
	// accounts and resources are handled by the policy. All others are out of scope.
	// If you don't specify tags or accounts, all resources are in scope.
	DeleteAllPolicyResources *bool `type:"boolean"`

	// The ID of the policy that you want to delete. You can retrieve this ID from
	// PutPolicy and ListPolicies.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeletePolicyInput) String

func (s DeletePolicyInput) String() string

String returns the string representation

func (*DeletePolicyInput) Validate

func (s *DeletePolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeletePolicyOutput

type DeletePolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeletePolicyOutput) String

func (s DeletePolicyOutput) String() string

String returns the string representation

type DeletePolicyRequest

type DeletePolicyRequest struct {
	*aws.Request
	Input *DeletePolicyInput
	Copy  func(*DeletePolicyInput) DeletePolicyRequest
}

DeletePolicyRequest is the request type for the DeletePolicy API operation.

func (DeletePolicyRequest) Send

Send marshals and sends the DeletePolicy API request.

type DeletePolicyResponse added in v0.9.0

type DeletePolicyResponse struct {
	*DeletePolicyOutput
	// contains filtered or unexported fields
}

DeletePolicyResponse is the response type for the DeletePolicy API operation.

func (*DeletePolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *DeletePolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeletePolicy request.

type DeleteProtocolsListInput added in v0.24.0

type DeleteProtocolsListInput struct {

	// The ID of the protocols list that you want to delete. You can retrieve this
	// ID from PutProtocolsList, ListProtocolsLists, and GetProtocolsLost.
	//
	// ListId is a required field
	ListId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteProtocolsListInput) String added in v0.24.0

func (s DeleteProtocolsListInput) String() string

String returns the string representation

func (*DeleteProtocolsListInput) Validate added in v0.24.0

func (s *DeleteProtocolsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteProtocolsListOutput added in v0.24.0

type DeleteProtocolsListOutput struct {
	// contains filtered or unexported fields
}

func (DeleteProtocolsListOutput) String added in v0.24.0

func (s DeleteProtocolsListOutput) String() string

String returns the string representation

type DeleteProtocolsListRequest added in v0.24.0

type DeleteProtocolsListRequest struct {
	*aws.Request
	Input *DeleteProtocolsListInput
	Copy  func(*DeleteProtocolsListInput) DeleteProtocolsListRequest
}

DeleteProtocolsListRequest is the request type for the DeleteProtocolsList API operation.

func (DeleteProtocolsListRequest) Send added in v0.24.0

Send marshals and sends the DeleteProtocolsList API request.

type DeleteProtocolsListResponse added in v0.24.0

type DeleteProtocolsListResponse struct {
	*DeleteProtocolsListOutput
	// contains filtered or unexported fields
}

DeleteProtocolsListResponse is the response type for the DeleteProtocolsList API operation.

func (*DeleteProtocolsListResponse) SDKResponseMetdata added in v0.24.0

func (r *DeleteProtocolsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteProtocolsList request.

type DependentServiceName added in v0.5.0

type DependentServiceName string
const (
	DependentServiceNameAwsconfig         DependentServiceName = "AWSCONFIG"
	DependentServiceNameAwswaf            DependentServiceName = "AWSWAF"
	DependentServiceNameAwsshieldAdvanced DependentServiceName = "AWSSHIELD_ADVANCED"
	DependentServiceNameAwsvpc            DependentServiceName = "AWSVPC"
)

Enum values for DependentServiceName

func (DependentServiceName) MarshalValue added in v0.5.0

func (enum DependentServiceName) MarshalValue() (string, error)

func (DependentServiceName) MarshalValueBuf added in v0.5.0

func (enum DependentServiceName) MarshalValueBuf(b []byte) ([]byte, error)

type DisassociateAdminAccountInput

type DisassociateAdminAccountInput struct {
	// contains filtered or unexported fields
}

func (DisassociateAdminAccountInput) String

String returns the string representation

type DisassociateAdminAccountOutput

type DisassociateAdminAccountOutput struct {
	// contains filtered or unexported fields
}

func (DisassociateAdminAccountOutput) String

String returns the string representation

type DisassociateAdminAccountRequest

type DisassociateAdminAccountRequest struct {
	*aws.Request
	Input *DisassociateAdminAccountInput
	Copy  func(*DisassociateAdminAccountInput) DisassociateAdminAccountRequest
}

DisassociateAdminAccountRequest is the request type for the DisassociateAdminAccount API operation.

func (DisassociateAdminAccountRequest) Send

Send marshals and sends the DisassociateAdminAccount API request.

type DisassociateAdminAccountResponse added in v0.9.0

type DisassociateAdminAccountResponse struct {
	*DisassociateAdminAccountOutput
	// contains filtered or unexported fields
}

DisassociateAdminAccountResponse is the response type for the DisassociateAdminAccount API operation.

func (*DisassociateAdminAccountResponse) SDKResponseMetdata added in v0.9.0

func (r *DisassociateAdminAccountResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DisassociateAdminAccount request.

type EvaluationResult

type EvaluationResult struct {

	// Describes an AWS account's compliance with the AWS Firewall Manager policy.
	ComplianceStatus PolicyComplianceStatusType `type:"string" enum:"true"`

	// Indicates that over 100 resources are noncompliant with the AWS Firewall
	// Manager policy.
	EvaluationLimitExceeded *bool `type:"boolean"`

	// The number of resources that are noncompliant with the specified policy.
	// For AWS WAF and Shield Advanced policies, a resource is considered noncompliant
	// if it is not associated with the policy. For security group policies, a resource
	// is considered noncompliant if it doesn't comply with the rules of the policy
	// and remediation is disabled or not possible.
	ViolatorCount *int64 `type:"long"`
	// contains filtered or unexported fields
}

Describes the compliance status for the account. An account is considered noncompliant if it includes resources that are not protected by the specified policy or that don't comply with the policy.

func (EvaluationResult) String

func (s EvaluationResult) String() string

String returns the string representation

type GetAdminAccountInput

type GetAdminAccountInput struct {
	// contains filtered or unexported fields
}

func (GetAdminAccountInput) String

func (s GetAdminAccountInput) String() string

String returns the string representation

type GetAdminAccountOutput

type GetAdminAccountOutput struct {

	// The AWS account that is set as the AWS Firewall Manager administrator.
	AdminAccount *string `min:"1" type:"string"`

	// The status of the AWS account that you set as the AWS Firewall Manager administrator.
	RoleStatus AccountRoleStatus `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

func (GetAdminAccountOutput) String

func (s GetAdminAccountOutput) String() string

String returns the string representation

type GetAdminAccountRequest

type GetAdminAccountRequest struct {
	*aws.Request
	Input *GetAdminAccountInput
	Copy  func(*GetAdminAccountInput) GetAdminAccountRequest
}

GetAdminAccountRequest is the request type for the GetAdminAccount API operation.

func (GetAdminAccountRequest) Send

Send marshals and sends the GetAdminAccount API request.

type GetAdminAccountResponse added in v0.9.0

type GetAdminAccountResponse struct {
	*GetAdminAccountOutput
	// contains filtered or unexported fields
}

GetAdminAccountResponse is the response type for the GetAdminAccount API operation.

func (*GetAdminAccountResponse) SDKResponseMetdata added in v0.9.0

func (r *GetAdminAccountResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetAdminAccount request.

type GetAppsListInput added in v0.24.0

type GetAppsListInput struct {

	// Specifies whether the list to retrieve is a default list owned by AWS Firewall
	// Manager.
	DefaultList *bool `type:"boolean"`

	// The ID of the AWS Firewall Manager applications list that you want the details
	// for.
	//
	// ListId is a required field
	ListId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetAppsListInput) String added in v0.24.0

func (s GetAppsListInput) String() string

String returns the string representation

func (*GetAppsListInput) Validate added in v0.24.0

func (s *GetAppsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetAppsListOutput added in v0.24.0

type GetAppsListOutput struct {

	// Information about the specified AWS Firewall Manager applications list.
	AppsList *AppsListData `type:"structure"`

	// The Amazon Resource Name (ARN) of the applications list.
	AppsListArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetAppsListOutput) String added in v0.24.0

func (s GetAppsListOutput) String() string

String returns the string representation

type GetAppsListRequest added in v0.24.0

type GetAppsListRequest struct {
	*aws.Request
	Input *GetAppsListInput
	Copy  func(*GetAppsListInput) GetAppsListRequest
}

GetAppsListRequest is the request type for the GetAppsList API operation.

func (GetAppsListRequest) Send added in v0.24.0

Send marshals and sends the GetAppsList API request.

type GetAppsListResponse added in v0.24.0

type GetAppsListResponse struct {
	*GetAppsListOutput
	// contains filtered or unexported fields
}

GetAppsListResponse is the response type for the GetAppsList API operation.

func (*GetAppsListResponse) SDKResponseMetdata added in v0.24.0

func (r *GetAppsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetAppsList request.

type GetComplianceDetailInput

type GetComplianceDetailInput struct {

	// The AWS account that owns the resources that you want to get the details
	// for.
	//
	// MemberAccount is a required field
	MemberAccount *string `min:"1" type:"string" required:"true"`

	// The ID of the policy that you want to get the details for. PolicyId is returned
	// by PutPolicy and by ListPolicies.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetComplianceDetailInput) String

func (s GetComplianceDetailInput) String() string

String returns the string representation

func (*GetComplianceDetailInput) Validate

func (s *GetComplianceDetailInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetComplianceDetailOutput

type GetComplianceDetailOutput struct {

	// Information about the resources and the policy that you specified in the
	// GetComplianceDetail request.
	PolicyComplianceDetail *PolicyComplianceDetail `type:"structure"`
	// contains filtered or unexported fields
}

func (GetComplianceDetailOutput) String

func (s GetComplianceDetailOutput) String() string

String returns the string representation

type GetComplianceDetailRequest

type GetComplianceDetailRequest struct {
	*aws.Request
	Input *GetComplianceDetailInput
	Copy  func(*GetComplianceDetailInput) GetComplianceDetailRequest
}

GetComplianceDetailRequest is the request type for the GetComplianceDetail API operation.

func (GetComplianceDetailRequest) Send

Send marshals and sends the GetComplianceDetail API request.

type GetComplianceDetailResponse added in v0.9.0

type GetComplianceDetailResponse struct {
	*GetComplianceDetailOutput
	// contains filtered or unexported fields
}

GetComplianceDetailResponse is the response type for the GetComplianceDetail API operation.

func (*GetComplianceDetailResponse) SDKResponseMetdata added in v0.9.0

func (r *GetComplianceDetailResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetComplianceDetail request.

type GetNotificationChannelInput

type GetNotificationChannelInput struct {
	// contains filtered or unexported fields
}

func (GetNotificationChannelInput) String

String returns the string representation

type GetNotificationChannelOutput

type GetNotificationChannelOutput struct {

	// The IAM role that is used by AWS Firewall Manager to record activity to SNS.
	SnsRoleName *string `min:"1" type:"string"`

	// The SNS topic that records AWS Firewall Manager activity.
	SnsTopicArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetNotificationChannelOutput) String

String returns the string representation

type GetNotificationChannelRequest

type GetNotificationChannelRequest struct {
	*aws.Request
	Input *GetNotificationChannelInput
	Copy  func(*GetNotificationChannelInput) GetNotificationChannelRequest
}

GetNotificationChannelRequest is the request type for the GetNotificationChannel API operation.

func (GetNotificationChannelRequest) Send

Send marshals and sends the GetNotificationChannel API request.

type GetNotificationChannelResponse added in v0.9.0

type GetNotificationChannelResponse struct {
	*GetNotificationChannelOutput
	// contains filtered or unexported fields
}

GetNotificationChannelResponse is the response type for the GetNotificationChannel API operation.

func (*GetNotificationChannelResponse) SDKResponseMetdata added in v0.9.0

func (r *GetNotificationChannelResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetNotificationChannel request.

type GetPolicyInput

type GetPolicyInput struct {

	// The ID of the AWS Firewall Manager policy that you want the details for.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetPolicyInput) String

func (s GetPolicyInput) String() string

String returns the string representation

func (*GetPolicyInput) Validate

func (s *GetPolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetPolicyOutput

type GetPolicyOutput struct {

	// Information about the specified AWS Firewall Manager policy.
	Policy *Policy `type:"structure"`

	// The Amazon Resource Name (ARN) of the specified policy.
	PolicyArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetPolicyOutput) String

func (s GetPolicyOutput) String() string

String returns the string representation

type GetPolicyRequest

type GetPolicyRequest struct {
	*aws.Request
	Input *GetPolicyInput
	Copy  func(*GetPolicyInput) GetPolicyRequest
}

GetPolicyRequest is the request type for the GetPolicy API operation.

func (GetPolicyRequest) Send

Send marshals and sends the GetPolicy API request.

type GetPolicyResponse added in v0.9.0

type GetPolicyResponse struct {
	*GetPolicyOutput
	// contains filtered or unexported fields
}

GetPolicyResponse is the response type for the GetPolicy API operation.

func (*GetPolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *GetPolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetPolicy request.

type GetProtectionStatusInput added in v0.8.0

type GetProtectionStatusInput struct {

	// The end of the time period to query for the attacks. This is a timestamp
	// type. The request syntax listing indicates a number type because the default
	// used by AWS Firewall Manager is Unix time in seconds. However, any valid
	// timestamp format is allowed.
	EndTime *time.Time `type:"timestamp"`

	// Specifies the number of objects that you want AWS Firewall Manager to return
	// for this request. If you have more objects than the number that you specify
	// for MaxResults, the response includes a NextToken value that you can use
	// to get another batch of objects.
	MaxResults *int64 `min:"1" type:"integer"`

	// The AWS account that is in scope of the policy that you want to get the details
	// for.
	MemberAccountId *string `min:"1" type:"string"`

	// If you specify a value for MaxResults and you have more objects than the
	// number that you specify for MaxResults, AWS Firewall Manager returns a NextToken
	// value in the response, which you can use to retrieve another group of objects.
	// For the second and subsequent GetProtectionStatus requests, specify the value
	// of NextToken from the previous response to get information about another
	// batch of objects.
	NextToken *string `min:"1" type:"string"`

	// The ID of the policy for which you want to get the attack information.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`

	// The start of the time period to query for the attacks. This is a timestamp
	// type. The request syntax listing indicates a number type because the default
	// used by AWS Firewall Manager is Unix time in seconds. However, any valid
	// timestamp format is allowed.
	StartTime *time.Time `type:"timestamp"`
	// contains filtered or unexported fields
}

func (GetProtectionStatusInput) String added in v0.8.0

func (s GetProtectionStatusInput) String() string

String returns the string representation

func (*GetProtectionStatusInput) Validate added in v0.8.0

func (s *GetProtectionStatusInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetProtectionStatusOutput added in v0.8.0

type GetProtectionStatusOutput struct {

	// The ID of the AWS Firewall administrator account for this policy.
	AdminAccountId *string `min:"1" type:"string"`

	// Details about the attack, including the following:
	//
	//    * Attack type
	//
	//    * Account ID
	//
	//    * ARN of the resource attacked
	//
	//    * Start time of the attack
	//
	//    * End time of the attack (ongoing attacks will not have an end time)
	//
	// The details are in JSON format.
	Data *string `type:"string"`

	// If you have more objects than the number that you specified for MaxResults
	// in the request, the response includes a NextToken value. To list more objects,
	// submit another GetProtectionStatus request, and specify the NextToken value
	// from the response in the NextToken value in the next request.
	//
	// AWS SDKs provide auto-pagination that identify NextToken in a response and
	// make subsequent request calls automatically on your behalf. However, this
	// feature is not supported by GetProtectionStatus. You must submit subsequent
	// requests with NextToken using your own processes.
	NextToken *string `min:"1" type:"string"`

	// The service type that is protected by the policy. Currently, this is always
	// SHIELD_ADVANCED.
	ServiceType SecurityServiceType `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

func (GetProtectionStatusOutput) String added in v0.8.0

func (s GetProtectionStatusOutput) String() string

String returns the string representation

type GetProtectionStatusRequest added in v0.8.0

type GetProtectionStatusRequest struct {
	*aws.Request
	Input *GetProtectionStatusInput
	Copy  func(*GetProtectionStatusInput) GetProtectionStatusRequest
}

GetProtectionStatusRequest is the request type for the GetProtectionStatus API operation.

func (GetProtectionStatusRequest) Send added in v0.8.0

Send marshals and sends the GetProtectionStatus API request.

type GetProtectionStatusResponse added in v0.9.0

type GetProtectionStatusResponse struct {
	*GetProtectionStatusOutput
	// contains filtered or unexported fields
}

GetProtectionStatusResponse is the response type for the GetProtectionStatus API operation.

func (*GetProtectionStatusResponse) SDKResponseMetdata added in v0.9.0

func (r *GetProtectionStatusResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetProtectionStatus request.

type GetProtocolsListInput added in v0.24.0

type GetProtocolsListInput struct {

	// Specifies whether the list to retrieve is a default list owned by AWS Firewall
	// Manager.
	DefaultList *bool `type:"boolean"`

	// The ID of the AWS Firewall Manager protocols list that you want the details
	// for.
	//
	// ListId is a required field
	ListId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetProtocolsListInput) String added in v0.24.0

func (s GetProtocolsListInput) String() string

String returns the string representation

func (*GetProtocolsListInput) Validate added in v0.24.0

func (s *GetProtocolsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetProtocolsListOutput added in v0.24.0

type GetProtocolsListOutput struct {

	// Information about the specified AWS Firewall Manager protocols list.
	ProtocolsList *ProtocolsListData `type:"structure"`

	// The Amazon Resource Name (ARN) of the specified protocols list.
	ProtocolsListArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetProtocolsListOutput) String added in v0.24.0

func (s GetProtocolsListOutput) String() string

String returns the string representation

type GetProtocolsListRequest added in v0.24.0

type GetProtocolsListRequest struct {
	*aws.Request
	Input *GetProtocolsListInput
	Copy  func(*GetProtocolsListInput) GetProtocolsListRequest
}

GetProtocolsListRequest is the request type for the GetProtocolsList API operation.

func (GetProtocolsListRequest) Send added in v0.24.0

Send marshals and sends the GetProtocolsList API request.

type GetProtocolsListResponse added in v0.24.0

type GetProtocolsListResponse struct {
	*GetProtocolsListOutput
	// contains filtered or unexported fields
}

GetProtocolsListResponse is the response type for the GetProtocolsList API operation.

func (*GetProtocolsListResponse) SDKResponseMetdata added in v0.24.0

func (r *GetProtocolsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetProtocolsList request.

type GetViolationDetailsInput added in v0.24.0

type GetViolationDetailsInput struct {

	// The AWS account ID that you want the details for.
	//
	// MemberAccount is a required field
	MemberAccount *string `min:"1" type:"string" required:"true"`

	// The ID of the AWS Firewall Manager policy that you want the details for.
	// This currently only supports security group content audit policies.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`

	// The ID of the resource that has violations.
	//
	// ResourceId is a required field
	ResourceId *string `min:"1" type:"string" required:"true"`

	// The resource type. This is in the format shown in the AWS Resource Types
	// Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html).
	// Supported resource types are: AWS::EC2::Instance, AWS::EC2::NetworkInterface,
	// or AWS::EC2::SecurityGroup.
	//
	// ResourceType is a required field
	ResourceType *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetViolationDetailsInput) String added in v0.24.0

func (s GetViolationDetailsInput) String() string

String returns the string representation

func (*GetViolationDetailsInput) Validate added in v0.24.0

func (s *GetViolationDetailsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetViolationDetailsOutput added in v0.24.0

type GetViolationDetailsOutput struct {

	// Violation detail for a resource.
	ViolationDetail *ViolationDetail `type:"structure"`
	// contains filtered or unexported fields
}

func (GetViolationDetailsOutput) String added in v0.24.0

func (s GetViolationDetailsOutput) String() string

String returns the string representation

type GetViolationDetailsRequest added in v0.24.0

type GetViolationDetailsRequest struct {
	*aws.Request
	Input *GetViolationDetailsInput
	Copy  func(*GetViolationDetailsInput) GetViolationDetailsRequest
}

GetViolationDetailsRequest is the request type for the GetViolationDetails API operation.

func (GetViolationDetailsRequest) Send added in v0.24.0

Send marshals and sends the GetViolationDetails API request.

type GetViolationDetailsResponse added in v0.24.0

type GetViolationDetailsResponse struct {
	*GetViolationDetailsOutput
	// contains filtered or unexported fields
}

GetViolationDetailsResponse is the response type for the GetViolationDetails API operation.

func (*GetViolationDetailsResponse) SDKResponseMetdata added in v0.24.0

func (r *GetViolationDetailsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetViolationDetails request.

type ListAppsListsInput added in v0.24.0

type ListAppsListsInput struct {

	// Specifies whether the lists to retrieve are default lists owned by AWS Firewall
	// Manager.
	DefaultLists *bool `type:"boolean"`

	// The maximum number of objects that you want AWS Firewall Manager to return
	// for this request. If more objects are available, in the response, AWS Firewall
	// Manager provides a NextToken value that you can use in a subsequent call
	// to get the next batch of objects.
	//
	// If you don't specify this, AWS Firewall Manager returns all available objects.
	//
	// MaxResults is a required field
	MaxResults *int64 `min:"1" type:"integer" required:"true"`

	// If you specify a value for MaxResults in your list request, and you have
	// more objects than the maximum, AWS Firewall Manager returns this token in
	// the response. For all but the first request, you provide the token returned
	// by the prior request in the request parameters, to retrieve the next batch
	// of objects.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListAppsListsInput) String added in v0.24.0

func (s ListAppsListsInput) String() string

String returns the string representation

func (*ListAppsListsInput) Validate added in v0.24.0

func (s *ListAppsListsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListAppsListsOutput added in v0.24.0

type ListAppsListsOutput struct {

	// An array of AppsListDataSummary objects.
	AppsLists []AppsListDataSummary `type:"list"`

	// If you specify a value for MaxResults in your list request, and you have
	// more objects than the maximum, AWS Firewall Manager returns this token in
	// the response. You can use this token in subsequent requests to retrieve the
	// next batch of objects.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListAppsListsOutput) String added in v0.24.0

func (s ListAppsListsOutput) String() string

String returns the string representation

type ListAppsListsRequest added in v0.24.0

type ListAppsListsRequest struct {
	*aws.Request
	Input *ListAppsListsInput
	Copy  func(*ListAppsListsInput) ListAppsListsRequest
}

ListAppsListsRequest is the request type for the ListAppsLists API operation.

func (ListAppsListsRequest) Send added in v0.24.0

Send marshals and sends the ListAppsLists API request.

type ListAppsListsResponse added in v0.24.0

type ListAppsListsResponse struct {
	*ListAppsListsOutput
	// contains filtered or unexported fields
}

ListAppsListsResponse is the response type for the ListAppsLists API operation.

func (*ListAppsListsResponse) SDKResponseMetdata added in v0.24.0

func (r *ListAppsListsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListAppsLists request.

type ListComplianceStatusInput

type ListComplianceStatusInput struct {

	// Specifies the number of PolicyComplianceStatus objects that you want AWS
	// Firewall Manager to return for this request. If you have more PolicyComplianceStatus
	// objects than the number that you specify for MaxResults, the response includes
	// a NextToken value that you can use to get another batch of PolicyComplianceStatus
	// objects.
	MaxResults *int64 `min:"1" type:"integer"`

	// If you specify a value for MaxResults and you have more PolicyComplianceStatus
	// objects than the number that you specify for MaxResults, AWS Firewall Manager
	// returns a NextToken value in the response that allows you to list another
	// group of PolicyComplianceStatus objects. For the second and subsequent ListComplianceStatus
	// requests, specify the value of NextToken from the previous response to get
	// information about another batch of PolicyComplianceStatus objects.
	NextToken *string `min:"1" type:"string"`

	// The ID of the AWS Firewall Manager policy that you want the details for.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListComplianceStatusInput) String

func (s ListComplianceStatusInput) String() string

String returns the string representation

func (*ListComplianceStatusInput) Validate

func (s *ListComplianceStatusInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListComplianceStatusOutput

type ListComplianceStatusOutput struct {

	// If you have more PolicyComplianceStatus objects than the number that you
	// specified for MaxResults in the request, the response includes a NextToken
	// value. To list more PolicyComplianceStatus objects, submit another ListComplianceStatus
	// request, and specify the NextToken value from the response in the NextToken
	// value in the next request.
	NextToken *string `min:"1" type:"string"`

	// An array of PolicyComplianceStatus objects.
	PolicyComplianceStatusList []PolicyComplianceStatus `type:"list"`
	// contains filtered or unexported fields
}

func (ListComplianceStatusOutput) String

String returns the string representation

type ListComplianceStatusPaginator added in v0.9.0

type ListComplianceStatusPaginator struct {
	aws.Pager
}

ListComplianceStatusPaginator is used to paginate the request. This can be done by calling Next and CurrentPage.

func NewListComplianceStatusPaginator added in v0.9.0

func NewListComplianceStatusPaginator(req ListComplianceStatusRequest) ListComplianceStatusPaginator

NewListComplianceStatusRequestPaginator returns a paginator for ListComplianceStatus. Use Next method to get the next page, and CurrentPage to get the current response page from the paginator. Next will return false, if there are no more pages, or an error was encountered.

Note: This operation can generate multiple requests to a service.

// Example iterating over pages.
req := client.ListComplianceStatusRequest(input)
p := fms.NewListComplianceStatusRequestPaginator(req)

for p.Next(context.TODO()) {
    page := p.CurrentPage()
}

if err := p.Err(); err != nil {
    return err
}

func (*ListComplianceStatusPaginator) CurrentPage added in v0.9.0

type ListComplianceStatusRequest

type ListComplianceStatusRequest struct {
	*aws.Request
	Input *ListComplianceStatusInput
	Copy  func(*ListComplianceStatusInput) ListComplianceStatusRequest
}

ListComplianceStatusRequest is the request type for the ListComplianceStatus API operation.

func (ListComplianceStatusRequest) Send

Send marshals and sends the ListComplianceStatus API request.

type ListComplianceStatusResponse added in v0.9.0

type ListComplianceStatusResponse struct {
	*ListComplianceStatusOutput
	// contains filtered or unexported fields
}

ListComplianceStatusResponse is the response type for the ListComplianceStatus API operation.

func (*ListComplianceStatusResponse) SDKResponseMetdata added in v0.9.0

func (r *ListComplianceStatusResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListComplianceStatus request.

type ListMemberAccountsInput added in v0.5.0

type ListMemberAccountsInput struct {

	// Specifies the number of member account IDs that you want AWS Firewall Manager
	// to return for this request. If you have more IDs than the number that you
	// specify for MaxResults, the response includes a NextToken value that you
	// can use to get another batch of member account IDs.
	MaxResults *int64 `min:"1" type:"integer"`

	// If you specify a value for MaxResults and you have more account IDs than
	// the number that you specify for MaxResults, AWS Firewall Manager returns
	// a NextToken value in the response that allows you to list another group of
	// IDs. For the second and subsequent ListMemberAccountsRequest requests, specify
	// the value of NextToken from the previous response to get information about
	// another batch of member account IDs.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListMemberAccountsInput) String added in v0.5.0

func (s ListMemberAccountsInput) String() string

String returns the string representation

func (*ListMemberAccountsInput) Validate added in v0.5.0

func (s *ListMemberAccountsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListMemberAccountsOutput added in v0.5.0

type ListMemberAccountsOutput struct {

	// An array of account IDs.
	MemberAccounts []string `type:"list"`

	// If you have more member account IDs than the number that you specified for
	// MaxResults in the request, the response includes a NextToken value. To list
	// more IDs, submit another ListMemberAccounts request, and specify the NextToken
	// value from the response in the NextToken value in the next request.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListMemberAccountsOutput) String added in v0.5.0

func (s ListMemberAccountsOutput) String() string

String returns the string representation

type ListMemberAccountsPaginator added in v0.9.0

type ListMemberAccountsPaginator struct {
	aws.Pager
}

ListMemberAccountsPaginator is used to paginate the request. This can be done by calling Next and CurrentPage.

func NewListMemberAccountsPaginator added in v0.9.0

func NewListMemberAccountsPaginator(req ListMemberAccountsRequest) ListMemberAccountsPaginator

NewListMemberAccountsRequestPaginator returns a paginator for ListMemberAccounts. Use Next method to get the next page, and CurrentPage to get the current response page from the paginator. Next will return false, if there are no more pages, or an error was encountered.

Note: This operation can generate multiple requests to a service.

// Example iterating over pages.
req := client.ListMemberAccountsRequest(input)
p := fms.NewListMemberAccountsRequestPaginator(req)

for p.Next(context.TODO()) {
    page := p.CurrentPage()
}

if err := p.Err(); err != nil {
    return err
}

func (*ListMemberAccountsPaginator) CurrentPage added in v0.9.0

type ListMemberAccountsRequest added in v0.5.0

type ListMemberAccountsRequest struct {
	*aws.Request
	Input *ListMemberAccountsInput
	Copy  func(*ListMemberAccountsInput) ListMemberAccountsRequest
}

ListMemberAccountsRequest is the request type for the ListMemberAccounts API operation.

func (ListMemberAccountsRequest) Send added in v0.5.0

Send marshals and sends the ListMemberAccounts API request.

type ListMemberAccountsResponse added in v0.9.0

type ListMemberAccountsResponse struct {
	*ListMemberAccountsOutput
	// contains filtered or unexported fields
}

ListMemberAccountsResponse is the response type for the ListMemberAccounts API operation.

func (*ListMemberAccountsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListMemberAccountsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListMemberAccounts request.

type ListPoliciesInput

type ListPoliciesInput struct {

	// Specifies the number of PolicySummary objects that you want AWS Firewall
	// Manager to return for this request. If you have more PolicySummary objects
	// than the number that you specify for MaxResults, the response includes a
	// NextToken value that you can use to get another batch of PolicySummary objects.
	MaxResults *int64 `min:"1" type:"integer"`

	// If you specify a value for MaxResults and you have more PolicySummary objects
	// than the number that you specify for MaxResults, AWS Firewall Manager returns
	// a NextToken value in the response that allows you to list another group of
	// PolicySummary objects. For the second and subsequent ListPolicies requests,
	// specify the value of NextToken from the previous response to get information
	// about another batch of PolicySummary objects.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListPoliciesInput) String

func (s ListPoliciesInput) String() string

String returns the string representation

func (*ListPoliciesInput) Validate

func (s *ListPoliciesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListPoliciesOutput

type ListPoliciesOutput struct {

	// If you have more PolicySummary objects than the number that you specified
	// for MaxResults in the request, the response includes a NextToken value. To
	// list more PolicySummary objects, submit another ListPolicies request, and
	// specify the NextToken value from the response in the NextToken value in the
	// next request.
	NextToken *string `min:"1" type:"string"`

	// An array of PolicySummary objects.
	PolicyList []PolicySummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListPoliciesOutput) String

func (s ListPoliciesOutput) String() string

String returns the string representation

type ListPoliciesPaginator added in v0.9.0

type ListPoliciesPaginator struct {
	aws.Pager
}

ListPoliciesPaginator is used to paginate the request. This can be done by calling Next and CurrentPage.

func NewListPoliciesPaginator added in v0.9.0

func NewListPoliciesPaginator(req ListPoliciesRequest) ListPoliciesPaginator

NewListPoliciesRequestPaginator returns a paginator for ListPolicies. Use Next method to get the next page, and CurrentPage to get the current response page from the paginator. Next will return false, if there are no more pages, or an error was encountered.

Note: This operation can generate multiple requests to a service.

// Example iterating over pages.
req := client.ListPoliciesRequest(input)
p := fms.NewListPoliciesRequestPaginator(req)

for p.Next(context.TODO()) {
    page := p.CurrentPage()
}

if err := p.Err(); err != nil {
    return err
}

func (*ListPoliciesPaginator) CurrentPage added in v0.9.0

func (p *ListPoliciesPaginator) CurrentPage() *ListPoliciesOutput

type ListPoliciesRequest

type ListPoliciesRequest struct {
	*aws.Request
	Input *ListPoliciesInput
	Copy  func(*ListPoliciesInput) ListPoliciesRequest
}

ListPoliciesRequest is the request type for the ListPolicies API operation.

func (ListPoliciesRequest) Send

Send marshals and sends the ListPolicies API request.

type ListPoliciesResponse added in v0.9.0

type ListPoliciesResponse struct {
	*ListPoliciesOutput
	// contains filtered or unexported fields
}

ListPoliciesResponse is the response type for the ListPolicies API operation.

func (*ListPoliciesResponse) SDKResponseMetdata added in v0.9.0

func (r *ListPoliciesResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListPolicies request.

type ListProtocolsListsInput added in v0.24.0

type ListProtocolsListsInput struct {

	// Specifies whether the lists to retrieve are default lists owned by AWS Firewall
	// Manager.
	DefaultLists *bool `type:"boolean"`

	// The maximum number of objects that you want AWS Firewall Manager to return
	// for this request. If more objects are available, in the response, AWS Firewall
	// Manager provides a NextToken value that you can use in a subsequent call
	// to get the next batch of objects.
	//
	// If you don't specify this, AWS Firewall Manager returns all available objects.
	//
	// MaxResults is a required field
	MaxResults *int64 `min:"1" type:"integer" required:"true"`

	// If you specify a value for MaxResults in your list request, and you have
	// more objects than the maximum, AWS Firewall Manager returns this token in
	// the response. For all but the first request, you provide the token returned
	// by the prior request in the request parameters, to retrieve the next batch
	// of objects.
	NextToken *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListProtocolsListsInput) String added in v0.24.0

func (s ListProtocolsListsInput) String() string

String returns the string representation

func (*ListProtocolsListsInput) Validate added in v0.24.0

func (s *ListProtocolsListsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListProtocolsListsOutput added in v0.24.0

type ListProtocolsListsOutput struct {

	// If you specify a value for MaxResults in your list request, and you have
	// more objects than the maximum, AWS Firewall Manager returns this token in
	// the response. You can use this token in subsequent requests to retrieve the
	// next batch of objects.
	NextToken *string `min:"1" type:"string"`

	// An array of ProtocolsListDataSummary objects.
	ProtocolsLists []ProtocolsListDataSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListProtocolsListsOutput) String added in v0.24.0

func (s ListProtocolsListsOutput) String() string

String returns the string representation

type ListProtocolsListsRequest added in v0.24.0

type ListProtocolsListsRequest struct {
	*aws.Request
	Input *ListProtocolsListsInput
	Copy  func(*ListProtocolsListsInput) ListProtocolsListsRequest
}

ListProtocolsListsRequest is the request type for the ListProtocolsLists API operation.

func (ListProtocolsListsRequest) Send added in v0.24.0

Send marshals and sends the ListProtocolsLists API request.

type ListProtocolsListsResponse added in v0.24.0

type ListProtocolsListsResponse struct {
	*ListProtocolsListsOutput
	// contains filtered or unexported fields
}

ListProtocolsListsResponse is the response type for the ListProtocolsLists API operation.

func (*ListProtocolsListsResponse) SDKResponseMetdata added in v0.24.0

func (r *ListProtocolsListsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListProtocolsLists request.

type ListTagsForResourceInput added in v0.19.0

type ListTagsForResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource to return tags for. The AWS
	// Firewall Manager resources that support tagging are policies, applications
	// lists, and protocols lists.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListTagsForResourceInput) String added in v0.19.0

func (s ListTagsForResourceInput) String() string

String returns the string representation

func (*ListTagsForResourceInput) Validate added in v0.19.0

func (s *ListTagsForResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListTagsForResourceOutput added in v0.19.0

type ListTagsForResourceOutput struct {

	// The tags associated with the resource.
	TagList []Tag `type:"list"`
	// contains filtered or unexported fields
}

func (ListTagsForResourceOutput) String added in v0.19.0

func (s ListTagsForResourceOutput) String() string

String returns the string representation

type ListTagsForResourceRequest added in v0.19.0

type ListTagsForResourceRequest struct {
	*aws.Request
	Input *ListTagsForResourceInput
	Copy  func(*ListTagsForResourceInput) ListTagsForResourceRequest
}

ListTagsForResourceRequest is the request type for the ListTagsForResource API operation.

func (ListTagsForResourceRequest) Send added in v0.19.0

Send marshals and sends the ListTagsForResource API request.

type ListTagsForResourceResponse added in v0.19.0

type ListTagsForResourceResponse struct {
	*ListTagsForResourceOutput
	// contains filtered or unexported fields
}

ListTagsForResourceResponse is the response type for the ListTagsForResource API operation.

func (*ListTagsForResourceResponse) SDKResponseMetdata added in v0.19.0

func (r *ListTagsForResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListTagsForResource request.

type PartialMatch added in v0.24.0

type PartialMatch struct {

	// The reference rule from the master security group of the AWS Firewall Manager
	// policy.
	Reference *string `type:"string"`

	// The violation reason.
	TargetViolationReasons []string `type:"list"`
	// contains filtered or unexported fields
}

The reference rule that partially matches the ViolationTarget rule and violation reason.

func (PartialMatch) String added in v0.24.0

func (s PartialMatch) String() string

String returns the string representation

type Policy

type Policy struct {

	// Specifies the AWS account IDs and AWS 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, AWS 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”]}.
	ExcludeMap map[string][]string `type:"map"`

	// 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.
	//
	// ExcludeResourceTags is a required field
	ExcludeResourceTags *bool `type:"boolean" required:"true"`

	// Specifies the AWS account IDs and AWS 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, AWS 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”]}.
	IncludeMap map[string][]string `type:"map"`

	// The ID of the AWS Firewall Manager policy.
	PolicyId *string `min:"36" type:"string"`

	// The name of the AWS Firewall Manager policy.
	//
	// PolicyName is a required field
	PolicyName *string `min:"1" type:"string" required:"true"`

	// 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.
	PolicyUpdateToken *string `min:"1" type:"string"`

	// Indicates if the policy should be automatically applied to new resources.
	//
	// RemediationEnabled is a required field
	RemediationEnabled *bool `type:"boolean" required:"true"`

	// An array of ResourceTag objects.
	ResourceTags []ResourceTag `type:"list"`

	// The type of resource protected by or in scope of the policy. This is in the
	// format shown in the AWS Resource Types Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html).
	// For AWS WAF and Shield Advanced, examples 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.
	//
	// ResourceType is a required field
	ResourceType *string `min:"1" type:"string" required:"true"`

	// An array of ResourceType.
	ResourceTypeList []string `type:"list"`

	// Details about the security service that is being used to protect the resources.
	//
	// SecurityServicePolicyData is a required field
	SecurityServicePolicyData *SecurityServicePolicyData `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

An AWS Firewall Manager policy.

func (Policy) String

func (s Policy) String() string

String returns the string representation

func (*Policy) Validate

func (s *Policy) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PolicyComplianceDetail

type PolicyComplianceDetail struct {

	// Indicates if over 100 resources are noncompliant with the AWS Firewall Manager
	// policy.
	EvaluationLimitExceeded *bool `type:"boolean"`

	// A timestamp that indicates when the returned information should be considered
	// out of date.
	ExpiredAt *time.Time `type:"timestamp"`

	// Details about problems with dependent services, such as AWS WAF or AWS Config,
	// that are causing a resource to be noncompliant. The details include the name
	// of the dependent service and the error message received that indicates the
	// problem with the service.
	IssueInfoMap map[string]string `type:"map"`

	// The AWS account ID.
	MemberAccount *string `min:"1" type:"string"`

	// The ID of the AWS Firewall Manager policy.
	PolicyId *string `min:"36" type:"string"`

	// The AWS account that created the AWS Firewall Manager policy.
	PolicyOwner *string `min:"1" type:"string"`

	// An array of resources that aren't protected by the AWS WAF or Shield Advanced
	// policy or that aren't in compliance with the security group policy.
	Violators []ComplianceViolator `type:"list"`
	// contains filtered or unexported fields
}

Describes the noncompliant resources in a member account for a specific AWS Firewall Manager policy. A maximum of 100 entries are displayed. If more than 100 resources are noncompliant, EvaluationLimitExceeded is set to True.

func (PolicyComplianceDetail) String

func (s PolicyComplianceDetail) String() string

String returns the string representation

type PolicyComplianceStatus

type PolicyComplianceStatus struct {

	// An array of EvaluationResult objects.
	EvaluationResults []EvaluationResult `type:"list"`

	// Details about problems with dependent services, such as AWS WAF or AWS Config,
	// that are causing a resource to be noncompliant. The details include the name
	// of the dependent service and the error message received that indicates the
	// problem with the service.
	IssueInfoMap map[string]string `type:"map"`

	// Timestamp of the last update to the EvaluationResult objects.
	LastUpdated *time.Time `type:"timestamp"`

	// The member account ID.
	MemberAccount *string `min:"1" type:"string"`

	// The ID of the AWS Firewall Manager policy.
	PolicyId *string `min:"36" type:"string"`

	// The name of the AWS Firewall Manager policy.
	PolicyName *string `min:"1" type:"string"`

	// The AWS account that created the AWS Firewall Manager policy.
	PolicyOwner *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Indicates whether the account is compliant with the specified policy. An account is considered noncompliant if it includes resources that are not protected by the policy, for AWS WAF and Shield Advanced policies, or that are noncompliant with the policy, for security group policies.

func (PolicyComplianceStatus) String

func (s PolicyComplianceStatus) String() string

String returns the string representation

type PolicyComplianceStatusType

type PolicyComplianceStatusType string
const (
	PolicyComplianceStatusTypeCompliant    PolicyComplianceStatusType = "COMPLIANT"
	PolicyComplianceStatusTypeNonCompliant PolicyComplianceStatusType = "NON_COMPLIANT"
)

Enum values for PolicyComplianceStatusType

func (PolicyComplianceStatusType) MarshalValue

func (enum PolicyComplianceStatusType) MarshalValue() (string, error)

func (PolicyComplianceStatusType) MarshalValueBuf

func (enum PolicyComplianceStatusType) MarshalValueBuf(b []byte) ([]byte, error)

type PolicySummary

type PolicySummary struct {

	// The Amazon Resource Name (ARN) of the specified policy.
	PolicyArn *string `min:"1" type:"string"`

	// The ID of the specified policy.
	PolicyId *string `min:"36" type:"string"`

	// The name of the specified policy.
	PolicyName *string `min:"1" type:"string"`

	// Indicates if the policy should be automatically applied to new resources.
	RemediationEnabled *bool `type:"boolean"`

	// The type of resource protected by or in scope of the policy. This is in the
	// format shown in the AWS Resource Types Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html).
	// For AWS WAF and Shield Advanced, examples 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.
	ResourceType *string `min:"1" type:"string"`

	// The service that the policy is using to protect the resources. This specifies
	// the type of policy that is created, either an AWS WAF policy, a Shield Advanced
	// policy, or a security group policy.
	SecurityServiceType SecurityServiceType `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

Details of the AWS Firewall Manager policy.

func (PolicySummary) String

func (s PolicySummary) String() string

String returns the string representation

type ProtocolsListData added in v0.24.0

type ProtocolsListData struct {

	// The time that the AWS Firewall Manager protocols list was created.
	CreateTime *time.Time `type:"timestamp"`

	// The time that the AWS Firewall Manager protocols list was last updated.
	LastUpdateTime *time.Time `type:"timestamp"`

	// The ID of the AWS Firewall Manager protocols list.
	ListId *string `min:"36" type:"string"`

	// The name of the AWS Firewall Manager protocols list.
	//
	// ListName is a required field
	ListName *string `min:"1" type:"string" required:"true"`

	// A unique identifier for each update to the list. When you update the list,
	// the update token must match the token of the current version of the application
	// list. You can retrieve the update token by getting the list.
	ListUpdateToken *string `min:"1" type:"string"`

	// A map of previous version numbers to their corresponding protocol arrays.
	PreviousProtocolsList map[string][]string `type:"map"`

	// An array of protocols in the AWS Firewall Manager protocols list.
	//
	// ProtocolsList is a required field
	ProtocolsList []string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

An AWS Firewall Manager protocols list.

func (ProtocolsListData) String added in v0.24.0

func (s ProtocolsListData) String() string

String returns the string representation

func (*ProtocolsListData) Validate added in v0.24.0

func (s *ProtocolsListData) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ProtocolsListDataSummary added in v0.24.0

type ProtocolsListDataSummary struct {

	// The Amazon Resource Name (ARN) of the specified protocols list.
	ListArn *string `min:"1" type:"string"`

	// The ID of the specified protocols list.
	ListId *string `min:"36" type:"string"`

	// The name of the specified protocols list.
	ListName *string `min:"1" type:"string"`

	// An array of protocols in the AWS Firewall Manager protocols list.
	ProtocolsList []string `type:"list"`
	// contains filtered or unexported fields
}

Details of the AWS Firewall Manager protocols list.

func (ProtocolsListDataSummary) String added in v0.24.0

func (s ProtocolsListDataSummary) String() string

String returns the string representation

type PutAppsListInput added in v0.24.0

type PutAppsListInput struct {

	// The details of the AWS Firewall Manager applications list to be created.
	//
	// AppsList is a required field
	AppsList *AppsListData `type:"structure" required:"true"`

	// The tags associated with the resource.
	TagList []Tag `type:"list"`
	// contains filtered or unexported fields
}

func (PutAppsListInput) String added in v0.24.0

func (s PutAppsListInput) String() string

String returns the string representation

func (*PutAppsListInput) Validate added in v0.24.0

func (s *PutAppsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutAppsListOutput added in v0.24.0

type PutAppsListOutput struct {

	// The details of the AWS Firewall Manager applications list.
	AppsList *AppsListData `type:"structure"`

	// The Amazon Resource Name (ARN) of the applications list.
	AppsListArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (PutAppsListOutput) String added in v0.24.0

func (s PutAppsListOutput) String() string

String returns the string representation

type PutAppsListRequest added in v0.24.0

type PutAppsListRequest struct {
	*aws.Request
	Input *PutAppsListInput
	Copy  func(*PutAppsListInput) PutAppsListRequest
}

PutAppsListRequest is the request type for the PutAppsList API operation.

func (PutAppsListRequest) Send added in v0.24.0

Send marshals and sends the PutAppsList API request.

type PutAppsListResponse added in v0.24.0

type PutAppsListResponse struct {
	*PutAppsListOutput
	// contains filtered or unexported fields
}

PutAppsListResponse is the response type for the PutAppsList API operation.

func (*PutAppsListResponse) SDKResponseMetdata added in v0.24.0

func (r *PutAppsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutAppsList request.

type PutNotificationChannelInput

type PutNotificationChannelInput struct {

	// The Amazon Resource Name (ARN) of the IAM role that allows Amazon SNS to
	// record AWS Firewall Manager activity.
	//
	// SnsRoleName is a required field
	SnsRoleName *string `min:"1" type:"string" required:"true"`

	// The Amazon Resource Name (ARN) of the SNS topic that collects notifications
	// from AWS Firewall Manager.
	//
	// SnsTopicArn is a required field
	SnsTopicArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutNotificationChannelInput) String

String returns the string representation

func (*PutNotificationChannelInput) Validate

func (s *PutNotificationChannelInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutNotificationChannelOutput

type PutNotificationChannelOutput struct {
	// contains filtered or unexported fields
}

func (PutNotificationChannelOutput) String

String returns the string representation

type PutNotificationChannelRequest

type PutNotificationChannelRequest struct {
	*aws.Request
	Input *PutNotificationChannelInput
	Copy  func(*PutNotificationChannelInput) PutNotificationChannelRequest
}

PutNotificationChannelRequest is the request type for the PutNotificationChannel API operation.

func (PutNotificationChannelRequest) Send

Send marshals and sends the PutNotificationChannel API request.

type PutNotificationChannelResponse added in v0.9.0

type PutNotificationChannelResponse struct {
	*PutNotificationChannelOutput
	// contains filtered or unexported fields
}

PutNotificationChannelResponse is the response type for the PutNotificationChannel API operation.

func (*PutNotificationChannelResponse) SDKResponseMetdata added in v0.9.0

func (r *PutNotificationChannelResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutNotificationChannel request.

type PutPolicyInput

type PutPolicyInput struct {

	// The details of the AWS Firewall Manager policy to be created.
	//
	// Policy is a required field
	Policy *Policy `type:"structure" required:"true"`

	// The tags to add to the AWS resource.
	TagList []Tag `type:"list"`
	// contains filtered or unexported fields
}

func (PutPolicyInput) String

func (s PutPolicyInput) String() string

String returns the string representation

func (*PutPolicyInput) Validate

func (s *PutPolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutPolicyOutput

type PutPolicyOutput struct {

	// The details of the AWS Firewall Manager policy.
	Policy *Policy `type:"structure"`

	// The Amazon Resource Name (ARN) of the policy.
	PolicyArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (PutPolicyOutput) String

func (s PutPolicyOutput) String() string

String returns the string representation

type PutPolicyRequest

type PutPolicyRequest struct {
	*aws.Request
	Input *PutPolicyInput
	Copy  func(*PutPolicyInput) PutPolicyRequest
}

PutPolicyRequest is the request type for the PutPolicy API operation.

func (PutPolicyRequest) Send

Send marshals and sends the PutPolicy API request.

type PutPolicyResponse added in v0.9.0

type PutPolicyResponse struct {
	*PutPolicyOutput
	// contains filtered or unexported fields
}

PutPolicyResponse is the response type for the PutPolicy API operation.

func (*PutPolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *PutPolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutPolicy request.

type PutProtocolsListInput added in v0.24.0

type PutProtocolsListInput struct {

	// The details of the AWS Firewall Manager protocols list to be created.
	//
	// ProtocolsList is a required field
	ProtocolsList *ProtocolsListData `type:"structure" required:"true"`

	// The tags associated with the resource.
	TagList []Tag `type:"list"`
	// contains filtered or unexported fields
}

func (PutProtocolsListInput) String added in v0.24.0

func (s PutProtocolsListInput) String() string

String returns the string representation

func (*PutProtocolsListInput) Validate added in v0.24.0

func (s *PutProtocolsListInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutProtocolsListOutput added in v0.24.0

type PutProtocolsListOutput struct {

	// The details of the AWS Firewall Manager protocols list.
	ProtocolsList *ProtocolsListData `type:"structure"`

	// The Amazon Resource Name (ARN) of the protocols list.
	ProtocolsListArn *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (PutProtocolsListOutput) String added in v0.24.0

func (s PutProtocolsListOutput) String() string

String returns the string representation

type PutProtocolsListRequest added in v0.24.0

type PutProtocolsListRequest struct {
	*aws.Request
	Input *PutProtocolsListInput
	Copy  func(*PutProtocolsListInput) PutProtocolsListRequest
}

PutProtocolsListRequest is the request type for the PutProtocolsList API operation.

func (PutProtocolsListRequest) Send added in v0.24.0

Send marshals and sends the PutProtocolsList API request.

type PutProtocolsListResponse added in v0.24.0

type PutProtocolsListResponse struct {
	*PutProtocolsListOutput
	// contains filtered or unexported fields
}

PutProtocolsListResponse is the response type for the PutProtocolsList API operation.

func (*PutProtocolsListResponse) SDKResponseMetdata added in v0.24.0

func (r *PutProtocolsListResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutProtocolsList request.

type RemediationActionType added in v0.24.0

type RemediationActionType string
const (
	RemediationActionTypeRemove RemediationActionType = "REMOVE"
	RemediationActionTypeModify RemediationActionType = "MODIFY"
)

Enum values for RemediationActionType

func (RemediationActionType) MarshalValue added in v0.24.0

func (enum RemediationActionType) MarshalValue() (string, error)

func (RemediationActionType) MarshalValueBuf added in v0.24.0

func (enum RemediationActionType) MarshalValueBuf(b []byte) ([]byte, error)

type ResourceTag

type ResourceTag struct {

	// The resource tag key.
	//
	// Key is a required field
	Key *string `min:"1" type:"string" required:"true"`

	// The resource tag value.
	Value *string `type:"string"`
	// contains filtered or unexported fields
}

The resource tags that AWS Firewall Manager uses to determine if a particular resource should be included or excluded from the AWS Firewall Manager policy. Tags enable you to categorize your AWS resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value. Firewall Manager combines the tags with "AND" so that, if you add more than one tag to a policy scope, a resource must have all the specified tags to be included or excluded. For more information, see Working with Tag Editor (https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html).

func (ResourceTag) String

func (s ResourceTag) String() string

String returns the string representation

func (*ResourceTag) Validate

func (s *ResourceTag) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ResourceViolation added in v0.24.0

type ResourceViolation struct {

	// Violation details for an EC2 instance.
	AwsEc2InstanceViolation *AwsEc2InstanceViolation `type:"structure"`

	// Violation details for network interface.
	AwsEc2NetworkInterfaceViolation *AwsEc2NetworkInterfaceViolation `type:"structure"`

	// Violation details for security groups.
	AwsVPCSecurityGroupViolation *AwsVPCSecurityGroupViolation `type:"structure"`
	// contains filtered or unexported fields
}

Violation detail based on resource type.

func (ResourceViolation) String added in v0.24.0

func (s ResourceViolation) String() string

String returns the string representation

type SecurityGroupRemediationAction added in v0.24.0

type SecurityGroupRemediationAction struct {

	// Brief description of the action that will be performed.
	Description *string `type:"string"`

	// Indicates if the current action is the default action.
	IsDefaultAction *bool `type:"boolean"`

	// The remediation action that will be performed.
	RemediationActionType RemediationActionType `type:"string" enum:"true"`

	// The final state of the rule specified in the ViolationTarget after it is
	// remediated.
	RemediationResult *SecurityGroupRuleDescription `type:"structure"`
	// contains filtered or unexported fields
}

Remediation option for the rule specified in the ViolationTarget.

func (SecurityGroupRemediationAction) String added in v0.24.0

String returns the string representation

type SecurityGroupRuleDescription added in v0.24.0

type SecurityGroupRuleDescription struct {

	// The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6
	// type number. A value of -1 indicates all ICMP/ICMPv6 types.
	FromPort *int64 `type:"long"`

	// The IPv4 ranges for the security group rule.
	IPV4Range *string `type:"string"`

	// The IPv6 ranges for the security group rule.
	IPV6Range *string `type:"string"`

	// The ID of the prefix list for the security group rule.
	PrefixListId *string `min:"1" type:"string"`

	// The IP protocol name (tcp, udp, icmp, icmpv6) or number.
	Protocol *string `type:"string"`

	// The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6
	// code. A value of -1 indicates all ICMP/ICMPv6 codes.
	ToPort *int64 `type:"long"`
	// contains filtered or unexported fields
}

Describes a set of permissions for a security group rule.

func (SecurityGroupRuleDescription) String added in v0.24.0

String returns the string representation

type SecurityServicePolicyData

type SecurityServicePolicyData struct {

	// Details about the service that are specific to the service type, in JSON
	// format. For service type SHIELD_ADVANCED, this is an empty string.
	//
	//    * Example: WAFV2 "ManagedServiceData": "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludeRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendorName\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludeRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}"
	//
	//    * Example: WAF Classic "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\":
	//    [{\"id\": \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\"
	//    : {\"type\": \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}
	//
	//    * Example: SECURITY_GROUPS_COMMON "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,
	//    \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"}
	//
	//    * Example: SECURITY_GROUPS_CONTENT_AUDIT "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\"
	//    sg-000e55995d61a06bd \"}],\"securityGroupAction\":{\"type\":\"ALLOW\"}}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"}
	//    The security group action for content audit can be ALLOW or DENY. For
	//    ALLOW, all in-scope security group rules must be within the allowed range
	//    of the policy's security group rules. For DENY, all in-scope security
	//    group rules must not contain a value or a range that matches a rule value
	//    or range in the policy security group.
	//
	//    * Example: SECURITY_GROUPS_USAGE_AUDIT "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_USAGE_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"deleteUnusedSecurityGroups\":true,\"coalesceRedundantSecurityGroups\":true}"},"RemediationEnabled":false,"Resou
	//    rceType":"AWS::EC2::SecurityGroup"}
	ManagedServiceData *string `min:"1" type:"string"`

	// The service that the policy is using to protect the resources. This specifies
	// the type of policy that is created, either an AWS WAF policy, a Shield Advanced
	// policy, or a security group policy. For security group policies, Firewall
	// Manager supports one security group for each common policy and for each content
	// audit policy. This is an adjustable limit that you can increase by contacting
	// AWS Support.
	//
	// Type is a required field
	Type SecurityServiceType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

Details about the security service that is being used to protect the resources.

func (SecurityServicePolicyData) String

func (s SecurityServicePolicyData) String() string

String returns the string representation

func (*SecurityServicePolicyData) Validate

func (s *SecurityServicePolicyData) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SecurityServiceType

type SecurityServiceType string
const (
	SecurityServiceTypeWaf                        SecurityServiceType = "WAF"
	SecurityServiceTypeWafv2                      SecurityServiceType = "WAFV2"
	SecurityServiceTypeShieldAdvanced             SecurityServiceType = "SHIELD_ADVANCED"
	SecurityServiceTypeSecurityGroupsCommon       SecurityServiceType = "SECURITY_GROUPS_COMMON"
	SecurityServiceTypeSecurityGroupsContentAudit SecurityServiceType = "SECURITY_GROUPS_CONTENT_AUDIT"
	SecurityServiceTypeSecurityGroupsUsageAudit   SecurityServiceType = "SECURITY_GROUPS_USAGE_AUDIT"
)

Enum values for SecurityServiceType

func (SecurityServiceType) MarshalValue

func (enum SecurityServiceType) MarshalValue() (string, error)

func (SecurityServiceType) MarshalValueBuf

func (enum SecurityServiceType) MarshalValueBuf(b []byte) ([]byte, error)

type Tag added in v0.19.0

type Tag struct {

	// Part of the key:value pair that defines a tag. You can use a tag key to describe
	// a category of information, such as "customer." Tag keys are case-sensitive.
	//
	// Key is a required field
	Key *string `min:"1" type:"string" required:"true"`

	// Part of the key:value pair that defines a tag. You can use a tag value to
	// describe a specific value within a category, such as "companyA" or "companyB."
	// Tag values are case-sensitive.
	//
	// Value is a required field
	Value *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

A collection of key:value pairs associated with an AWS resource. The key:value pair can be anything you define. Typically, the tag key represents a category (such as "environment") and the tag value represents a specific value within that category (such as "test," "development," or "production"). You can add up to 50 tags to each AWS resource.

func (Tag) String added in v0.19.0

func (s Tag) String() string

String returns the string representation

func (*Tag) Validate added in v0.19.0

func (s *Tag) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourceInput added in v0.19.0

type TagResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource to return tags for. The AWS
	// Firewall Manager resources that support tagging are policies, applications
	// lists, and protocols lists.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`

	// The tags to add to the resource.
	//
	// TagList is a required field
	TagList []Tag `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (TagResourceInput) String added in v0.19.0

func (s TagResourceInput) String() string

String returns the string representation

func (*TagResourceInput) Validate added in v0.19.0

func (s *TagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourceOutput added in v0.19.0

type TagResourceOutput struct {
	// contains filtered or unexported fields
}

func (TagResourceOutput) String added in v0.19.0

func (s TagResourceOutput) String() string

String returns the string representation

type TagResourceRequest added in v0.19.0

type TagResourceRequest struct {
	*aws.Request
	Input *TagResourceInput
	Copy  func(*TagResourceInput) TagResourceRequest
}

TagResourceRequest is the request type for the TagResource API operation.

func (TagResourceRequest) Send added in v0.19.0

Send marshals and sends the TagResource API request.

type TagResourceResponse added in v0.19.0

type TagResourceResponse struct {
	*TagResourceOutput
	// contains filtered or unexported fields
}

TagResourceResponse is the response type for the TagResource API operation.

func (*TagResourceResponse) SDKResponseMetdata added in v0.19.0

func (r *TagResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the TagResource request.

type UntagResourceInput added in v0.19.0

type UntagResourceInput struct {

	// The Amazon Resource Name (ARN) of the resource to return tags for. The AWS
	// Firewall Manager resources that support tagging are policies, applications
	// lists, and protocols lists.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`

	// The keys of the tags to remove from the resource.
	//
	// TagKeys is a required field
	TagKeys []string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UntagResourceInput) String added in v0.19.0

func (s UntagResourceInput) String() string

String returns the string representation

func (*UntagResourceInput) Validate added in v0.19.0

func (s *UntagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourceOutput added in v0.19.0

type UntagResourceOutput struct {
	// contains filtered or unexported fields
}

func (UntagResourceOutput) String added in v0.19.0

func (s UntagResourceOutput) String() string

String returns the string representation

type UntagResourceRequest added in v0.19.0

type UntagResourceRequest struct {
	*aws.Request
	Input *UntagResourceInput
	Copy  func(*UntagResourceInput) UntagResourceRequest
}

UntagResourceRequest is the request type for the UntagResource API operation.

func (UntagResourceRequest) Send added in v0.19.0

Send marshals and sends the UntagResource API request.

type UntagResourceResponse added in v0.19.0

type UntagResourceResponse struct {
	*UntagResourceOutput
	// contains filtered or unexported fields
}

UntagResourceResponse is the response type for the UntagResource API operation.

func (*UntagResourceResponse) SDKResponseMetdata added in v0.19.0

func (r *UntagResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UntagResource request.

type ViolationDetail added in v0.24.0

type ViolationDetail struct {

	// The AWS account that the violation details were requested for.
	//
	// MemberAccount is a required field
	MemberAccount *string `min:"1" type:"string" required:"true"`

	// The ID of the AWS Firewall Manager policy that the violation details were
	// requested for.
	//
	// PolicyId is a required field
	PolicyId *string `min:"36" type:"string" required:"true"`

	// Brief description for the requested resource.
	ResourceDescription *string `type:"string"`

	// The resource ID that the violation details were requested for.
	//
	// ResourceId is a required field
	ResourceId *string `min:"1" type:"string" required:"true"`

	// The ResourceTag objects associated with the resource.
	ResourceTags []Tag `type:"list"`

	// The resource type that the violation details were requested for.
	//
	// ResourceType is a required field
	ResourceType *string `min:"1" type:"string" required:"true"`

	// List of violations for the requested resource.
	//
	// ResourceViolations is a required field
	ResourceViolations []ResourceViolation `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Violations for a resource based on the specified AWS Firewall Manager policy and AWS account.

func (ViolationDetail) String added in v0.24.0

func (s ViolationDetail) String() string

String returns the string representation

type ViolationReason

type ViolationReason string
const (
	ViolationReasonWebAclMissingRuleGroup                  ViolationReason = "WEB_ACL_MISSING_RULE_GROUP"
	ViolationReasonResourceMissingWebAcl                   ViolationReason = "RESOURCE_MISSING_WEB_ACL"
	ViolationReasonResourceIncorrectWebAcl                 ViolationReason = "RESOURCE_INCORRECT_WEB_ACL"
	ViolationReasonResourceMissingShieldProtection         ViolationReason = "RESOURCE_MISSING_SHIELD_PROTECTION"
	ViolationReasonResourceMissingWebAclOrShieldProtection ViolationReason = "RESOURCE_MISSING_WEB_ACL_OR_SHIELD_PROTECTION"
	ViolationReasonResourceMissingSecurityGroup            ViolationReason = "RESOURCE_MISSING_SECURITY_GROUP"
	ViolationReasonResourceViolatesAuditSecurityGroup      ViolationReason = "RESOURCE_VIOLATES_AUDIT_SECURITY_GROUP"
	ViolationReasonSecurityGroupUnused                     ViolationReason = "SECURITY_GROUP_UNUSED"
	ViolationReasonSecurityGroupRedundant                  ViolationReason = "SECURITY_GROUP_REDUNDANT"
)

Enum values for ViolationReason

func (ViolationReason) MarshalValue

func (enum ViolationReason) MarshalValue() (string, error)

func (ViolationReason) MarshalValueBuf

func (enum ViolationReason) MarshalValueBuf(b []byte) ([]byte, error)

Directories

Path Synopsis
Package fmsiface provides an interface to enable mocking the Firewall Management Service service client for testing your code.
Package fmsiface provides an interface to enable mocking the Firewall Management Service service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL