1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609 |
- // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
- package macie
- import (
- "fmt"
- "github.com/aws/aws-sdk-go/aws"
- "github.com/aws/aws-sdk-go/aws/awsutil"
- "github.com/aws/aws-sdk-go/aws/request"
- "github.com/aws/aws-sdk-go/private/protocol"
- "github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
- )
- const opAssociateMemberAccount = "AssociateMemberAccount"
- // AssociateMemberAccountRequest generates a "aws/request.Request" representing the
- // client's request for the AssociateMemberAccount operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See AssociateMemberAccount for more information on using the AssociateMemberAccount
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the AssociateMemberAccountRequest method.
- // req, resp := client.AssociateMemberAccountRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateMemberAccount
- func (c *Macie) AssociateMemberAccountRequest(input *AssociateMemberAccountInput) (req *request.Request, output *AssociateMemberAccountOutput) {
- op := &request.Operation{
- Name: opAssociateMemberAccount,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &AssociateMemberAccountInput{}
- }
- output = &AssociateMemberAccountOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // AssociateMemberAccount API operation for Amazon Macie.
- //
- // Associates a specified AWS account with Amazon Macie as a member account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation AssociateMemberAccount for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeLimitExceededException "LimitExceededException"
- // The request was rejected because it attempted to create resources beyond
- // the current AWS account limits. The error code describes the limit exceeded.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateMemberAccount
- func (c *Macie) AssociateMemberAccount(input *AssociateMemberAccountInput) (*AssociateMemberAccountOutput, error) {
- req, out := c.AssociateMemberAccountRequest(input)
- return out, req.Send()
- }
- // AssociateMemberAccountWithContext is the same as AssociateMemberAccount with the addition of
- // the ability to pass a context and additional request options.
- //
- // See AssociateMemberAccount for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) AssociateMemberAccountWithContext(ctx aws.Context, input *AssociateMemberAccountInput, opts ...request.Option) (*AssociateMemberAccountOutput, error) {
- req, out := c.AssociateMemberAccountRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opAssociateS3Resources = "AssociateS3Resources"
- // AssociateS3ResourcesRequest generates a "aws/request.Request" representing the
- // client's request for the AssociateS3Resources operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See AssociateS3Resources for more information on using the AssociateS3Resources
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the AssociateS3ResourcesRequest method.
- // req, resp := client.AssociateS3ResourcesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateS3Resources
- func (c *Macie) AssociateS3ResourcesRequest(input *AssociateS3ResourcesInput) (req *request.Request, output *AssociateS3ResourcesOutput) {
- op := &request.Operation{
- Name: opAssociateS3Resources,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &AssociateS3ResourcesInput{}
- }
- output = &AssociateS3ResourcesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // AssociateS3Resources API operation for Amazon Macie.
- //
- // Associates specified S3 resources with Amazon Macie for monitoring and data
- // classification. If memberAccountId isn't specified, the action associates
- // specified S3 resources with Macie for the current master account. If memberAccountId
- // is specified, the action associates specified S3 resources with Macie for
- // the specified member account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation AssociateS3Resources for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeAccessDeniedException "AccessDeniedException"
- // You do not have required permissions to access the requested resource.
- //
- // * ErrCodeLimitExceededException "LimitExceededException"
- // The request was rejected because it attempted to create resources beyond
- // the current AWS account limits. The error code describes the limit exceeded.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/AssociateS3Resources
- func (c *Macie) AssociateS3Resources(input *AssociateS3ResourcesInput) (*AssociateS3ResourcesOutput, error) {
- req, out := c.AssociateS3ResourcesRequest(input)
- return out, req.Send()
- }
- // AssociateS3ResourcesWithContext is the same as AssociateS3Resources with the addition of
- // the ability to pass a context and additional request options.
- //
- // See AssociateS3Resources for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) AssociateS3ResourcesWithContext(ctx aws.Context, input *AssociateS3ResourcesInput, opts ...request.Option) (*AssociateS3ResourcesOutput, error) {
- req, out := c.AssociateS3ResourcesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDisassociateMemberAccount = "DisassociateMemberAccount"
- // DisassociateMemberAccountRequest generates a "aws/request.Request" representing the
- // client's request for the DisassociateMemberAccount operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DisassociateMemberAccount for more information on using the DisassociateMemberAccount
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DisassociateMemberAccountRequest method.
- // req, resp := client.DisassociateMemberAccountRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateMemberAccount
- func (c *Macie) DisassociateMemberAccountRequest(input *DisassociateMemberAccountInput) (req *request.Request, output *DisassociateMemberAccountOutput) {
- op := &request.Operation{
- Name: opDisassociateMemberAccount,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DisassociateMemberAccountInput{}
- }
- output = &DisassociateMemberAccountOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DisassociateMemberAccount API operation for Amazon Macie.
- //
- // Removes the specified member account from Amazon Macie.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation DisassociateMemberAccount for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateMemberAccount
- func (c *Macie) DisassociateMemberAccount(input *DisassociateMemberAccountInput) (*DisassociateMemberAccountOutput, error) {
- req, out := c.DisassociateMemberAccountRequest(input)
- return out, req.Send()
- }
- // DisassociateMemberAccountWithContext is the same as DisassociateMemberAccount with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DisassociateMemberAccount for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) DisassociateMemberAccountWithContext(ctx aws.Context, input *DisassociateMemberAccountInput, opts ...request.Option) (*DisassociateMemberAccountOutput, error) {
- req, out := c.DisassociateMemberAccountRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDisassociateS3Resources = "DisassociateS3Resources"
- // DisassociateS3ResourcesRequest generates a "aws/request.Request" representing the
- // client's request for the DisassociateS3Resources operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DisassociateS3Resources for more information on using the DisassociateS3Resources
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DisassociateS3ResourcesRequest method.
- // req, resp := client.DisassociateS3ResourcesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateS3Resources
- func (c *Macie) DisassociateS3ResourcesRequest(input *DisassociateS3ResourcesInput) (req *request.Request, output *DisassociateS3ResourcesOutput) {
- op := &request.Operation{
- Name: opDisassociateS3Resources,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DisassociateS3ResourcesInput{}
- }
- output = &DisassociateS3ResourcesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // DisassociateS3Resources API operation for Amazon Macie.
- //
- // Removes specified S3 resources from being monitored by Amazon Macie. If memberAccountId
- // isn't specified, the action removes specified S3 resources from Macie for
- // the current master account. If memberAccountId is specified, the action removes
- // specified S3 resources from Macie for the specified member account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation DisassociateS3Resources for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeAccessDeniedException "AccessDeniedException"
- // You do not have required permissions to access the requested resource.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/DisassociateS3Resources
- func (c *Macie) DisassociateS3Resources(input *DisassociateS3ResourcesInput) (*DisassociateS3ResourcesOutput, error) {
- req, out := c.DisassociateS3ResourcesRequest(input)
- return out, req.Send()
- }
- // DisassociateS3ResourcesWithContext is the same as DisassociateS3Resources with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DisassociateS3Resources for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) DisassociateS3ResourcesWithContext(ctx aws.Context, input *DisassociateS3ResourcesInput, opts ...request.Option) (*DisassociateS3ResourcesOutput, error) {
- req, out := c.DisassociateS3ResourcesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListMemberAccounts = "ListMemberAccounts"
- // ListMemberAccountsRequest generates a "aws/request.Request" representing the
- // client's request for the ListMemberAccounts operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListMemberAccounts for more information on using the ListMemberAccounts
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListMemberAccountsRequest method.
- // req, resp := client.ListMemberAccountsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListMemberAccounts
- func (c *Macie) ListMemberAccountsRequest(input *ListMemberAccountsInput) (req *request.Request, output *ListMemberAccountsOutput) {
- op := &request.Operation{
- Name: opListMemberAccounts,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"nextToken"},
- OutputTokens: []string{"nextToken"},
- LimitToken: "maxResults",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &ListMemberAccountsInput{}
- }
- output = &ListMemberAccountsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListMemberAccounts API operation for Amazon Macie.
- //
- // Lists all Amazon Macie member accounts for the current Amazon Macie master
- // account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation ListMemberAccounts for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListMemberAccounts
- func (c *Macie) ListMemberAccounts(input *ListMemberAccountsInput) (*ListMemberAccountsOutput, error) {
- req, out := c.ListMemberAccountsRequest(input)
- return out, req.Send()
- }
- // ListMemberAccountsWithContext is the same as ListMemberAccounts with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListMemberAccounts for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) ListMemberAccountsWithContext(ctx aws.Context, input *ListMemberAccountsInput, opts ...request.Option) (*ListMemberAccountsOutput, error) {
- req, out := c.ListMemberAccountsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListMemberAccountsPages iterates over the pages of a ListMemberAccounts operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListMemberAccounts method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListMemberAccounts operation.
- // pageNum := 0
- // err := client.ListMemberAccountsPages(params,
- // func(page *ListMemberAccountsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Macie) ListMemberAccountsPages(input *ListMemberAccountsInput, fn func(*ListMemberAccountsOutput, bool) bool) error {
- return c.ListMemberAccountsPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListMemberAccountsPagesWithContext same as ListMemberAccountsPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) ListMemberAccountsPagesWithContext(ctx aws.Context, input *ListMemberAccountsInput, fn func(*ListMemberAccountsOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListMemberAccountsInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListMemberAccountsRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListMemberAccountsOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opListS3Resources = "ListS3Resources"
- // ListS3ResourcesRequest generates a "aws/request.Request" representing the
- // client's request for the ListS3Resources operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListS3Resources for more information on using the ListS3Resources
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListS3ResourcesRequest method.
- // req, resp := client.ListS3ResourcesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListS3Resources
- func (c *Macie) ListS3ResourcesRequest(input *ListS3ResourcesInput) (req *request.Request, output *ListS3ResourcesOutput) {
- op := &request.Operation{
- Name: opListS3Resources,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"nextToken"},
- OutputTokens: []string{"nextToken"},
- LimitToken: "maxResults",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &ListS3ResourcesInput{}
- }
- output = &ListS3ResourcesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListS3Resources API operation for Amazon Macie.
- //
- // Lists all the S3 resources associated with Amazon Macie. If memberAccountId
- // isn't specified, the action lists the S3 resources associated with Amazon
- // Macie for the current master account. If memberAccountId is specified, the
- // action lists the S3 resources associated with Amazon Macie for the specified
- // member account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation ListS3Resources for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeAccessDeniedException "AccessDeniedException"
- // You do not have required permissions to access the requested resource.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/ListS3Resources
- func (c *Macie) ListS3Resources(input *ListS3ResourcesInput) (*ListS3ResourcesOutput, error) {
- req, out := c.ListS3ResourcesRequest(input)
- return out, req.Send()
- }
- // ListS3ResourcesWithContext is the same as ListS3Resources with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListS3Resources for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) ListS3ResourcesWithContext(ctx aws.Context, input *ListS3ResourcesInput, opts ...request.Option) (*ListS3ResourcesOutput, error) {
- req, out := c.ListS3ResourcesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListS3ResourcesPages iterates over the pages of a ListS3Resources operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListS3Resources method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListS3Resources operation.
- // pageNum := 0
- // err := client.ListS3ResourcesPages(params,
- // func(page *ListS3ResourcesOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Macie) ListS3ResourcesPages(input *ListS3ResourcesInput, fn func(*ListS3ResourcesOutput, bool) bool) error {
- return c.ListS3ResourcesPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListS3ResourcesPagesWithContext same as ListS3ResourcesPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) ListS3ResourcesPagesWithContext(ctx aws.Context, input *ListS3ResourcesInput, fn func(*ListS3ResourcesOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListS3ResourcesInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListS3ResourcesRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListS3ResourcesOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opUpdateS3Resources = "UpdateS3Resources"
- // UpdateS3ResourcesRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateS3Resources operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateS3Resources for more information on using the UpdateS3Resources
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateS3ResourcesRequest method.
- // req, resp := client.UpdateS3ResourcesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/UpdateS3Resources
- func (c *Macie) UpdateS3ResourcesRequest(input *UpdateS3ResourcesInput) (req *request.Request, output *UpdateS3ResourcesOutput) {
- op := &request.Operation{
- Name: opUpdateS3Resources,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &UpdateS3ResourcesInput{}
- }
- output = &UpdateS3ResourcesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateS3Resources API operation for Amazon Macie.
- //
- // Updates the classification types for the specified S3 resources. If memberAccountId
- // isn't specified, the action updates the classification types of the S3 resources
- // associated with Amazon Macie for the current master account. If memberAccountId
- // is specified, the action updates the classification types of the S3 resources
- // associated with Amazon Macie for the specified member account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Macie's
- // API operation UpdateS3Resources for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidInputException "InvalidInputException"
- // The request was rejected because an invalid or out-of-range value was supplied
- // for an input parameter.
- //
- // * ErrCodeAccessDeniedException "AccessDeniedException"
- // You do not have required permissions to access the requested resource.
- //
- // * ErrCodeInternalException "InternalException"
- // Internal server error.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/macie-2017-12-19/UpdateS3Resources
- func (c *Macie) UpdateS3Resources(input *UpdateS3ResourcesInput) (*UpdateS3ResourcesOutput, error) {
- req, out := c.UpdateS3ResourcesRequest(input)
- return out, req.Send()
- }
- // UpdateS3ResourcesWithContext is the same as UpdateS3Resources with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateS3Resources for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *Macie) UpdateS3ResourcesWithContext(ctx aws.Context, input *UpdateS3ResourcesInput, opts ...request.Option) (*UpdateS3ResourcesOutput, error) {
- req, out := c.UpdateS3ResourcesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- type AssociateMemberAccountInput struct {
- _ struct{} `type:"structure"`
- // The ID of the AWS account that you want to associate with Amazon Macie as
- // a member account.
- //
- // MemberAccountId is a required field
- MemberAccountId *string `locationName:"memberAccountId" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s AssociateMemberAccountInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AssociateMemberAccountInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AssociateMemberAccountInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AssociateMemberAccountInput"}
- if s.MemberAccountId == nil {
- invalidParams.Add(request.NewErrParamRequired("MemberAccountId"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *AssociateMemberAccountInput) SetMemberAccountId(v string) *AssociateMemberAccountInput {
- s.MemberAccountId = &v
- return s
- }
- type AssociateMemberAccountOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s AssociateMemberAccountOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AssociateMemberAccountOutput) GoString() string {
- return s.String()
- }
- type AssociateS3ResourcesInput struct {
- _ struct{} `type:"structure"`
- // The ID of the Amazon Macie member account whose resources you want to associate
- // with Macie.
- MemberAccountId *string `locationName:"memberAccountId" type:"string"`
- // The S3 resources that you want to associate with Amazon Macie for monitoring
- // and data classification.
- //
- // S3Resources is a required field
- S3Resources []*S3ResourceClassification `locationName:"s3Resources" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s AssociateS3ResourcesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AssociateS3ResourcesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AssociateS3ResourcesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AssociateS3ResourcesInput"}
- if s.S3Resources == nil {
- invalidParams.Add(request.NewErrParamRequired("S3Resources"))
- }
- if s.S3Resources != nil {
- for i, v := range s.S3Resources {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3Resources", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *AssociateS3ResourcesInput) SetMemberAccountId(v string) *AssociateS3ResourcesInput {
- s.MemberAccountId = &v
- return s
- }
- // SetS3Resources sets the S3Resources field's value.
- func (s *AssociateS3ResourcesInput) SetS3Resources(v []*S3ResourceClassification) *AssociateS3ResourcesInput {
- s.S3Resources = v
- return s
- }
- type AssociateS3ResourcesOutput struct {
- _ struct{} `type:"structure"`
- // S3 resources that couldn't be associated with Amazon Macie. An error code
- // and an error message are provided for each failed item.
- FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" type:"list"`
- }
- // String returns the string representation
- func (s AssociateS3ResourcesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AssociateS3ResourcesOutput) GoString() string {
- return s.String()
- }
- // SetFailedS3Resources sets the FailedS3Resources field's value.
- func (s *AssociateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *AssociateS3ResourcesOutput {
- s.FailedS3Resources = v
- return s
- }
- // The classification type that Amazon Macie applies to the associated S3 resources.
- type ClassificationType struct {
- _ struct{} `type:"structure"`
- // A continuous classification of the objects that are added to a specified
- // S3 bucket. Amazon Macie begins performing continuous classification after
- // a bucket is successfully associated with Amazon Macie.
- //
- // Continuous is a required field
- Continuous *string `locationName:"continuous" type:"string" required:"true" enum:"S3ContinuousClassificationType"`
- // A one-time classification of all of the existing objects in a specified S3
- // bucket.
- //
- // OneTime is a required field
- OneTime *string `locationName:"oneTime" type:"string" required:"true" enum:"S3OneTimeClassificationType"`
- }
- // String returns the string representation
- func (s ClassificationType) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClassificationType) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ClassificationType) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ClassificationType"}
- if s.Continuous == nil {
- invalidParams.Add(request.NewErrParamRequired("Continuous"))
- }
- if s.OneTime == nil {
- invalidParams.Add(request.NewErrParamRequired("OneTime"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetContinuous sets the Continuous field's value.
- func (s *ClassificationType) SetContinuous(v string) *ClassificationType {
- s.Continuous = &v
- return s
- }
- // SetOneTime sets the OneTime field's value.
- func (s *ClassificationType) SetOneTime(v string) *ClassificationType {
- s.OneTime = &v
- return s
- }
- // The classification type that Amazon Macie applies to the associated S3 resources.
- // At least one of the classification types (oneTime or continuous) must be
- // specified.
- type ClassificationTypeUpdate struct {
- _ struct{} `type:"structure"`
- // A continuous classification of the objects that are added to a specified
- // S3 bucket. Amazon Macie begins performing continuous classification after
- // a bucket is successfully associated with Amazon Macie.
- Continuous *string `locationName:"continuous" type:"string" enum:"S3ContinuousClassificationType"`
- // A one-time classification of all of the existing objects in a specified S3
- // bucket.
- OneTime *string `locationName:"oneTime" type:"string" enum:"S3OneTimeClassificationType"`
- }
- // String returns the string representation
- func (s ClassificationTypeUpdate) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClassificationTypeUpdate) GoString() string {
- return s.String()
- }
- // SetContinuous sets the Continuous field's value.
- func (s *ClassificationTypeUpdate) SetContinuous(v string) *ClassificationTypeUpdate {
- s.Continuous = &v
- return s
- }
- // SetOneTime sets the OneTime field's value.
- func (s *ClassificationTypeUpdate) SetOneTime(v string) *ClassificationTypeUpdate {
- s.OneTime = &v
- return s
- }
- type DisassociateMemberAccountInput struct {
- _ struct{} `type:"structure"`
- // The ID of the member account that you want to remove from Amazon Macie.
- //
- // MemberAccountId is a required field
- MemberAccountId *string `locationName:"memberAccountId" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DisassociateMemberAccountInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisassociateMemberAccountInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DisassociateMemberAccountInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DisassociateMemberAccountInput"}
- if s.MemberAccountId == nil {
- invalidParams.Add(request.NewErrParamRequired("MemberAccountId"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *DisassociateMemberAccountInput) SetMemberAccountId(v string) *DisassociateMemberAccountInput {
- s.MemberAccountId = &v
- return s
- }
- type DisassociateMemberAccountOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DisassociateMemberAccountOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisassociateMemberAccountOutput) GoString() string {
- return s.String()
- }
- type DisassociateS3ResourcesInput struct {
- _ struct{} `type:"structure"`
- // The S3 resources (buckets or prefixes) that you want to remove from being
- // monitored and classified by Amazon Macie.
- //
- // AssociatedS3Resources is a required field
- AssociatedS3Resources []*S3Resource `locationName:"associatedS3Resources" type:"list" required:"true"`
- // The ID of the Amazon Macie member account whose resources you want to remove
- // from being monitored by Amazon Macie.
- MemberAccountId *string `locationName:"memberAccountId" type:"string"`
- }
- // String returns the string representation
- func (s DisassociateS3ResourcesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisassociateS3ResourcesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DisassociateS3ResourcesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DisassociateS3ResourcesInput"}
- if s.AssociatedS3Resources == nil {
- invalidParams.Add(request.NewErrParamRequired("AssociatedS3Resources"))
- }
- if s.AssociatedS3Resources != nil {
- for i, v := range s.AssociatedS3Resources {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AssociatedS3Resources", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetAssociatedS3Resources sets the AssociatedS3Resources field's value.
- func (s *DisassociateS3ResourcesInput) SetAssociatedS3Resources(v []*S3Resource) *DisassociateS3ResourcesInput {
- s.AssociatedS3Resources = v
- return s
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *DisassociateS3ResourcesInput) SetMemberAccountId(v string) *DisassociateS3ResourcesInput {
- s.MemberAccountId = &v
- return s
- }
- type DisassociateS3ResourcesOutput struct {
- _ struct{} `type:"structure"`
- // S3 resources that couldn't be removed from being monitored and classified
- // by Amazon Macie. An error code and an error message are provided for each
- // failed item.
- FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" type:"list"`
- }
- // String returns the string representation
- func (s DisassociateS3ResourcesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisassociateS3ResourcesOutput) GoString() string {
- return s.String()
- }
- // SetFailedS3Resources sets the FailedS3Resources field's value.
- func (s *DisassociateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *DisassociateS3ResourcesOutput {
- s.FailedS3Resources = v
- return s
- }
- // Includes details about the failed S3 resources.
- type FailedS3Resource struct {
- _ struct{} `type:"structure"`
- // The status code of a failed item.
- ErrorCode *string `locationName:"errorCode" type:"string"`
- // The error message of a failed item.
- ErrorMessage *string `locationName:"errorMessage" type:"string"`
- // The failed S3 resources.
- FailedItem *S3Resource `locationName:"failedItem" type:"structure"`
- }
- // String returns the string representation
- func (s FailedS3Resource) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FailedS3Resource) GoString() string {
- return s.String()
- }
- // SetErrorCode sets the ErrorCode field's value.
- func (s *FailedS3Resource) SetErrorCode(v string) *FailedS3Resource {
- s.ErrorCode = &v
- return s
- }
- // SetErrorMessage sets the ErrorMessage field's value.
- func (s *FailedS3Resource) SetErrorMessage(v string) *FailedS3Resource {
- s.ErrorMessage = &v
- return s
- }
- // SetFailedItem sets the FailedItem field's value.
- func (s *FailedS3Resource) SetFailedItem(v *S3Resource) *FailedS3Resource {
- s.FailedItem = v
- return s
- }
- type ListMemberAccountsInput struct {
- _ struct{} `type:"structure"`
- // Use this parameter to indicate the maximum number of items that you want
- // in the response. The default value is 250.
- MaxResults *int64 `locationName:"maxResults" type:"integer"`
- // Use this parameter when paginating results. Set the value of this parameter
- // to null on your first call to the ListMemberAccounts action. Subsequent calls
- // to the action fill nextToken in the request with the value of nextToken from
- // the previous response to continue listing data.
- NextToken *string `locationName:"nextToken" type:"string"`
- }
- // String returns the string representation
- func (s ListMemberAccountsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListMemberAccountsInput) GoString() string {
- return s.String()
- }
- // SetMaxResults sets the MaxResults field's value.
- func (s *ListMemberAccountsInput) SetMaxResults(v int64) *ListMemberAccountsInput {
- s.MaxResults = &v
- return s
- }
- // SetNextToken sets the NextToken field's value.
- func (s *ListMemberAccountsInput) SetNextToken(v string) *ListMemberAccountsInput {
- s.NextToken = &v
- return s
- }
- type ListMemberAccountsOutput struct {
- _ struct{} `type:"structure"`
- // A list of the Amazon Macie member accounts returned by the action. The current
- // master account is also included in this list.
- MemberAccounts []*MemberAccount `locationName:"memberAccounts" type:"list"`
- // When a response is generated, if there is more data to be listed, this parameter
- // is present in the response and contains the value to use for the nextToken
- // parameter in a subsequent pagination request. If there is no more data to
- // be listed, this parameter is set to null.
- NextToken *string `locationName:"nextToken" type:"string"`
- }
- // String returns the string representation
- func (s ListMemberAccountsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListMemberAccountsOutput) GoString() string {
- return s.String()
- }
- // SetMemberAccounts sets the MemberAccounts field's value.
- func (s *ListMemberAccountsOutput) SetMemberAccounts(v []*MemberAccount) *ListMemberAccountsOutput {
- s.MemberAccounts = v
- return s
- }
- // SetNextToken sets the NextToken field's value.
- func (s *ListMemberAccountsOutput) SetNextToken(v string) *ListMemberAccountsOutput {
- s.NextToken = &v
- return s
- }
- type ListS3ResourcesInput struct {
- _ struct{} `type:"structure"`
- // Use this parameter to indicate the maximum number of items that you want
- // in the response. The default value is 250.
- MaxResults *int64 `locationName:"maxResults" type:"integer"`
- // The Amazon Macie member account ID whose associated S3 resources you want
- // to list.
- MemberAccountId *string `locationName:"memberAccountId" type:"string"`
- // Use this parameter when paginating results. Set its value to null on your
- // first call to the ListS3Resources action. Subsequent calls to the action
- // fill nextToken in the request with the value of nextToken from the previous
- // response to continue listing data.
- NextToken *string `locationName:"nextToken" type:"string"`
- }
- // String returns the string representation
- func (s ListS3ResourcesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListS3ResourcesInput) GoString() string {
- return s.String()
- }
- // SetMaxResults sets the MaxResults field's value.
- func (s *ListS3ResourcesInput) SetMaxResults(v int64) *ListS3ResourcesInput {
- s.MaxResults = &v
- return s
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *ListS3ResourcesInput) SetMemberAccountId(v string) *ListS3ResourcesInput {
- s.MemberAccountId = &v
- return s
- }
- // SetNextToken sets the NextToken field's value.
- func (s *ListS3ResourcesInput) SetNextToken(v string) *ListS3ResourcesInput {
- s.NextToken = &v
- return s
- }
- type ListS3ResourcesOutput struct {
- _ struct{} `type:"structure"`
- // When a response is generated, if there is more data to be listed, this parameter
- // is present in the response and contains the value to use for the nextToken
- // parameter in a subsequent pagination request. If there is no more data to
- // be listed, this parameter is set to null.
- NextToken *string `locationName:"nextToken" type:"string"`
- // A list of the associated S3 resources returned by the action.
- S3Resources []*S3ResourceClassification `locationName:"s3Resources" type:"list"`
- }
- // String returns the string representation
- func (s ListS3ResourcesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListS3ResourcesOutput) GoString() string {
- return s.String()
- }
- // SetNextToken sets the NextToken field's value.
- func (s *ListS3ResourcesOutput) SetNextToken(v string) *ListS3ResourcesOutput {
- s.NextToken = &v
- return s
- }
- // SetS3Resources sets the S3Resources field's value.
- func (s *ListS3ResourcesOutput) SetS3Resources(v []*S3ResourceClassification) *ListS3ResourcesOutput {
- s.S3Resources = v
- return s
- }
- // Contains information about the Amazon Macie member account.
- type MemberAccount struct {
- _ struct{} `type:"structure"`
- // The AWS account ID of the Amazon Macie member account.
- AccountId *string `locationName:"accountId" type:"string"`
- }
- // String returns the string representation
- func (s MemberAccount) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s MemberAccount) GoString() string {
- return s.String()
- }
- // SetAccountId sets the AccountId field's value.
- func (s *MemberAccount) SetAccountId(v string) *MemberAccount {
- s.AccountId = &v
- return s
- }
- // Contains information about the S3 resource. This data type is used as a request
- // parameter in the DisassociateS3Resources action and can be used as a response
- // parameter in the AssociateS3Resources and UpdateS3Resources actions.
- type S3Resource struct {
- _ struct{} `type:"structure"`
- // The name of the S3 bucket.
- //
- // BucketName is a required field
- BucketName *string `locationName:"bucketName" type:"string" required:"true"`
- // The prefix of the S3 bucket.
- Prefix *string `locationName:"prefix" type:"string"`
- }
- // String returns the string representation
- func (s S3Resource) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s S3Resource) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *S3Resource) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "S3Resource"}
- if s.BucketName == nil {
- invalidParams.Add(request.NewErrParamRequired("BucketName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetBucketName sets the BucketName field's value.
- func (s *S3Resource) SetBucketName(v string) *S3Resource {
- s.BucketName = &v
- return s
- }
- // SetPrefix sets the Prefix field's value.
- func (s *S3Resource) SetPrefix(v string) *S3Resource {
- s.Prefix = &v
- return s
- }
- // The S3 resources that you want to associate with Amazon Macie for monitoring
- // and data classification. This data type is used as a request parameter in
- // the AssociateS3Resources action and a response parameter in the ListS3Resources
- // action.
- type S3ResourceClassification struct {
- _ struct{} `type:"structure"`
- // The name of the S3 bucket that you want to associate with Amazon Macie.
- //
- // BucketName is a required field
- BucketName *string `locationName:"bucketName" type:"string" required:"true"`
- // The classification type that you want to specify for the resource associated
- // with Amazon Macie.
- //
- // ClassificationType is a required field
- ClassificationType *ClassificationType `locationName:"classificationType" type:"structure" required:"true"`
- // The prefix of the S3 bucket that you want to associate with Amazon Macie.
- Prefix *string `locationName:"prefix" type:"string"`
- }
- // String returns the string representation
- func (s S3ResourceClassification) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s S3ResourceClassification) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *S3ResourceClassification) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "S3ResourceClassification"}
- if s.BucketName == nil {
- invalidParams.Add(request.NewErrParamRequired("BucketName"))
- }
- if s.ClassificationType == nil {
- invalidParams.Add(request.NewErrParamRequired("ClassificationType"))
- }
- if s.ClassificationType != nil {
- if err := s.ClassificationType.Validate(); err != nil {
- invalidParams.AddNested("ClassificationType", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetBucketName sets the BucketName field's value.
- func (s *S3ResourceClassification) SetBucketName(v string) *S3ResourceClassification {
- s.BucketName = &v
- return s
- }
- // SetClassificationType sets the ClassificationType field's value.
- func (s *S3ResourceClassification) SetClassificationType(v *ClassificationType) *S3ResourceClassification {
- s.ClassificationType = v
- return s
- }
- // SetPrefix sets the Prefix field's value.
- func (s *S3ResourceClassification) SetPrefix(v string) *S3ResourceClassification {
- s.Prefix = &v
- return s
- }
- // The S3 resources whose classification types you want to update. This data
- // type is used as a request parameter in the UpdateS3Resources action.
- type S3ResourceClassificationUpdate struct {
- _ struct{} `type:"structure"`
- // The name of the S3 bucket whose classification types you want to update.
- //
- // BucketName is a required field
- BucketName *string `locationName:"bucketName" type:"string" required:"true"`
- // The classification type that you want to update for the resource associated
- // with Amazon Macie.
- //
- // ClassificationTypeUpdate is a required field
- ClassificationTypeUpdate *ClassificationTypeUpdate `locationName:"classificationTypeUpdate" type:"structure" required:"true"`
- // The prefix of the S3 bucket whose classification types you want to update.
- Prefix *string `locationName:"prefix" type:"string"`
- }
- // String returns the string representation
- func (s S3ResourceClassificationUpdate) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s S3ResourceClassificationUpdate) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *S3ResourceClassificationUpdate) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "S3ResourceClassificationUpdate"}
- if s.BucketName == nil {
- invalidParams.Add(request.NewErrParamRequired("BucketName"))
- }
- if s.ClassificationTypeUpdate == nil {
- invalidParams.Add(request.NewErrParamRequired("ClassificationTypeUpdate"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetBucketName sets the BucketName field's value.
- func (s *S3ResourceClassificationUpdate) SetBucketName(v string) *S3ResourceClassificationUpdate {
- s.BucketName = &v
- return s
- }
- // SetClassificationTypeUpdate sets the ClassificationTypeUpdate field's value.
- func (s *S3ResourceClassificationUpdate) SetClassificationTypeUpdate(v *ClassificationTypeUpdate) *S3ResourceClassificationUpdate {
- s.ClassificationTypeUpdate = v
- return s
- }
- // SetPrefix sets the Prefix field's value.
- func (s *S3ResourceClassificationUpdate) SetPrefix(v string) *S3ResourceClassificationUpdate {
- s.Prefix = &v
- return s
- }
- type UpdateS3ResourcesInput struct {
- _ struct{} `type:"structure"`
- // The AWS ID of the Amazon Macie member account whose S3 resources' classification
- // types you want to update.
- MemberAccountId *string `locationName:"memberAccountId" type:"string"`
- // The S3 resources whose classification types you want to update.
- //
- // S3ResourcesUpdate is a required field
- S3ResourcesUpdate []*S3ResourceClassificationUpdate `locationName:"s3ResourcesUpdate" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s UpdateS3ResourcesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateS3ResourcesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateS3ResourcesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateS3ResourcesInput"}
- if s.S3ResourcesUpdate == nil {
- invalidParams.Add(request.NewErrParamRequired("S3ResourcesUpdate"))
- }
- if s.S3ResourcesUpdate != nil {
- for i, v := range s.S3ResourcesUpdate {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3ResourcesUpdate", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetMemberAccountId sets the MemberAccountId field's value.
- func (s *UpdateS3ResourcesInput) SetMemberAccountId(v string) *UpdateS3ResourcesInput {
- s.MemberAccountId = &v
- return s
- }
- // SetS3ResourcesUpdate sets the S3ResourcesUpdate field's value.
- func (s *UpdateS3ResourcesInput) SetS3ResourcesUpdate(v []*S3ResourceClassificationUpdate) *UpdateS3ResourcesInput {
- s.S3ResourcesUpdate = v
- return s
- }
- type UpdateS3ResourcesOutput struct {
- _ struct{} `type:"structure"`
- // The S3 resources whose classification types can't be updated. An error code
- // and an error message are provided for each failed item.
- FailedS3Resources []*FailedS3Resource `locationName:"failedS3Resources" type:"list"`
- }
- // String returns the string representation
- func (s UpdateS3ResourcesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateS3ResourcesOutput) GoString() string {
- return s.String()
- }
- // SetFailedS3Resources sets the FailedS3Resources field's value.
- func (s *UpdateS3ResourcesOutput) SetFailedS3Resources(v []*FailedS3Resource) *UpdateS3ResourcesOutput {
- s.FailedS3Resources = v
- return s
- }
- const (
- // S3ContinuousClassificationTypeFull is a S3ContinuousClassificationType enum value
- S3ContinuousClassificationTypeFull = "FULL"
- )
- const (
- // S3OneTimeClassificationTypeFull is a S3OneTimeClassificationType enum value
- S3OneTimeClassificationTypeFull = "FULL"
- // S3OneTimeClassificationTypeNone is a S3OneTimeClassificationType enum value
- S3OneTimeClassificationTypeNone = "NONE"
- )
|