com.amazonaws.services.securityhub.AWSSecurityHub Maven / Gradle / Ivy
Show all versions of aws-java-sdk-securityhub Show documentation
/*
* Copyright 2014-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.securityhub;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.securityhub.model.*;
/**
* Interface for accessing AWS SecurityHub.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.securityhub.AbstractAWSSecurityHub} instead.
*
*
*
* AWS Security Hub provides you with a comprehensive view of your security state within AWS and your compliance with
* the security industry standards and best practices. Security Hub collects security data from across AWS accounts,
* services, and supported third-party partners and helps you analyze your security trends and identify the highest
* priority security issues. For more information, see AWS Security Hub User Guide.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSSecurityHub {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "securityhub";
/**
*
* Accepts the invitation to be monitored by a master SecurityHub account.
*
*
* @param acceptInvitationRequest
* @return Result of the AcceptInvitation operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.AcceptInvitation
* @see AWS
* API Documentation
*/
AcceptInvitationResult acceptInvitation(AcceptInvitationRequest acceptInvitationRequest);
/**
*
* Disables the standards specified by the standards subscription ARNs. In the context of Security Hub, supported
* standards (for example, CIS AWS Foundations) are automated and continuous checks that help determine your
* compliance status against security industry (including AWS) best practices.
*
*
* @param batchDisableStandardsRequest
* @return Result of the BatchDisableStandards operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.BatchDisableStandards
* @see AWS API Documentation
*/
BatchDisableStandardsResult batchDisableStandards(BatchDisableStandardsRequest batchDisableStandardsRequest);
/**
*
* Enables the standards specified by the standards ARNs. In the context of Security Hub, supported standards (for
* example, CIS AWS Foundations) are automated and continuous checks that help determine your compliance status
* against security industry (including AWS) best practices.
*
*
* @param batchEnableStandardsRequest
* @return Result of the BatchEnableStandards operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.BatchEnableStandards
* @see AWS API Documentation
*/
BatchEnableStandardsResult batchEnableStandards(BatchEnableStandardsRequest batchEnableStandardsRequest);
/**
*
* Imports security findings that are generated by the integrated third-party products into Security Hub.
*
*
* @param batchImportFindingsRequest
* @return Result of the BatchImportFindings operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.BatchImportFindings
* @see AWS API Documentation
*/
BatchImportFindingsResult batchImportFindings(BatchImportFindingsRequest batchImportFindingsRequest);
/**
*
* Creates an insight, which is a consolidation of findings that identifies a security area that requires attention
* or intervention.
*
*
* @param createInsightRequest
* @return Result of the CreateInsight operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.CreateInsight
* @see AWS API
* Documentation
*/
CreateInsightResult createInsight(CreateInsightRequest createInsightRequest);
/**
*
* Creates member Security Hub accounts in the current AWS account (which becomes the master Security Hub account)
* that has Security Hub enabled.
*
*
* @param createMembersRequest
* @return Result of the CreateMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.CreateMembers
* @see AWS API
* Documentation
*/
CreateMembersResult createMembers(CreateMembersRequest createMembersRequest);
/**
*
* Declines invitations that are sent to this AWS account (invitee) by the AWS accounts (inviters) that are
* specified by the account IDs.
*
*
* @param declineInvitationsRequest
* @return Result of the DeclineInvitations operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DeclineInvitations
* @see AWS
* API Documentation
*/
DeclineInvitationsResult declineInvitations(DeclineInvitationsRequest declineInvitationsRequest);
/**
*
* Deletes an insight that is specified by the insight ARN.
*
*
* @param deleteInsightRequest
* @return Result of the DeleteInsight operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.DeleteInsight
* @see AWS API
* Documentation
*/
DeleteInsightResult deleteInsight(DeleteInsightRequest deleteInsightRequest);
/**
*
* Deletes invitations that are sent to this AWS account (invitee) by the AWS accounts (inviters) that are specified
* by their account IDs.
*
*
* @param deleteInvitationsRequest
* @return Result of the DeleteInvitations operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DeleteInvitations
* @see AWS
* API Documentation
*/
DeleteInvitationsResult deleteInvitations(DeleteInvitationsRequest deleteInvitationsRequest);
/**
*
* Deletes the Security Hub member accounts that are specified by the account IDs.
*
*
* @param deleteMembersRequest
* @return Result of the DeleteMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DeleteMembers
* @see AWS API
* Documentation
*/
DeleteMembersResult deleteMembers(DeleteMembersRequest deleteMembersRequest);
/**
*
* Stops you from being able to import findings generated by integrated third-party providers into Security Hub.
*
*
* @param disableImportFindingsForProductRequest
* @return Result of the DisableImportFindingsForProduct operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DisableImportFindingsForProduct
* @see AWS API Documentation
*/
DisableImportFindingsForProductResult disableImportFindingsForProduct(DisableImportFindingsForProductRequest disableImportFindingsForProductRequest);
/**
*
* Disables the AWS Security Hub Service.
*
*
* @param disableSecurityHubRequest
* @return Result of the DisableSecurityHub operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.DisableSecurityHub
* @see AWS
* API Documentation
*/
DisableSecurityHubResult disableSecurityHub(DisableSecurityHubRequest disableSecurityHubRequest);
/**
*
* Disassociates the current Security Hub member account from its master account.
*
*
* @param disassociateFromMasterAccountRequest
* @return Result of the DisassociateFromMasterAccount operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DisassociateFromMasterAccount
* @see AWS API Documentation
*/
DisassociateFromMasterAccountResult disassociateFromMasterAccount(DisassociateFromMasterAccountRequest disassociateFromMasterAccountRequest);
/**
*
* Disassociates the Security Hub member accounts that are specified by the account IDs from their master account.
*
*
* @param disassociateMembersRequest
* @return Result of the DisassociateMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.DisassociateMembers
* @see AWS API Documentation
*/
DisassociateMembersResult disassociateMembers(DisassociateMembersRequest disassociateMembersRequest);
/**
*
* Enables you to import findings generated by integrated third-party providers into Security Hub.
*
*
* @param enableImportFindingsForProductRequest
* @return Result of the EnableImportFindingsForProduct operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @sample AWSSecurityHub.EnableImportFindingsForProduct
* @see AWS API Documentation
*/
EnableImportFindingsForProductResult enableImportFindingsForProduct(EnableImportFindingsForProductRequest enableImportFindingsForProductRequest);
/**
*
* Enables the AWS Security Hub service.
*
*
* @param enableSecurityHubRequest
* @return Result of the EnableSecurityHub operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.EnableSecurityHub
* @see AWS
* API Documentation
*/
EnableSecurityHubResult enableSecurityHub(EnableSecurityHubRequest enableSecurityHubRequest);
/**
*
* Lists and describes enabled standards.
*
*
* @param getEnabledStandardsRequest
* @return Result of the GetEnabledStandards operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.GetEnabledStandards
* @see AWS API Documentation
*/
GetEnabledStandardsResult getEnabledStandards(GetEnabledStandardsRequest getEnabledStandardsRequest);
/**
*
* Lists and describes Security Hub-aggregated findings that are specified by filter attributes.
*
*
* @param getFindingsRequest
* @return Result of the GetFindings operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.GetFindings
* @see AWS API
* Documentation
*/
GetFindingsResult getFindings(GetFindingsRequest getFindingsRequest);
/**
*
* Lists the results of the Security Hub insight specified by the insight ARN.
*
*
* @param getInsightResultsRequest
* @return Result of the GetInsightResults operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.GetInsightResults
* @see AWS
* API Documentation
*/
GetInsightResultsResult getInsightResults(GetInsightResultsRequest getInsightResultsRequest);
/**
*
* Lists and describes insights that are specified by insight ARNs.
*
*
* @param getInsightsRequest
* @return Result of the GetInsights operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.GetInsights
* @see AWS API
* Documentation
*/
GetInsightsResult getInsights(GetInsightsRequest getInsightsRequest);
/**
*
* Returns the count of all Security Hub membership invitations that were sent to the current member account, not
* including the currently accepted invitation.
*
*
* @param getInvitationsCountRequest
* @return Result of the GetInvitationsCount operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.GetInvitationsCount
* @see AWS API Documentation
*/
GetInvitationsCountResult getInvitationsCount(GetInvitationsCountRequest getInvitationsCountRequest);
/**
*
* Provides the details for the Security Hub master account to the current member account.
*
*
* @param getMasterAccountRequest
* @return Result of the GetMasterAccount operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.GetMasterAccount
* @see AWS
* API Documentation
*/
GetMasterAccountResult getMasterAccount(GetMasterAccountRequest getMasterAccountRequest);
/**
*
* Returns the details on the Security Hub member accounts that are specified by the account IDs.
*
*
* @param getMembersRequest
* @return Result of the GetMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.GetMembers
* @see AWS API
* Documentation
*/
GetMembersResult getMembers(GetMembersRequest getMembersRequest);
/**
*
* Invites other AWS accounts to enable Security Hub and become Security Hub member accounts. When an account
* accepts the invitation and becomes a member account, the master account can view Security Hub findings of the
* member account.
*
*
* @param inviteMembersRequest
* @return Result of the InviteMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.InviteMembers
* @see AWS API
* Documentation
*/
InviteMembersResult inviteMembers(InviteMembersRequest inviteMembersRequest);
/**
*
* Lists all Security Hub-integrated third-party findings providers.
*
*
* @param listEnabledProductsForImportRequest
* @return Result of the ListEnabledProductsForImport operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @sample AWSSecurityHub.ListEnabledProductsForImport
* @see AWS API Documentation
*/
ListEnabledProductsForImportResult listEnabledProductsForImport(ListEnabledProductsForImportRequest listEnabledProductsForImportRequest);
/**
*
* Lists all Security Hub membership invitations that were sent to the current AWS account.
*
*
* @param listInvitationsRequest
* @return Result of the ListInvitations operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.ListInvitations
* @see AWS
* API Documentation
*/
ListInvitationsResult listInvitations(ListInvitationsRequest listInvitationsRequest);
/**
*
* Lists details about all member accounts for the current Security Hub master account.
*
*
* @param listMembersRequest
* @return Result of the ListMembers operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.ListMembers
* @see AWS API
* Documentation
*/
ListMembersResult listMembers(ListMembersRequest listMembersRequest);
/**
*
* Updates the AWS Security Hub-aggregated findings specified by the filter attributes.
*
*
* @param updateFindingsRequest
* @return Result of the UpdateFindings operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.UpdateFindings
* @see AWS API
* Documentation
*/
UpdateFindingsResult updateFindings(UpdateFindingsRequest updateFindingsRequest);
/**
*
* Updates the AWS Security Hub insight specified by the insight ARN.
*
*
* @param updateInsightRequest
* @return Result of the UpdateInsight operation returned by the service.
* @throws InternalException
* Internal server error.
* @throws InvalidInputException
* The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
* @throws LimitExceededException
* The request was rejected because it attempted to create resources beyond the current AWS account limits.
* The error code describes the limit exceeded.
* @throws ResourceNotFoundException
* The request was rejected because the specified resource cannot be found.
* @sample AWSSecurityHub.UpdateInsight
* @see AWS API
* Documentation
*/
UpdateInsightResult updateInsight(UpdateInsightRequest updateInsightRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}