NAME
Paws::GuardDuty - Perl Interface to AWS Amazon GuardDuty
SYNOPSIS
use Paws;
my $obj = Paws->service('GuardDuty');
my $res = $obj->Method(
Arg1 => $val1,
Arg2 => [ 'V1', 'V2' ],
# if Arg3 is an object, the HashRef will be used as arguments to the constructor
# of the arguments type
Arg3 => { Att1 => 'Val1' },
# if Arg4 is an array of objects, the HashRefs will be passed as arguments to
# the constructor of the arguments type
Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
);
DESCRIPTION
Amazon GuardDuty is a continuous security monitoring service that analyzes and processes the following data sources: VPC Flow Logs, AWS CloudTrail event logs, and DNS logs. It uses threat intelligence feeds (such as lists of malicious IPs and domains) and machine learning to identify unexpected, potentially unauthorized, and malicious activity within your AWS environment. This can include issues like escalations of privileges, uses of exposed credentials, or communication with malicious IPs, URLs, or domains. For example, GuardDuty can detect compromised EC2 instances that serve malware or mine bitcoin.
GuardDuty also monitors AWS account access behavior for signs of compromise. Some examples of this are unauthorized infrastructure deployments such as EC2 instances deployed in a Region that has never been used, or unusual API calls like a password policy change to reduce password strength.
GuardDuty informs you of the status of your AWS environment by producing security findings that you can view in the GuardDuty console or through Amazon CloudWatch events. For more information, see the Amazon GuardDuty User Guide (https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html) .
For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/guardduty-2017-11-28
METHODS
AcceptInvitation
Each argument is described in detail in: Paws::GuardDuty::AcceptInvitation
Returns: a Paws::GuardDuty::AcceptInvitationResponse instance
Accepts the invitation to be monitored by a GuardDuty administrator account.
ArchiveFindings
Each argument is described in detail in: Paws::GuardDuty::ArchiveFindings
Returns: a Paws::GuardDuty::ArchiveFindingsResponse instance
Archives GuardDuty findings that are specified by the list of finding IDs.
Only the administrator account can archive findings. Member accounts don't have permission to archive findings from their accounts.
CreateDetector
- Enable => Bool
- [ClientToken => Str]
- [DataSources => Paws::GuardDuty::DataSourceConfigurations]
- [FindingPublishingFrequency => Str]
- [Tags => Paws::GuardDuty::TagMap]
Each argument is described in detail in: Paws::GuardDuty::CreateDetector
Returns: a Paws::GuardDuty::CreateDetectorResponse instance
Creates a single Amazon GuardDuty detector. A detector is a resource that represents the GuardDuty service. To start using GuardDuty, you must create a detector in each Region where you enable the service. You can have only one detector per account per Region. All data sources are enabled in a new detector by default.
CreateFilter
- DetectorId => Str
- FindingCriteria => Paws::GuardDuty::FindingCriteria
- Name => Str
- [Action => Str]
- [ClientToken => Str]
- [Description => Str]
- [Rank => Int]
- [Tags => Paws::GuardDuty::TagMap]
Each argument is described in detail in: Paws::GuardDuty::CreateFilter
Returns: a Paws::GuardDuty::CreateFilterResponse instance
Creates a filter using the specified finding criteria.
CreateIPSet
- Activate => Bool
- DetectorId => Str
- Format => Str
- Location => Str
- Name => Str
- [ClientToken => Str]
- [Tags => Paws::GuardDuty::TagMap]
Each argument is described in detail in: Paws::GuardDuty::CreateIPSet
Returns: a Paws::GuardDuty::CreateIPSetResponse instance
Creates a new IPSet, which is called a trusted IP list in the console user interface. An IPSet is a list of IP addresses that are trusted for secure communication with AWS infrastructure and applications. GuardDuty doesn't generate findings for IP addresses that are included in IPSets. Only users from the administrator account can use this operation.
CreateMembers
- AccountDetails => ArrayRef[Paws::GuardDuty::AccountDetail]
- DetectorId => Str
Each argument is described in detail in: Paws::GuardDuty::CreateMembers
Returns: a Paws::GuardDuty::CreateMembersResponse instance
Creates member accounts of the current AWS account by specifying a list of AWS account IDs. This step is a prerequisite for managing the associated member accounts either by invitation or through an organization.
When using Create Members
as an organizations delegated administrator this action will enable GuardDuty in the added member accounts, with the exception of the organization delegated administrator account, which must enable GuardDuty prior to being added as a member.
If you are adding accounts by invitation use this action after GuardDuty has been enabled in potential member accounts and before using Invite Members
(https://docs.aws.amazon.com/guardduty/latest/APIReference/API_InviteMembers.html).
CreatePublishingDestination
- DestinationProperties => Paws::GuardDuty::DestinationProperties
- DestinationType => Str
- DetectorId => Str
- [ClientToken => Str]
Each argument is described in detail in: Paws::GuardDuty::CreatePublishingDestination
Returns: a Paws::GuardDuty::CreatePublishingDestinationResponse instance
Creates a publishing destination to export findings to. The resource to export findings to must exist before you use this operation.
CreateSampleFindings
Each argument is described in detail in: Paws::GuardDuty::CreateSampleFindings
Returns: a Paws::GuardDuty::CreateSampleFindingsResponse instance
Generates example findings of types specified by the list of finding types. If 'NULL' is specified for findingTypes
, the API generates example findings of all supported finding types.
CreateThreatIntelSet
- Activate => Bool
- DetectorId => Str
- Format => Str
- Location => Str
- Name => Str
- [ClientToken => Str]
- [Tags => Paws::GuardDuty::TagMap]
Each argument is described in detail in: Paws::GuardDuty::CreateThreatIntelSet
Returns: a Paws::GuardDuty::CreateThreatIntelSetResponse instance
Creates a new ThreatIntelSet. ThreatIntelSets consist of known malicious IP addresses. GuardDuty generates findings based on ThreatIntelSets. Only users of the administrator account can use this operation.
DeclineInvitations
Each argument is described in detail in: Paws::GuardDuty::DeclineInvitations
Returns: a Paws::GuardDuty::DeclineInvitationsResponse instance
Declines invitations sent to the current member account by AWS accounts specified by their account IDs.
DeleteDetector
Each argument is described in detail in: Paws::GuardDuty::DeleteDetector
Returns: a Paws::GuardDuty::DeleteDetectorResponse instance
Deletes an Amazon GuardDuty detector that is specified by the detector ID.
DeleteFilter
Each argument is described in detail in: Paws::GuardDuty::DeleteFilter
Returns: a Paws::GuardDuty::DeleteFilterResponse instance
Deletes the filter specified by the filter name.
DeleteInvitations
Each argument is described in detail in: Paws::GuardDuty::DeleteInvitations
Returns: a Paws::GuardDuty::DeleteInvitationsResponse instance
Deletes invitations sent to the current member account by AWS accounts specified by their account IDs.
DeleteIPSet
Each argument is described in detail in: Paws::GuardDuty::DeleteIPSet
Returns: a Paws::GuardDuty::DeleteIPSetResponse instance
Deletes the IPSet specified by the ipSetId
. IPSets are called trusted IP lists in the console user interface.
DeleteMembers
Each argument is described in detail in: Paws::GuardDuty::DeleteMembers
Returns: a Paws::GuardDuty::DeleteMembersResponse instance
Deletes GuardDuty member accounts (to the current GuardDuty administrator account) specified by the account IDs.
DeletePublishingDestination
Each argument is described in detail in: Paws::GuardDuty::DeletePublishingDestination
Returns: a Paws::GuardDuty::DeletePublishingDestinationResponse instance
Deletes the publishing definition with the specified destinationId
.
DeleteThreatIntelSet
Each argument is described in detail in: Paws::GuardDuty::DeleteThreatIntelSet
Returns: a Paws::GuardDuty::DeleteThreatIntelSetResponse instance
Deletes the ThreatIntelSet specified by the ThreatIntelSet ID.
DescribeOrganizationConfiguration
Each argument is described in detail in: Paws::GuardDuty::DescribeOrganizationConfiguration
Returns: a Paws::GuardDuty::DescribeOrganizationConfigurationResponse instance
Returns information about the account selected as the delegated administrator for GuardDuty.
DescribePublishingDestination
Each argument is described in detail in: Paws::GuardDuty::DescribePublishingDestination
Returns: a Paws::GuardDuty::DescribePublishingDestinationResponse instance
Returns information about the publishing destination specified by the provided destinationId
.
DisableOrganizationAdminAccount
Each argument is described in detail in: Paws::GuardDuty::DisableOrganizationAdminAccount
Returns: a Paws::GuardDuty::DisableOrganizationAdminAccountResponse instance
Disables an AWS account within the Organization as the GuardDuty delegated administrator.
DisassociateFromMasterAccount
Each argument is described in detail in: Paws::GuardDuty::DisassociateFromMasterAccount
Returns: a Paws::GuardDuty::DisassociateFromMasterAccountResponse instance
Disassociates the current GuardDuty member account from its administrator account.
DisassociateMembers
Each argument is described in detail in: Paws::GuardDuty::DisassociateMembers
Returns: a Paws::GuardDuty::DisassociateMembersResponse instance
Disassociates GuardDuty member accounts (to the current GuardDuty administrator account) specified by the account IDs.
EnableOrganizationAdminAccount
Each argument is described in detail in: Paws::GuardDuty::EnableOrganizationAdminAccount
Returns: a Paws::GuardDuty::EnableOrganizationAdminAccountResponse instance
Enables an AWS account within the organization as the GuardDuty delegated administrator.
GetDetector
Each argument is described in detail in: Paws::GuardDuty::GetDetector
Returns: a Paws::GuardDuty::GetDetectorResponse instance
Retrieves an Amazon GuardDuty detector specified by the detectorId.
GetFilter
Each argument is described in detail in: Paws::GuardDuty::GetFilter
Returns: a Paws::GuardDuty::GetFilterResponse instance
Returns the details of the filter specified by the filter name.
GetFindings
- DetectorId => Str
- FindingIds => ArrayRef[Str|Undef]
- [SortCriteria => Paws::GuardDuty::SortCriteria]
Each argument is described in detail in: Paws::GuardDuty::GetFindings
Returns: a Paws::GuardDuty::GetFindingsResponse instance
Describes Amazon GuardDuty findings specified by finding IDs.
GetFindingsStatistics
- DetectorId => Str
- FindingStatisticTypes => ArrayRef[Str|Undef]
- [FindingCriteria => Paws::GuardDuty::FindingCriteria]
Each argument is described in detail in: Paws::GuardDuty::GetFindingsStatistics
Returns: a Paws::GuardDuty::GetFindingsStatisticsResponse instance
Lists Amazon GuardDuty findings statistics for the specified detector ID.
GetInvitationsCount
Each argument is described in detail in: Paws::GuardDuty::GetInvitationsCount
Returns: a Paws::GuardDuty::GetInvitationsCountResponse instance
Returns the count of all GuardDuty membership invitations that were sent to the current member account except the currently accepted invitation.
GetIPSet
Each argument is described in detail in: Paws::GuardDuty::GetIPSet
Returns: a Paws::GuardDuty::GetIPSetResponse instance
Retrieves the IPSet specified by the ipSetId
.
GetMasterAccount
Each argument is described in detail in: Paws::GuardDuty::GetMasterAccount
Returns: a Paws::GuardDuty::GetMasterAccountResponse instance
Provides the details for the GuardDuty administrator account associated with the current GuardDuty member account.
GetMemberDetectors
Each argument is described in detail in: Paws::GuardDuty::GetMemberDetectors
Returns: a Paws::GuardDuty::GetMemberDetectorsResponse instance
Describes which data sources are enabled for the member account's detector.
GetMembers
Each argument is described in detail in: Paws::GuardDuty::GetMembers
Returns: a Paws::GuardDuty::GetMembersResponse instance
Retrieves GuardDuty member accounts (of the current GuardDuty administrator account) specified by the account IDs.
GetThreatIntelSet
Each argument is described in detail in: Paws::GuardDuty::GetThreatIntelSet
Returns: a Paws::GuardDuty::GetThreatIntelSetResponse instance
Retrieves the ThreatIntelSet that is specified by the ThreatIntelSet ID.
GetUsageStatistics
- DetectorId => Str
- UsageCriteria => Paws::GuardDuty::UsageCriteria
- UsageStatisticType => Str
- [MaxResults => Int]
- [NextToken => Str]
- [Unit => Str]
Each argument is described in detail in: Paws::GuardDuty::GetUsageStatistics
Returns: a Paws::GuardDuty::GetUsageStatisticsResponse instance
Lists Amazon GuardDuty usage statistics over the last 30 days for the specified detector ID. For newly enabled detectors or data sources the cost returned will include only the usage so far under 30 days, this may differ from the cost metrics in the console, which projects usage over 30 days to provide a monthly cost estimate. For more information see Understanding How Usage Costs are Calculated (https://docs.aws.amazon.com/guardduty/latest/ug/monitoring_costs.html#usage-calculations).
InviteMembers
- AccountIds => ArrayRef[Str|Undef]
- DetectorId => Str
- [DisableEmailNotification => Bool]
- [Message => Str]
Each argument is described in detail in: Paws::GuardDuty::InviteMembers
Returns: a Paws::GuardDuty::InviteMembersResponse instance
Invites other AWS accounts (created as members of the current AWS account by CreateMembers) to enable GuardDuty, and allow the current AWS account to view and manage these accounts' findings on their behalf as the GuardDuty administrator account.
ListDetectors
Each argument is described in detail in: Paws::GuardDuty::ListDetectors
Returns: a Paws::GuardDuty::ListDetectorsResponse instance
Lists detectorIds of all the existing Amazon GuardDuty detector resources.
ListFilters
Each argument is described in detail in: Paws::GuardDuty::ListFilters
Returns: a Paws::GuardDuty::ListFiltersResponse instance
Returns a paginated list of the current filters.
ListFindings
- DetectorId => Str
- [FindingCriteria => Paws::GuardDuty::FindingCriteria]
- [MaxResults => Int]
- [NextToken => Str]
- [SortCriteria => Paws::GuardDuty::SortCriteria]
Each argument is described in detail in: Paws::GuardDuty::ListFindings
Returns: a Paws::GuardDuty::ListFindingsResponse instance
Lists Amazon GuardDuty findings for the specified detector ID.
ListInvitations
Each argument is described in detail in: Paws::GuardDuty::ListInvitations
Returns: a Paws::GuardDuty::ListInvitationsResponse instance
Lists all GuardDuty membership invitations that were sent to the current AWS account.
ListIPSets
Each argument is described in detail in: Paws::GuardDuty::ListIPSets
Returns: a Paws::GuardDuty::ListIPSetsResponse instance
Lists the IPSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the IPSets returned are the IPSets from the associated administrator account.
ListMembers
Each argument is described in detail in: Paws::GuardDuty::ListMembers
Returns: a Paws::GuardDuty::ListMembersResponse instance
Lists details about all member accounts for the current GuardDuty administrator account.
ListOrganizationAdminAccounts
Each argument is described in detail in: Paws::GuardDuty::ListOrganizationAdminAccounts
Returns: a Paws::GuardDuty::ListOrganizationAdminAccountsResponse instance
Lists the accounts configured as GuardDuty delegated administrators.
ListPublishingDestinations
Each argument is described in detail in: Paws::GuardDuty::ListPublishingDestinations
Returns: a Paws::GuardDuty::ListPublishingDestinationsResponse instance
Returns a list of publishing destinations associated with the specified dectectorId
.
ListTagsForResource
Each argument is described in detail in: Paws::GuardDuty::ListTagsForResource
Returns: a Paws::GuardDuty::ListTagsForResourceResponse instance
Lists tags for a resource. Tagging is currently supported for detectors, finding filters, IP sets, and threat intel sets, with a limit of 50 tags per resource. When invoked, this operation returns all assigned tags for a given resource.
ListThreatIntelSets
Each argument is described in detail in: Paws::GuardDuty::ListThreatIntelSets
Returns: a Paws::GuardDuty::ListThreatIntelSetsResponse instance
Lists the ThreatIntelSets of the GuardDuty service specified by the detector ID. If you use this operation from a member account, the ThreatIntelSets associated with the administrator account are returned.
StartMonitoringMembers
Each argument is described in detail in: Paws::GuardDuty::StartMonitoringMembers
Returns: a Paws::GuardDuty::StartMonitoringMembersResponse instance
Turns on GuardDuty monitoring of the specified member accounts. Use this operation to restart monitoring of accounts that you stopped monitoring with the StopMonitoringMembers
operation.
StopMonitoringMembers
Each argument is described in detail in: Paws::GuardDuty::StopMonitoringMembers
Returns: a Paws::GuardDuty::StopMonitoringMembersResponse instance
Stops GuardDuty monitoring for the specified member accounts. Use the StartMonitoringMembers
operation to restart monitoring for those accounts.
TagResource
- ResourceArn => Str
- Tags => Paws::GuardDuty::TagMap
Each argument is described in detail in: Paws::GuardDuty::TagResource
Returns: a Paws::GuardDuty::TagResourceResponse instance
Adds tags to a resource.
UnarchiveFindings
Each argument is described in detail in: Paws::GuardDuty::UnarchiveFindings
Returns: a Paws::GuardDuty::UnarchiveFindingsResponse instance
Unarchives GuardDuty findings specified by the findingIds
.
UntagResource
Each argument is described in detail in: Paws::GuardDuty::UntagResource
Returns: a Paws::GuardDuty::UntagResourceResponse instance
Removes tags from a resource.
UpdateDetector
- DetectorId => Str
- [DataSources => Paws::GuardDuty::DataSourceConfigurations]
- [Enable => Bool]
- [FindingPublishingFrequency => Str]
Each argument is described in detail in: Paws::GuardDuty::UpdateDetector
Returns: a Paws::GuardDuty::UpdateDetectorResponse instance
Updates the Amazon GuardDuty detector specified by the detectorId.
UpdateFilter
- DetectorId => Str
- FilterName => Str
- [Action => Str]
- [Description => Str]
- [FindingCriteria => Paws::GuardDuty::FindingCriteria]
- [Rank => Int]
Each argument is described in detail in: Paws::GuardDuty::UpdateFilter
Returns: a Paws::GuardDuty::UpdateFilterResponse instance
Updates the filter specified by the filter name.
UpdateFindingsFeedback
Each argument is described in detail in: Paws::GuardDuty::UpdateFindingsFeedback
Returns: a Paws::GuardDuty::UpdateFindingsFeedbackResponse instance
Marks the specified GuardDuty findings as useful or not useful.
UpdateIPSet
Each argument is described in detail in: Paws::GuardDuty::UpdateIPSet
Returns: a Paws::GuardDuty::UpdateIPSetResponse instance
Updates the IPSet specified by the IPSet ID.
UpdateMemberDetectors
- AccountIds => ArrayRef[Str|Undef]
- DetectorId => Str
- [DataSources => Paws::GuardDuty::DataSourceConfigurations]
Each argument is described in detail in: Paws::GuardDuty::UpdateMemberDetectors
Returns: a Paws::GuardDuty::UpdateMemberDetectorsResponse instance
Contains information on member accounts to be updated.
UpdateOrganizationConfiguration
- AutoEnable => Bool
- DetectorId => Str
- [DataSources => Paws::GuardDuty::OrganizationDataSourceConfigurations]
Each argument is described in detail in: Paws::GuardDuty::UpdateOrganizationConfiguration
Returns: a Paws::GuardDuty::UpdateOrganizationConfigurationResponse instance
Updates the delegated administrator account with the values provided.
UpdatePublishingDestination
- DestinationId => Str
- DetectorId => Str
- [DestinationProperties => Paws::GuardDuty::DestinationProperties]
Each argument is described in detail in: Paws::GuardDuty::UpdatePublishingDestination
Returns: a Paws::GuardDuty::UpdatePublishingDestinationResponse instance
Updates information about the publishing destination specified by the destinationId
.
UpdateThreatIntelSet
Each argument is described in detail in: Paws::GuardDuty::UpdateThreatIntelSet
Returns: a Paws::GuardDuty::UpdateThreatIntelSetResponse instance
Updates the ThreatIntelSet specified by the ThreatIntelSet ID.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
ListAllDetectors(sub { },[MaxResults => Int, NextToken => Str])
ListAllDetectors([MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- DetectorIds, passing the object as the first parameter, and the string 'DetectorIds' as the second parameter
If not, it will return a a Paws::GuardDuty::ListDetectorsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllFilters(sub { },DetectorId => Str, [MaxResults => Int, NextToken => Str])
ListAllFilters(DetectorId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- FilterNames, passing the object as the first parameter, and the string 'FilterNames' as the second parameter
If not, it will return a a Paws::GuardDuty::ListFiltersResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllFindings(sub { },DetectorId => Str, [FindingCriteria => Paws::GuardDuty::FindingCriteria, MaxResults => Int, NextToken => Str, SortCriteria => Paws::GuardDuty::SortCriteria])
ListAllFindings(DetectorId => Str, [FindingCriteria => Paws::GuardDuty::FindingCriteria, MaxResults => Int, NextToken => Str, SortCriteria => Paws::GuardDuty::SortCriteria])
If passed a sub as first parameter, it will call the sub for each element found in :
- FindingIds, passing the object as the first parameter, and the string 'FindingIds' as the second parameter
If not, it will return a a Paws::GuardDuty::ListFindingsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllInvitations(sub { },[MaxResults => Int, NextToken => Str])
ListAllInvitations([MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Invitations, passing the object as the first parameter, and the string 'Invitations' as the second parameter
If not, it will return a a Paws::GuardDuty::ListInvitationsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllIPSets(sub { },DetectorId => Str, [MaxResults => Int, NextToken => Str])
ListAllIPSets(DetectorId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- IpSetIds, passing the object as the first parameter, and the string 'IpSetIds' as the second parameter
If not, it will return a a Paws::GuardDuty::ListIPSetsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllMembers(sub { },DetectorId => Str, [MaxResults => Int, NextToken => Str, OnlyAssociated => Str])
ListAllMembers(DetectorId => Str, [MaxResults => Int, NextToken => Str, OnlyAssociated => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- Members, passing the object as the first parameter, and the string 'Members' as the second parameter
If not, it will return a a Paws::GuardDuty::ListMembersResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllOrganizationAdminAccounts(sub { },[MaxResults => Int, NextToken => Str])
ListAllOrganizationAdminAccounts([MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- AdminAccounts, passing the object as the first parameter, and the string 'AdminAccounts' as the second parameter
If not, it will return a a Paws::GuardDuty::ListOrganizationAdminAccountsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllThreatIntelSets(sub { },DetectorId => Str, [MaxResults => Int, NextToken => Str])
ListAllThreatIntelSets(DetectorId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- ThreatIntelSetIds, passing the object as the first parameter, and the string 'ThreatIntelSetIds' as the second parameter
If not, it will return a a Paws::GuardDuty::ListThreatIntelSetsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SEE ALSO
This service class forms part of Paws
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues