All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.detective.AmazonDetectiveAsync Maven / Gradle / Ivy

/*
 * Copyright 2015-2020 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.detective;

import javax.annotation.Generated;

import com.amazonaws.services.detective.model.*;

/**
 * Interface for accessing Amazon Detective asynchronously. Each asynchronous method will return a Java Future object
 * representing the asynchronous operation; overloads which accept an {@code AsyncHandler} can be used to receive
 * notification when an asynchronous operation completes.
 * 

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.detective.AbstractAmazonDetectiveAsync} instead. *

*

*

* Detective uses machine learning and purpose-built visualizations to help you analyze and investigate security issues * across your Amazon Web Services (AWS) workloads. Detective automatically extracts time-based events such as login * attempts, API calls, and network traffic from AWS CloudTrail and Amazon Virtual Private Cloud (Amazon VPC) flow logs. * It also extracts findings detected by Amazon GuardDuty. *

*

* The Detective API primarily supports the creation and management of behavior graphs. A behavior graph contains the * extracted data from a set of member accounts, and is created and managed by a master account. *

*

* Every behavior graph is specific to a Region. You can only use the API to manage graphs that belong to the Region * that is associated with the currently selected endpoint. *

*

* A Detective master account can use the Detective API to do the following: *

*
    *
  • *

    * Enable and disable Detective. Enabling Detective creates a new behavior graph. *

    *
  • *
  • *

    * View the list of member accounts in a behavior graph. *

    *
  • *
  • *

    * Add member accounts to a behavior graph. *

    *
  • *
  • *

    * Remove member accounts from a behavior graph. *

    *
  • *
*

* A member account can use the Detective API to do the following: *

*
    *
  • *

    * View the list of behavior graphs that they are invited to. *

    *
  • *
  • *

    * Accept an invitation to contribute to a behavior graph. *

    *
  • *
  • *

    * Decline an invitation to contribute to a behavior graph. *

    *
  • *
  • *

    * Remove their account from a behavior graph. *

    *
  • *
*

* All API actions are logged as CloudTrail events. See Logging Detective API * Calls with CloudTrail. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AmazonDetectiveAsync extends AmazonDetective { /** *

* Accepts an invitation for the member account to contribute data to a behavior graph. This operation can only be * called by an invited member account. *

*

* The request provides the ARN of behavior graph. *

*

* The member account status in the graph must be INVITED. *

* * @param acceptInvitationRequest * @return A Java Future containing the result of the AcceptInvitation operation returned by the service. * @sample AmazonDetectiveAsync.AcceptInvitation * @see AWS API * Documentation */ java.util.concurrent.Future acceptInvitationAsync(AcceptInvitationRequest acceptInvitationRequest); /** *

* Accepts an invitation for the member account to contribute data to a behavior graph. This operation can only be * called by an invited member account. *

*

* The request provides the ARN of behavior graph. *

*

* The member account status in the graph must be INVITED. *

* * @param acceptInvitationRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the AcceptInvitation operation returned by the service. * @sample AmazonDetectiveAsyncHandler.AcceptInvitation * @see AWS API * Documentation */ java.util.concurrent.Future acceptInvitationAsync(AcceptInvitationRequest acceptInvitationRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Creates a new behavior graph for the calling account, and sets that account as the master account. This operation * is called by the account that is enabling Detective. *

*

* Before you try to enable Detective, make sure that your account has been enrolled in Amazon GuardDuty for at * least 48 hours. If you do not meet this requirement, you cannot enable Detective. If you do meet the GuardDuty * prerequisite, then when you make the request to enable Detective, it checks whether your data volume is within * the Detective quota. If it exceeds the quota, then you cannot enable Detective. *

*

* The operation also enables Detective for the calling account in the currently selected Region. It returns the ARN * of the new behavior graph. *

*

* CreateGraph triggers a process to create the corresponding data tables for the new behavior graph. *

*

* An account can only be the master account for one behavior graph within a Region. If the same account calls * CreateGraph with the same master account, it always returns the same behavior graph ARN. It does not * create a new behavior graph. *

* * @param createGraphRequest * @return A Java Future containing the result of the CreateGraph operation returned by the service. * @sample AmazonDetectiveAsync.CreateGraph * @see AWS API * Documentation */ java.util.concurrent.Future createGraphAsync(CreateGraphRequest createGraphRequest); /** *

* Creates a new behavior graph for the calling account, and sets that account as the master account. This operation * is called by the account that is enabling Detective. *

*

* Before you try to enable Detective, make sure that your account has been enrolled in Amazon GuardDuty for at * least 48 hours. If you do not meet this requirement, you cannot enable Detective. If you do meet the GuardDuty * prerequisite, then when you make the request to enable Detective, it checks whether your data volume is within * the Detective quota. If it exceeds the quota, then you cannot enable Detective. *

*

* The operation also enables Detective for the calling account in the currently selected Region. It returns the ARN * of the new behavior graph. *

*

* CreateGraph triggers a process to create the corresponding data tables for the new behavior graph. *

*

* An account can only be the master account for one behavior graph within a Region. If the same account calls * CreateGraph with the same master account, it always returns the same behavior graph ARN. It does not * create a new behavior graph. *

* * @param createGraphRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the CreateGraph operation returned by the service. * @sample AmazonDetectiveAsyncHandler.CreateGraph * @see AWS API * Documentation */ java.util.concurrent.Future createGraphAsync(CreateGraphRequest createGraphRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Sends a request to invite the specified AWS accounts to be member accounts in the behavior graph. This operation * can only be called by the master account for a behavior graph. *

*

* CreateMembers verifies the accounts and then sends invitations to the verified accounts. *

*

* The request provides the behavior graph ARN and the list of accounts to invite. *

*

* The response separates the requested accounts into two lists: *

*
    *
  • *

    * The accounts that CreateMembers was able to start the verification for. This list includes member * accounts that are being verified, that have passed verification and are being sent an invitation, and that have * failed verification. *

    *
  • *
  • *

    * The accounts that CreateMembers was unable to process. This list includes accounts that were already * invited to be member accounts in the behavior graph. *

    *
  • *
* * @param createMembersRequest * @return A Java Future containing the result of the CreateMembers operation returned by the service. * @sample AmazonDetectiveAsync.CreateMembers * @see AWS API * Documentation */ java.util.concurrent.Future createMembersAsync(CreateMembersRequest createMembersRequest); /** *

* Sends a request to invite the specified AWS accounts to be member accounts in the behavior graph. This operation * can only be called by the master account for a behavior graph. *

*

* CreateMembers verifies the accounts and then sends invitations to the verified accounts. *

*

* The request provides the behavior graph ARN and the list of accounts to invite. *

*

* The response separates the requested accounts into two lists: *

*
    *
  • *

    * The accounts that CreateMembers was able to start the verification for. This list includes member * accounts that are being verified, that have passed verification and are being sent an invitation, and that have * failed verification. *

    *
  • *
  • *

    * The accounts that CreateMembers was unable to process. This list includes accounts that were already * invited to be member accounts in the behavior graph. *

    *
  • *
* * @param createMembersRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the CreateMembers operation returned by the service. * @sample AmazonDetectiveAsyncHandler.CreateMembers * @see AWS API * Documentation */ java.util.concurrent.Future createMembersAsync(CreateMembersRequest createMembersRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Disables the specified behavior graph and queues it to be deleted. This operation removes the graph from each * member account's list of behavior graphs. *

*

* DeleteGraph can only be called by the master account for a behavior graph. *

* * @param deleteGraphRequest * @return A Java Future containing the result of the DeleteGraph operation returned by the service. * @sample AmazonDetectiveAsync.DeleteGraph * @see AWS API * Documentation */ java.util.concurrent.Future deleteGraphAsync(DeleteGraphRequest deleteGraphRequest); /** *

* Disables the specified behavior graph and queues it to be deleted. This operation removes the graph from each * member account's list of behavior graphs. *

*

* DeleteGraph can only be called by the master account for a behavior graph. *

* * @param deleteGraphRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DeleteGraph operation returned by the service. * @sample AmazonDetectiveAsyncHandler.DeleteGraph * @see AWS API * Documentation */ java.util.concurrent.Future deleteGraphAsync(DeleteGraphRequest deleteGraphRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Deletes one or more member accounts from the master account behavior graph. This operation can only be called by * a Detective master account. That account cannot use DeleteMembers to delete their own account from * the behavior graph. To disable a behavior graph, the master account uses the DeleteGraph API method. *

* * @param deleteMembersRequest * @return A Java Future containing the result of the DeleteMembers operation returned by the service. * @sample AmazonDetectiveAsync.DeleteMembers * @see AWS API * Documentation */ java.util.concurrent.Future deleteMembersAsync(DeleteMembersRequest deleteMembersRequest); /** *

* Deletes one or more member accounts from the master account behavior graph. This operation can only be called by * a Detective master account. That account cannot use DeleteMembers to delete their own account from * the behavior graph. To disable a behavior graph, the master account uses the DeleteGraph API method. *

* * @param deleteMembersRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DeleteMembers operation returned by the service. * @sample AmazonDetectiveAsyncHandler.DeleteMembers * @see AWS API * Documentation */ java.util.concurrent.Future deleteMembersAsync(DeleteMembersRequest deleteMembersRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Removes the member account from the specified behavior graph. This operation can only be called by a member * account that has the ENABLED status. *

* * @param disassociateMembershipRequest * @return A Java Future containing the result of the DisassociateMembership operation returned by the service. * @sample AmazonDetectiveAsync.DisassociateMembership * @see AWS API Documentation */ java.util.concurrent.Future disassociateMembershipAsync(DisassociateMembershipRequest disassociateMembershipRequest); /** *

* Removes the member account from the specified behavior graph. This operation can only be called by a member * account that has the ENABLED status. *

* * @param disassociateMembershipRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DisassociateMembership operation returned by the service. * @sample AmazonDetectiveAsyncHandler.DisassociateMembership * @see AWS API Documentation */ java.util.concurrent.Future disassociateMembershipAsync(DisassociateMembershipRequest disassociateMembershipRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Returns the membership details for specified member accounts for a behavior graph. *

* * @param getMembersRequest * @return A Java Future containing the result of the GetMembers operation returned by the service. * @sample AmazonDetectiveAsync.GetMembers * @see AWS API * Documentation */ java.util.concurrent.Future getMembersAsync(GetMembersRequest getMembersRequest); /** *

* Returns the membership details for specified member accounts for a behavior graph. *

* * @param getMembersRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetMembers operation returned by the service. * @sample AmazonDetectiveAsyncHandler.GetMembers * @see AWS API * Documentation */ java.util.concurrent.Future getMembersAsync(GetMembersRequest getMembersRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Returns the list of behavior graphs that the calling account is a master of. This operation can only be called by * a master account. *

*

* Because an account can currently only be the master of one behavior graph within a Region, the results always * contain a single graph. *

* * @param listGraphsRequest * @return A Java Future containing the result of the ListGraphs operation returned by the service. * @sample AmazonDetectiveAsync.ListGraphs * @see AWS API * Documentation */ java.util.concurrent.Future listGraphsAsync(ListGraphsRequest listGraphsRequest); /** *

* Returns the list of behavior graphs that the calling account is a master of. This operation can only be called by * a master account. *

*

* Because an account can currently only be the master of one behavior graph within a Region, the results always * contain a single graph. *

* * @param listGraphsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListGraphs operation returned by the service. * @sample AmazonDetectiveAsyncHandler.ListGraphs * @see AWS API * Documentation */ java.util.concurrent.Future listGraphsAsync(ListGraphsRequest listGraphsRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Retrieves the list of open and accepted behavior graph invitations for the member account. This operation can * only be called by a member account. *

*

* Open invitations are invitations that the member account has not responded to. *

*

* The results do not include behavior graphs for which the member account declined the invitation. The results also * do not include behavior graphs that the member account resigned from or was removed from. *

* * @param listInvitationsRequest * @return A Java Future containing the result of the ListInvitations operation returned by the service. * @sample AmazonDetectiveAsync.ListInvitations * @see AWS API * Documentation */ java.util.concurrent.Future listInvitationsAsync(ListInvitationsRequest listInvitationsRequest); /** *

* Retrieves the list of open and accepted behavior graph invitations for the member account. This operation can * only be called by a member account. *

*

* Open invitations are invitations that the member account has not responded to. *

*

* The results do not include behavior graphs for which the member account declined the invitation. The results also * do not include behavior graphs that the member account resigned from or was removed from. *

* * @param listInvitationsRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListInvitations operation returned by the service. * @sample AmazonDetectiveAsyncHandler.ListInvitations * @see AWS API * Documentation */ java.util.concurrent.Future listInvitationsAsync(ListInvitationsRequest listInvitationsRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Retrieves the list of member accounts for a behavior graph. Does not return member accounts that were removed * from the behavior graph. *

* * @param listMembersRequest * @return A Java Future containing the result of the ListMembers operation returned by the service. * @sample AmazonDetectiveAsync.ListMembers * @see AWS API * Documentation */ java.util.concurrent.Future listMembersAsync(ListMembersRequest listMembersRequest); /** *

* Retrieves the list of member accounts for a behavior graph. Does not return member accounts that were removed * from the behavior graph. *

* * @param listMembersRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the ListMembers operation returned by the service. * @sample AmazonDetectiveAsyncHandler.ListMembers * @see AWS API * Documentation */ java.util.concurrent.Future listMembersAsync(ListMembersRequest listMembersRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Rejects an invitation to contribute the account data to a behavior graph. This operation must be called by a * member account that has the INVITED status. *

* * @param rejectInvitationRequest * @return A Java Future containing the result of the RejectInvitation operation returned by the service. * @sample AmazonDetectiveAsync.RejectInvitation * @see AWS API * Documentation */ java.util.concurrent.Future rejectInvitationAsync(RejectInvitationRequest rejectInvitationRequest); /** *

* Rejects an invitation to contribute the account data to a behavior graph. This operation must be called by a * member account that has the INVITED status. *

* * @param rejectInvitationRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the RejectInvitation operation returned by the service. * @sample AmazonDetectiveAsyncHandler.RejectInvitation * @see AWS API * Documentation */ java.util.concurrent.Future rejectInvitationAsync(RejectInvitationRequest rejectInvitationRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* Sends a request to enable data ingest for a member account that has a status of * ACCEPTED_BUT_DISABLED. *

*

* For valid member accounts, the status is updated as follows. *

*
    *
  • *

    * If Detective enabled the member account, then the new status is ENABLED. *

    *
  • *
  • *

    * If Detective cannot enable the member account, the status remains ACCEPTED_BUT_DISABLED. *

    *
  • *
* * @param startMonitoringMemberRequest * @return A Java Future containing the result of the StartMonitoringMember operation returned by the service. * @sample AmazonDetectiveAsync.StartMonitoringMember * @see AWS API Documentation */ java.util.concurrent.Future startMonitoringMemberAsync(StartMonitoringMemberRequest startMonitoringMemberRequest); /** *

* Sends a request to enable data ingest for a member account that has a status of * ACCEPTED_BUT_DISABLED. *

*

* For valid member accounts, the status is updated as follows. *

*
    *
  • *

    * If Detective enabled the member account, then the new status is ENABLED. *

    *
  • *
  • *

    * If Detective cannot enable the member account, the status remains ACCEPTED_BUT_DISABLED. *

    *
  • *
* * @param startMonitoringMemberRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the StartMonitoringMember operation returned by the service. * @sample AmazonDetectiveAsyncHandler.StartMonitoringMember * @see AWS API Documentation */ java.util.concurrent.Future startMonitoringMemberAsync(StartMonitoringMemberRequest startMonitoringMemberRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy