| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165 |
- // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
- // Package configservice provides a client for AWS Config.
- package configservice
- import (
- "fmt"
- "time"
- "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 opDeleteConfigRule = "DeleteConfigRule"
- // DeleteConfigRuleRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteConfigRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteConfigRule method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteConfigRuleRequest method.
- // req, resp := client.DeleteConfigRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DeleteConfigRuleRequest(input *DeleteConfigRuleInput) (req *request.Request, output *DeleteConfigRuleOutput) {
- op := &request.Operation{
- Name: opDeleteConfigRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteConfigRuleInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteConfigRuleOutput{}
- req.Data = output
- return
- }
- // Deletes the specified AWS Config rule and all of its evaluation results.
- //
- // AWS Config sets the state of a rule to DELETING until the deletion is complete.
- // You cannot update a rule while it is in this state. If you make a PutConfigRule
- // or DeleteConfigRule request for the rule, you will receive a ResourceInUseException.
- //
- // You can check the state of a rule by using the DescribeConfigRules request.
- func (c *ConfigService) DeleteConfigRule(input *DeleteConfigRuleInput) (*DeleteConfigRuleOutput, error) {
- req, out := c.DeleteConfigRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteConfigurationRecorder = "DeleteConfigurationRecorder"
- // DeleteConfigurationRecorderRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteConfigurationRecorder operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteConfigurationRecorder method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteConfigurationRecorderRequest method.
- // req, resp := client.DeleteConfigurationRecorderRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DeleteConfigurationRecorderRequest(input *DeleteConfigurationRecorderInput) (req *request.Request, output *DeleteConfigurationRecorderOutput) {
- op := &request.Operation{
- Name: opDeleteConfigurationRecorder,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteConfigurationRecorderInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteConfigurationRecorderOutput{}
- req.Data = output
- return
- }
- // Deletes the configuration recorder.
- //
- // After the configuration recorder is deleted, AWS Config will not record
- // resource configuration changes until you create a new configuration recorder.
- //
- // This action does not delete the configuration information that was previously
- // recorded. You will be able to access the previously recorded information
- // by using the GetResourceConfigHistory action, but you will not be able to
- // access this information in the AWS Config console until you create a new
- // configuration recorder.
- func (c *ConfigService) DeleteConfigurationRecorder(input *DeleteConfigurationRecorderInput) (*DeleteConfigurationRecorderOutput, error) {
- req, out := c.DeleteConfigurationRecorderRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteDeliveryChannel = "DeleteDeliveryChannel"
- // DeleteDeliveryChannelRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteDeliveryChannel operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteDeliveryChannel method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteDeliveryChannelRequest method.
- // req, resp := client.DeleteDeliveryChannelRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DeleteDeliveryChannelRequest(input *DeleteDeliveryChannelInput) (req *request.Request, output *DeleteDeliveryChannelOutput) {
- op := &request.Operation{
- Name: opDeleteDeliveryChannel,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteDeliveryChannelInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteDeliveryChannelOutput{}
- req.Data = output
- return
- }
- // Deletes the delivery channel.
- //
- // Before you can delete the delivery channel, you must stop the configuration
- // recorder by using the StopConfigurationRecorder action.
- func (c *ConfigService) DeleteDeliveryChannel(input *DeleteDeliveryChannelInput) (*DeleteDeliveryChannelOutput, error) {
- req, out := c.DeleteDeliveryChannelRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteEvaluationResults = "DeleteEvaluationResults"
- // DeleteEvaluationResultsRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteEvaluationResults operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteEvaluationResults method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteEvaluationResultsRequest method.
- // req, resp := client.DeleteEvaluationResultsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DeleteEvaluationResultsRequest(input *DeleteEvaluationResultsInput) (req *request.Request, output *DeleteEvaluationResultsOutput) {
- op := &request.Operation{
- Name: opDeleteEvaluationResults,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteEvaluationResultsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteEvaluationResultsOutput{}
- req.Data = output
- return
- }
- // Deletes the evaluation results for the specified Config rule. You can specify
- // one Config rule per request. After you delete the evaluation results, you
- // can call the StartConfigRulesEvaluation API to start evaluating your AWS
- // resources against the rule.
- func (c *ConfigService) DeleteEvaluationResults(input *DeleteEvaluationResultsInput) (*DeleteEvaluationResultsOutput, error) {
- req, out := c.DeleteEvaluationResultsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeliverConfigSnapshot = "DeliverConfigSnapshot"
- // DeliverConfigSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the DeliverConfigSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeliverConfigSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeliverConfigSnapshotRequest method.
- // req, resp := client.DeliverConfigSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DeliverConfigSnapshotRequest(input *DeliverConfigSnapshotInput) (req *request.Request, output *DeliverConfigSnapshotOutput) {
- op := &request.Operation{
- Name: opDeliverConfigSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeliverConfigSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeliverConfigSnapshotOutput{}
- req.Data = output
- return
- }
- // Schedules delivery of a configuration snapshot to the Amazon S3 bucket in
- // the specified delivery channel. After the delivery has started, AWS Config
- // sends following notifications using an Amazon SNS topic that you have specified.
- //
- // Notification of starting the delivery. Notification of delivery completed,
- // if the delivery was successfully completed. Notification of delivery failure,
- // if the delivery failed to complete.
- func (c *ConfigService) DeliverConfigSnapshot(input *DeliverConfigSnapshotInput) (*DeliverConfigSnapshotOutput, error) {
- req, out := c.DeliverConfigSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeComplianceByConfigRule = "DescribeComplianceByConfigRule"
- // DescribeComplianceByConfigRuleRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeComplianceByConfigRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeComplianceByConfigRule method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeComplianceByConfigRuleRequest method.
- // req, resp := client.DescribeComplianceByConfigRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeComplianceByConfigRuleRequest(input *DescribeComplianceByConfigRuleInput) (req *request.Request, output *DescribeComplianceByConfigRuleOutput) {
- op := &request.Operation{
- Name: opDescribeComplianceByConfigRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeComplianceByConfigRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeComplianceByConfigRuleOutput{}
- req.Data = output
- return
- }
- // Indicates whether the specified AWS Config rules are compliant. If a rule
- // is noncompliant, this action returns the number of AWS resources that do
- // not comply with the rule.
- //
- // A rule is compliant if all of the evaluated resources comply with it, and
- // it is noncompliant if any of these resources do not comply.
- //
- // If AWS Config has no current evaluation results for the rule, it returns
- // INSUFFICIENT_DATA. This result might indicate one of the following conditions:
- //
- // AWS Config has never invoked an evaluation for the rule. To check whether
- // it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime
- // and LastFailedInvocationTime. The rule's AWS Lambda function is failing to
- // send evaluation results to AWS Config. Verify that the role that you assigned
- // to your configuration recorder includes the config:PutEvaluations permission.
- // If the rule is a custom rule, verify that the AWS Lambda execution role includes
- // the config:PutEvaluations permission. The rule's AWS Lambda function has
- // returned NOT_APPLICABLE for all evaluation results. This can occur if the
- // resources were deleted or removed from the rule's scope.
- func (c *ConfigService) DescribeComplianceByConfigRule(input *DescribeComplianceByConfigRuleInput) (*DescribeComplianceByConfigRuleOutput, error) {
- req, out := c.DescribeComplianceByConfigRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeComplianceByResource = "DescribeComplianceByResource"
- // DescribeComplianceByResourceRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeComplianceByResource operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeComplianceByResource method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeComplianceByResourceRequest method.
- // req, resp := client.DescribeComplianceByResourceRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeComplianceByResourceRequest(input *DescribeComplianceByResourceInput) (req *request.Request, output *DescribeComplianceByResourceOutput) {
- op := &request.Operation{
- Name: opDescribeComplianceByResource,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeComplianceByResourceInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeComplianceByResourceOutput{}
- req.Data = output
- return
- }
- // Indicates whether the specified AWS resources are compliant. If a resource
- // is noncompliant, this action returns the number of AWS Config rules that
- // the resource does not comply with.
- //
- // A resource is compliant if it complies with all the AWS Config rules that
- // evaluate it. It is noncompliant if it does not comply with one or more of
- // these rules.
- //
- // If AWS Config has no current evaluation results for the resource, it returns
- // INSUFFICIENT_DATA. This result might indicate one of the following conditions
- // about the rules that evaluate the resource:
- //
- // AWS Config has never invoked an evaluation for the rule. To check whether
- // it has, use the DescribeConfigRuleEvaluationStatus action to get the LastSuccessfulInvocationTime
- // and LastFailedInvocationTime. The rule's AWS Lambda function is failing to
- // send evaluation results to AWS Config. Verify that the role that you assigned
- // to your configuration recorder includes the config:PutEvaluations permission.
- // If the rule is a custom rule, verify that the AWS Lambda execution role includes
- // the config:PutEvaluations permission. The rule's AWS Lambda function has
- // returned NOT_APPLICABLE for all evaluation results. This can occur if the
- // resources were deleted or removed from the rule's scope.
- func (c *ConfigService) DescribeComplianceByResource(input *DescribeComplianceByResourceInput) (*DescribeComplianceByResourceOutput, error) {
- req, out := c.DescribeComplianceByResourceRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeConfigRuleEvaluationStatus = "DescribeConfigRuleEvaluationStatus"
- // DescribeConfigRuleEvaluationStatusRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeConfigRuleEvaluationStatus operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeConfigRuleEvaluationStatus method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeConfigRuleEvaluationStatusRequest method.
- // req, resp := client.DescribeConfigRuleEvaluationStatusRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeConfigRuleEvaluationStatusRequest(input *DescribeConfigRuleEvaluationStatusInput) (req *request.Request, output *DescribeConfigRuleEvaluationStatusOutput) {
- op := &request.Operation{
- Name: opDescribeConfigRuleEvaluationStatus,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeConfigRuleEvaluationStatusInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeConfigRuleEvaluationStatusOutput{}
- req.Data = output
- return
- }
- // Returns status information for each of your AWS managed Config rules. The
- // status includes information such as the last time AWS Config invoked the
- // rule, the last time AWS Config failed to invoke the rule, and the related
- // error for the last failure.
- func (c *ConfigService) DescribeConfigRuleEvaluationStatus(input *DescribeConfigRuleEvaluationStatusInput) (*DescribeConfigRuleEvaluationStatusOutput, error) {
- req, out := c.DescribeConfigRuleEvaluationStatusRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeConfigRules = "DescribeConfigRules"
- // DescribeConfigRulesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeConfigRules operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeConfigRules method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeConfigRulesRequest method.
- // req, resp := client.DescribeConfigRulesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeConfigRulesRequest(input *DescribeConfigRulesInput) (req *request.Request, output *DescribeConfigRulesOutput) {
- op := &request.Operation{
- Name: opDescribeConfigRules,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeConfigRulesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeConfigRulesOutput{}
- req.Data = output
- return
- }
- // Returns details about your AWS Config rules.
- func (c *ConfigService) DescribeConfigRules(input *DescribeConfigRulesInput) (*DescribeConfigRulesOutput, error) {
- req, out := c.DescribeConfigRulesRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeConfigurationRecorderStatus = "DescribeConfigurationRecorderStatus"
- // DescribeConfigurationRecorderStatusRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeConfigurationRecorderStatus operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeConfigurationRecorderStatus method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeConfigurationRecorderStatusRequest method.
- // req, resp := client.DescribeConfigurationRecorderStatusRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeConfigurationRecorderStatusRequest(input *DescribeConfigurationRecorderStatusInput) (req *request.Request, output *DescribeConfigurationRecorderStatusOutput) {
- op := &request.Operation{
- Name: opDescribeConfigurationRecorderStatus,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeConfigurationRecorderStatusInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeConfigurationRecorderStatusOutput{}
- req.Data = output
- return
- }
- // Returns the current status of the specified configuration recorder. If a
- // configuration recorder is not specified, this action returns the status of
- // all configuration recorder associated with the account.
- //
- // Currently, you can specify only one configuration recorder per account.
- func (c *ConfigService) DescribeConfigurationRecorderStatus(input *DescribeConfigurationRecorderStatusInput) (*DescribeConfigurationRecorderStatusOutput, error) {
- req, out := c.DescribeConfigurationRecorderStatusRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeConfigurationRecorders = "DescribeConfigurationRecorders"
- // DescribeConfigurationRecordersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeConfigurationRecorders operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeConfigurationRecorders method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeConfigurationRecordersRequest method.
- // req, resp := client.DescribeConfigurationRecordersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeConfigurationRecordersRequest(input *DescribeConfigurationRecordersInput) (req *request.Request, output *DescribeConfigurationRecordersOutput) {
- op := &request.Operation{
- Name: opDescribeConfigurationRecorders,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeConfigurationRecordersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeConfigurationRecordersOutput{}
- req.Data = output
- return
- }
- // Returns the name of one or more specified configuration recorders. If the
- // recorder name is not specified, this action returns the names of all the
- // configuration recorders associated with the account.
- //
- // Currently, you can specify only one configuration recorder per account.
- func (c *ConfigService) DescribeConfigurationRecorders(input *DescribeConfigurationRecordersInput) (*DescribeConfigurationRecordersOutput, error) {
- req, out := c.DescribeConfigurationRecordersRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeDeliveryChannelStatus = "DescribeDeliveryChannelStatus"
- // DescribeDeliveryChannelStatusRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeDeliveryChannelStatus operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeDeliveryChannelStatus method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeDeliveryChannelStatusRequest method.
- // req, resp := client.DescribeDeliveryChannelStatusRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeDeliveryChannelStatusRequest(input *DescribeDeliveryChannelStatusInput) (req *request.Request, output *DescribeDeliveryChannelStatusOutput) {
- op := &request.Operation{
- Name: opDescribeDeliveryChannelStatus,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeDeliveryChannelStatusInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeDeliveryChannelStatusOutput{}
- req.Data = output
- return
- }
- // Returns the current status of the specified delivery channel. If a delivery
- // channel is not specified, this action returns the current status of all delivery
- // channels associated with the account.
- //
- // Currently, you can specify only one delivery channel per account.
- func (c *ConfigService) DescribeDeliveryChannelStatus(input *DescribeDeliveryChannelStatusInput) (*DescribeDeliveryChannelStatusOutput, error) {
- req, out := c.DescribeDeliveryChannelStatusRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeDeliveryChannels = "DescribeDeliveryChannels"
- // DescribeDeliveryChannelsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeDeliveryChannels operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeDeliveryChannels method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeDeliveryChannelsRequest method.
- // req, resp := client.DescribeDeliveryChannelsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) DescribeDeliveryChannelsRequest(input *DescribeDeliveryChannelsInput) (req *request.Request, output *DescribeDeliveryChannelsOutput) {
- op := &request.Operation{
- Name: opDescribeDeliveryChannels,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeDeliveryChannelsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeDeliveryChannelsOutput{}
- req.Data = output
- return
- }
- // Returns details about the specified delivery channel. If a delivery channel
- // is not specified, this action returns the details of all delivery channels
- // associated with the account.
- //
- // Currently, you can specify only one delivery channel per account.
- func (c *ConfigService) DescribeDeliveryChannels(input *DescribeDeliveryChannelsInput) (*DescribeDeliveryChannelsOutput, error) {
- req, out := c.DescribeDeliveryChannelsRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetComplianceDetailsByConfigRule = "GetComplianceDetailsByConfigRule"
- // GetComplianceDetailsByConfigRuleRequest generates a "aws/request.Request" representing the
- // client's request for the GetComplianceDetailsByConfigRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetComplianceDetailsByConfigRule method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the GetComplianceDetailsByConfigRuleRequest method.
- // req, resp := client.GetComplianceDetailsByConfigRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) GetComplianceDetailsByConfigRuleRequest(input *GetComplianceDetailsByConfigRuleInput) (req *request.Request, output *GetComplianceDetailsByConfigRuleOutput) {
- op := &request.Operation{
- Name: opGetComplianceDetailsByConfigRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &GetComplianceDetailsByConfigRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetComplianceDetailsByConfigRuleOutput{}
- req.Data = output
- return
- }
- // Returns the evaluation results for the specified AWS Config rule. The results
- // indicate which AWS resources were evaluated by the rule, when each resource
- // was last evaluated, and whether each resource complies with the rule.
- func (c *ConfigService) GetComplianceDetailsByConfigRule(input *GetComplianceDetailsByConfigRuleInput) (*GetComplianceDetailsByConfigRuleOutput, error) {
- req, out := c.GetComplianceDetailsByConfigRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetComplianceDetailsByResource = "GetComplianceDetailsByResource"
- // GetComplianceDetailsByResourceRequest generates a "aws/request.Request" representing the
- // client's request for the GetComplianceDetailsByResource operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetComplianceDetailsByResource method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the GetComplianceDetailsByResourceRequest method.
- // req, resp := client.GetComplianceDetailsByResourceRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) GetComplianceDetailsByResourceRequest(input *GetComplianceDetailsByResourceInput) (req *request.Request, output *GetComplianceDetailsByResourceOutput) {
- op := &request.Operation{
- Name: opGetComplianceDetailsByResource,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &GetComplianceDetailsByResourceInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetComplianceDetailsByResourceOutput{}
- req.Data = output
- return
- }
- // Returns the evaluation results for the specified AWS resource. The results
- // indicate which AWS Config rules were used to evaluate the resource, when
- // each rule was last used, and whether the resource complies with each rule.
- func (c *ConfigService) GetComplianceDetailsByResource(input *GetComplianceDetailsByResourceInput) (*GetComplianceDetailsByResourceOutput, error) {
- req, out := c.GetComplianceDetailsByResourceRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetComplianceSummaryByConfigRule = "GetComplianceSummaryByConfigRule"
- // GetComplianceSummaryByConfigRuleRequest generates a "aws/request.Request" representing the
- // client's request for the GetComplianceSummaryByConfigRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetComplianceSummaryByConfigRule method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the GetComplianceSummaryByConfigRuleRequest method.
- // req, resp := client.GetComplianceSummaryByConfigRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) GetComplianceSummaryByConfigRuleRequest(input *GetComplianceSummaryByConfigRuleInput) (req *request.Request, output *GetComplianceSummaryByConfigRuleOutput) {
- op := &request.Operation{
- Name: opGetComplianceSummaryByConfigRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &GetComplianceSummaryByConfigRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetComplianceSummaryByConfigRuleOutput{}
- req.Data = output
- return
- }
- // Returns the number of AWS Config rules that are compliant and noncompliant,
- // up to a maximum of 25 for each.
- func (c *ConfigService) GetComplianceSummaryByConfigRule(input *GetComplianceSummaryByConfigRuleInput) (*GetComplianceSummaryByConfigRuleOutput, error) {
- req, out := c.GetComplianceSummaryByConfigRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetComplianceSummaryByResourceType = "GetComplianceSummaryByResourceType"
- // GetComplianceSummaryByResourceTypeRequest generates a "aws/request.Request" representing the
- // client's request for the GetComplianceSummaryByResourceType operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetComplianceSummaryByResourceType method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the GetComplianceSummaryByResourceTypeRequest method.
- // req, resp := client.GetComplianceSummaryByResourceTypeRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) GetComplianceSummaryByResourceTypeRequest(input *GetComplianceSummaryByResourceTypeInput) (req *request.Request, output *GetComplianceSummaryByResourceTypeOutput) {
- op := &request.Operation{
- Name: opGetComplianceSummaryByResourceType,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &GetComplianceSummaryByResourceTypeInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetComplianceSummaryByResourceTypeOutput{}
- req.Data = output
- return
- }
- // Returns the number of resources that are compliant and the number that are
- // noncompliant. You can specify one or more resource types to get these numbers
- // for each resource type. The maximum number returned is 100.
- func (c *ConfigService) GetComplianceSummaryByResourceType(input *GetComplianceSummaryByResourceTypeInput) (*GetComplianceSummaryByResourceTypeOutput, error) {
- req, out := c.GetComplianceSummaryByResourceTypeRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetResourceConfigHistory = "GetResourceConfigHistory"
- // GetResourceConfigHistoryRequest generates a "aws/request.Request" representing the
- // client's request for the GetResourceConfigHistory operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetResourceConfigHistory method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the GetResourceConfigHistoryRequest method.
- // req, resp := client.GetResourceConfigHistoryRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) GetResourceConfigHistoryRequest(input *GetResourceConfigHistoryInput) (req *request.Request, output *GetResourceConfigHistoryOutput) {
- op := &request.Operation{
- Name: opGetResourceConfigHistory,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"nextToken"},
- OutputTokens: []string{"nextToken"},
- LimitToken: "limit",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &GetResourceConfigHistoryInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetResourceConfigHistoryOutput{}
- req.Data = output
- return
- }
- // Returns a list of configuration items for the specified resource. The list
- // contains details about each state of the resource during the specified time
- // interval.
- //
- // The response is paginated, and by default, AWS Config returns a limit of
- // 10 configuration items per page. You can customize this number with the limit
- // parameter. The response includes a nextToken string, and to get the next
- // page of results, run the request again and enter this string for the nextToken
- // parameter.
- //
- // Each call to the API is limited to span a duration of seven days. It is
- // likely that the number of records returned is smaller than the specified
- // limit. In such cases, you can make another call, using the nextToken.
- func (c *ConfigService) GetResourceConfigHistory(input *GetResourceConfigHistoryInput) (*GetResourceConfigHistoryOutput, error) {
- req, out := c.GetResourceConfigHistoryRequest(input)
- err := req.Send()
- return out, err
- }
- // GetResourceConfigHistoryPages iterates over the pages of a GetResourceConfigHistory operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See GetResourceConfigHistory 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 GetResourceConfigHistory operation.
- // pageNum := 0
- // err := client.GetResourceConfigHistoryPages(params,
- // func(page *GetResourceConfigHistoryOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *ConfigService) GetResourceConfigHistoryPages(input *GetResourceConfigHistoryInput, fn func(p *GetResourceConfigHistoryOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.GetResourceConfigHistoryRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*GetResourceConfigHistoryOutput), lastPage)
- })
- }
- const opListDiscoveredResources = "ListDiscoveredResources"
- // ListDiscoveredResourcesRequest generates a "aws/request.Request" representing the
- // client's request for the ListDiscoveredResources operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListDiscoveredResources method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ListDiscoveredResourcesRequest method.
- // req, resp := client.ListDiscoveredResourcesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) ListDiscoveredResourcesRequest(input *ListDiscoveredResourcesInput) (req *request.Request, output *ListDiscoveredResourcesOutput) {
- op := &request.Operation{
- Name: opListDiscoveredResources,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ListDiscoveredResourcesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListDiscoveredResourcesOutput{}
- req.Data = output
- return
- }
- // Accepts a resource type and returns a list of resource identifiers for the
- // resources of that type. A resource identifier includes the resource type,
- // ID, and (if available) the custom resource name. The results consist of resources
- // that AWS Config has discovered, including those that AWS Config is not currently
- // recording. You can narrow the results to include only resources that have
- // specific resource IDs or a resource name.
- //
- // You can specify either resource IDs or a resource name but not both in
- // the same request.
- //
- // The response is paginated, and by default AWS Config lists 100 resource
- // identifiers on each page. You can customize this number with the limit parameter.
- // The response includes a nextToken string, and to get the next page of results,
- // run the request again and enter this string for the nextToken parameter.
- func (c *ConfigService) ListDiscoveredResources(input *ListDiscoveredResourcesInput) (*ListDiscoveredResourcesOutput, error) {
- req, out := c.ListDiscoveredResourcesRequest(input)
- err := req.Send()
- return out, err
- }
- const opPutConfigRule = "PutConfigRule"
- // PutConfigRuleRequest generates a "aws/request.Request" representing the
- // client's request for the PutConfigRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the PutConfigRule method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the PutConfigRuleRequest method.
- // req, resp := client.PutConfigRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) PutConfigRuleRequest(input *PutConfigRuleInput) (req *request.Request, output *PutConfigRuleOutput) {
- op := &request.Operation{
- Name: opPutConfigRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &PutConfigRuleInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &PutConfigRuleOutput{}
- req.Data = output
- return
- }
- // Adds or updates an AWS Config rule for evaluating whether your AWS resources
- // comply with your desired configurations.
- //
- // You can use this action for custom Config rules and AWS managed Config rules.
- // A custom Config rule is a rule that you develop and maintain. An AWS managed
- // Config rule is a customizable, predefined rule that AWS Config provides.
- //
- // If you are adding a new custom Config rule, you must first create the AWS
- // Lambda function that the rule invokes to evaluate your resources. When you
- // use the PutConfigRule action to add the rule to AWS Config, you must specify
- // the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify
- // the ARN for the SourceIdentifier key. This key is part of the Source object,
- // which is part of the ConfigRule object.
- //
- // If you are adding a new AWS managed Config rule, specify the rule's identifier
- // for the SourceIdentifier key. To reference AWS managed Config rule identifiers,
- // see Using AWS Managed Config Rules (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html).
- //
- // For any new rule that you add, specify the ConfigRuleName in the ConfigRule
- // object. Do not specify the ConfigRuleArn or the ConfigRuleId. These values
- // are generated by AWS Config for new rules.
- //
- // If you are updating a rule that you have added previously, specify the rule's
- // ConfigRuleName, ConfigRuleId, or ConfigRuleArn in the ConfigRule data type
- // that you use in this request.
- //
- // The maximum number of rules that AWS Config supports is 25.
- //
- // For more information about developing and using AWS Config rules, see Evaluating
- // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)
- // in the AWS Config Developer Guide.
- func (c *ConfigService) PutConfigRule(input *PutConfigRuleInput) (*PutConfigRuleOutput, error) {
- req, out := c.PutConfigRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opPutConfigurationRecorder = "PutConfigurationRecorder"
- // PutConfigurationRecorderRequest generates a "aws/request.Request" representing the
- // client's request for the PutConfigurationRecorder operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the PutConfigurationRecorder method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the PutConfigurationRecorderRequest method.
- // req, resp := client.PutConfigurationRecorderRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) PutConfigurationRecorderRequest(input *PutConfigurationRecorderInput) (req *request.Request, output *PutConfigurationRecorderOutput) {
- op := &request.Operation{
- Name: opPutConfigurationRecorder,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &PutConfigurationRecorderInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &PutConfigurationRecorderOutput{}
- req.Data = output
- return
- }
- // Creates a new configuration recorder to record the selected resource configurations.
- //
- // You can use this action to change the role roleARN and/or the recordingGroup
- // of an existing recorder. To change the role, call the action on the existing
- // configuration recorder and specify a role.
- //
- // Currently, you can specify only one configuration recorder per account.
- //
- // If ConfigurationRecorder does not have the recordingGroup parameter specified,
- // the default is to record all supported resource types.
- func (c *ConfigService) PutConfigurationRecorder(input *PutConfigurationRecorderInput) (*PutConfigurationRecorderOutput, error) {
- req, out := c.PutConfigurationRecorderRequest(input)
- err := req.Send()
- return out, err
- }
- const opPutDeliveryChannel = "PutDeliveryChannel"
- // PutDeliveryChannelRequest generates a "aws/request.Request" representing the
- // client's request for the PutDeliveryChannel operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the PutDeliveryChannel method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the PutDeliveryChannelRequest method.
- // req, resp := client.PutDeliveryChannelRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) PutDeliveryChannelRequest(input *PutDeliveryChannelInput) (req *request.Request, output *PutDeliveryChannelOutput) {
- op := &request.Operation{
- Name: opPutDeliveryChannel,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &PutDeliveryChannelInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &PutDeliveryChannelOutput{}
- req.Data = output
- return
- }
- // Creates a delivery channel object to deliver configuration information to
- // an Amazon S3 bucket and Amazon SNS topic.
- //
- // Before you can create a delivery channel, you must create a configuration
- // recorder.
- //
- // You can use this action to change the Amazon S3 bucket or an Amazon SNS
- // topic of the existing delivery channel. To change the Amazon S3 bucket or
- // an Amazon SNS topic, call this action and specify the changed values for
- // the S3 bucket and the SNS topic. If you specify a different value for either
- // the S3 bucket or the SNS topic, this action will keep the existing value
- // for the parameter that is not changed.
- //
- // You can have only one delivery channel per AWS account.
- func (c *ConfigService) PutDeliveryChannel(input *PutDeliveryChannelInput) (*PutDeliveryChannelOutput, error) {
- req, out := c.PutDeliveryChannelRequest(input)
- err := req.Send()
- return out, err
- }
- const opPutEvaluations = "PutEvaluations"
- // PutEvaluationsRequest generates a "aws/request.Request" representing the
- // client's request for the PutEvaluations operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the PutEvaluations method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the PutEvaluationsRequest method.
- // req, resp := client.PutEvaluationsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) PutEvaluationsRequest(input *PutEvaluationsInput) (req *request.Request, output *PutEvaluationsOutput) {
- op := &request.Operation{
- Name: opPutEvaluations,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &PutEvaluationsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &PutEvaluationsOutput{}
- req.Data = output
- return
- }
- // Used by an AWS Lambda function to deliver evaluation results to AWS Config.
- // This action is required in every AWS Lambda function that is invoked by an
- // AWS Config rule.
- func (c *ConfigService) PutEvaluations(input *PutEvaluationsInput) (*PutEvaluationsOutput, error) {
- req, out := c.PutEvaluationsRequest(input)
- err := req.Send()
- return out, err
- }
- const opStartConfigRulesEvaluation = "StartConfigRulesEvaluation"
- // StartConfigRulesEvaluationRequest generates a "aws/request.Request" representing the
- // client's request for the StartConfigRulesEvaluation operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the StartConfigRulesEvaluation method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the StartConfigRulesEvaluationRequest method.
- // req, resp := client.StartConfigRulesEvaluationRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) StartConfigRulesEvaluationRequest(input *StartConfigRulesEvaluationInput) (req *request.Request, output *StartConfigRulesEvaluationOutput) {
- op := &request.Operation{
- Name: opStartConfigRulesEvaluation,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &StartConfigRulesEvaluationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &StartConfigRulesEvaluationOutput{}
- req.Data = output
- return
- }
- // Evaluates your resources against the specified Config rules. You can specify
- // up to 25 Config rules per request.
- //
- // An existing StartConfigRulesEvaluation call must complete for the rules
- // that you specified before you can call the API again. If you chose to have
- // AWS Config stream to an Amazon SNS topic, you will receive a notification
- // when the evaluation starts.
- func (c *ConfigService) StartConfigRulesEvaluation(input *StartConfigRulesEvaluationInput) (*StartConfigRulesEvaluationOutput, error) {
- req, out := c.StartConfigRulesEvaluationRequest(input)
- err := req.Send()
- return out, err
- }
- const opStartConfigurationRecorder = "StartConfigurationRecorder"
- // StartConfigurationRecorderRequest generates a "aws/request.Request" representing the
- // client's request for the StartConfigurationRecorder operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the StartConfigurationRecorder method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the StartConfigurationRecorderRequest method.
- // req, resp := client.StartConfigurationRecorderRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) StartConfigurationRecorderRequest(input *StartConfigurationRecorderInput) (req *request.Request, output *StartConfigurationRecorderOutput) {
- op := &request.Operation{
- Name: opStartConfigurationRecorder,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &StartConfigurationRecorderInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &StartConfigurationRecorderOutput{}
- req.Data = output
- return
- }
- // Starts recording configurations of the AWS resources you have selected to
- // record in your AWS account.
- //
- // You must have created at least one delivery channel to successfully start
- // the configuration recorder.
- func (c *ConfigService) StartConfigurationRecorder(input *StartConfigurationRecorderInput) (*StartConfigurationRecorderOutput, error) {
- req, out := c.StartConfigurationRecorderRequest(input)
- err := req.Send()
- return out, err
- }
- const opStopConfigurationRecorder = "StopConfigurationRecorder"
- // StopConfigurationRecorderRequest generates a "aws/request.Request" representing the
- // client's request for the StopConfigurationRecorder operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the StopConfigurationRecorder method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the StopConfigurationRecorderRequest method.
- // req, resp := client.StopConfigurationRecorderRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ConfigService) StopConfigurationRecorderRequest(input *StopConfigurationRecorderInput) (req *request.Request, output *StopConfigurationRecorderOutput) {
- op := &request.Operation{
- Name: opStopConfigurationRecorder,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &StopConfigurationRecorderInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &StopConfigurationRecorderOutput{}
- req.Data = output
- return
- }
- // Stops recording configurations of the AWS resources you have selected to
- // record in your AWS account.
- func (c *ConfigService) StopConfigurationRecorder(input *StopConfigurationRecorderInput) (*StopConfigurationRecorderOutput, error) {
- req, out := c.StopConfigurationRecorderRequest(input)
- err := req.Send()
- return out, err
- }
- // Indicates whether an AWS resource or AWS Config rule is compliant and provides
- // the number of contributors that affect the compliance.
- type Compliance struct {
- _ struct{} `type:"structure"`
- // The number of AWS resources or AWS Config rules that cause a result of NON_COMPLIANT,
- // up to a maximum number.
- ComplianceContributorCount *ComplianceContributorCount `type:"structure"`
- // Indicates whether an AWS resource or AWS Config rule is compliant.
- //
- // A resource is compliant if it complies with all of the AWS Config rules
- // that evaluate it, and it is noncompliant if it does not comply with one or
- // more of these rules.
- //
- // A rule is compliant if all of the resources that the rule evaluates comply
- // with it, and it is noncompliant if any of these resources do not comply.
- //
- // AWS Config returns the INSUFFICIENT_DATA value when no evaluation results
- // are available for the AWS resource or Config rule.
- //
- // For the Compliance data type, AWS Config supports only COMPLIANT, NON_COMPLIANT,
- // and INSUFFICIENT_DATA values. AWS Config does not support the NOT_APPLICABLE
- // value for the Compliance data type.
- ComplianceType *string `type:"string" enum:"ComplianceType"`
- }
- // String returns the string representation
- func (s Compliance) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Compliance) GoString() string {
- return s.String()
- }
- // Indicates whether an AWS Config rule is compliant. A rule is compliant if
- // all of the resources that the rule evaluated comply with it, and it is noncompliant
- // if any of these resources do not comply.
- type ComplianceByConfigRule struct {
- _ struct{} `type:"structure"`
- // Indicates whether the AWS Config rule is compliant.
- Compliance *Compliance `type:"structure"`
- // The name of the AWS Config rule.
- ConfigRuleName *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s ComplianceByConfigRule) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ComplianceByConfigRule) GoString() string {
- return s.String()
- }
- // Indicates whether an AWS resource that is evaluated according to one or more
- // AWS Config rules is compliant. A resource is compliant if it complies with
- // all of the rules that evaluate it, and it is noncompliant if it does not
- // comply with one or more of these rules.
- type ComplianceByResource struct {
- _ struct{} `type:"structure"`
- // Indicates whether the AWS resource complies with all of the AWS Config rules
- // that evaluated it.
- Compliance *Compliance `type:"structure"`
- // The ID of the AWS resource that was evaluated.
- ResourceId *string `min:"1" type:"string"`
- // The type of the AWS resource that was evaluated.
- ResourceType *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s ComplianceByResource) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ComplianceByResource) GoString() string {
- return s.String()
- }
- // The number of AWS resources or AWS Config rules responsible for the current
- // compliance of the item, up to a maximum number.
- type ComplianceContributorCount struct {
- _ struct{} `type:"structure"`
- // Indicates whether the maximum count is reached.
- CapExceeded *bool `type:"boolean"`
- // The number of AWS resources or AWS Config rules responsible for the current
- // compliance of the item.
- CappedCount *int64 `type:"integer"`
- }
- // String returns the string representation
- func (s ComplianceContributorCount) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ComplianceContributorCount) GoString() string {
- return s.String()
- }
- // The number of AWS Config rules or AWS resources that are compliant and noncompliant,
- // up to a maximum.
- type ComplianceSummary struct {
- _ struct{} `type:"structure"`
- // The time that AWS Config created the compliance summary.
- ComplianceSummaryTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"`
- // The number of AWS Config rules or AWS resources that are compliant, up to
- // a maximum of 25 for rules and 100 for resources.
- CompliantResourceCount *ComplianceContributorCount `type:"structure"`
- // The number of AWS Config rules or AWS resources that are noncompliant, up
- // to a maximum of 25 for rules and 100 for resources.
- NonCompliantResourceCount *ComplianceContributorCount `type:"structure"`
- }
- // String returns the string representation
- func (s ComplianceSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ComplianceSummary) GoString() string {
- return s.String()
- }
- // The number of AWS resources of a specific type that are compliant or noncompliant,
- // up to a maximum of 100 for each compliance.
- type ComplianceSummaryByResourceType struct {
- _ struct{} `type:"structure"`
- // The number of AWS resources that are compliant or noncompliant, up to a maximum
- // of 100 for each compliance.
- ComplianceSummary *ComplianceSummary `type:"structure"`
- // The type of AWS resource.
- ResourceType *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s ComplianceSummaryByResourceType) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ComplianceSummaryByResourceType) GoString() string {
- return s.String()
- }
- // A list that contains the status of the delivery of either the snapshot or
- // the configuration history to the specified Amazon S3 bucket.
- type ConfigExportDeliveryInfo struct {
- _ struct{} `type:"structure"`
- // The time of the last attempted delivery.
- LastAttemptTime *time.Time `locationName:"lastAttemptTime" type:"timestamp" timestampFormat:"unix"`
- // The error code from the last attempted delivery.
- LastErrorCode *string `locationName:"lastErrorCode" type:"string"`
- // The error message from the last attempted delivery.
- LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"`
- // Status of the last attempted delivery.
- LastStatus *string `locationName:"lastStatus" type:"string" enum:"DeliveryStatus"`
- // The time of the last successful delivery.
- LastSuccessfulTime *time.Time `locationName:"lastSuccessfulTime" type:"timestamp" timestampFormat:"unix"`
- // The time that the next delivery occurs.
- NextDeliveryTime *time.Time `locationName:"nextDeliveryTime" type:"timestamp" timestampFormat:"unix"`
- }
- // String returns the string representation
- func (s ConfigExportDeliveryInfo) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigExportDeliveryInfo) GoString() string {
- return s.String()
- }
- // An AWS Lambda function that evaluates configuration items to assess whether
- // your AWS resources comply with your desired configurations. This function
- // can run when AWS Config detects a configuration change to an AWS resource
- // and at a periodic frequency that you choose (for example, every 24 hours).
- //
- // You can use the AWS CLI and AWS SDKs if you want to create a rule that
- // triggers evaluations for your resources when AWS Config delivers the configuration
- // snapshot. For more information, see ConfigSnapshotDeliveryProperties.
- //
- // For more information about developing and using AWS Config rules, see Evaluating
- // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)
- // in the AWS Config Developer Guide.
- type ConfigRule struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the AWS Config rule.
- ConfigRuleArn *string `type:"string"`
- // The ID of the AWS Config rule.
- ConfigRuleId *string `type:"string"`
- // The name that you assign to the AWS Config rule. The name is required if
- // you are adding a new rule.
- ConfigRuleName *string `min:"1" type:"string"`
- // Indicates whether the AWS Config rule is active or is currently being deleted
- // by AWS Config. It can also indicate the evaluation status for the Config
- // rule.
- //
- // AWS Config sets the state of the rule to EVALUATING temporarily after you
- // use the StartConfigRulesEvaluation request to evaluate your resources against
- // the Config rule.
- //
- // AWS Config sets the state of the rule to DELETING_RESULTS temporarily after
- // you use the DeleteEvaluationResults request to delete the current evaluation
- // results for the Config rule.
- //
- // AWS Config sets the state of a rule to DELETING temporarily after you use
- // the DeleteConfigRule request to delete the rule. After AWS Config deletes
- // the rule, the rule and all of its evaluations are erased and are no longer
- // available.
- ConfigRuleState *string `type:"string" enum:"ConfigRuleState"`
- // The description that you provide for the AWS Config rule.
- Description *string `type:"string"`
- // A string in JSON format that is passed to the AWS Config rule Lambda function.
- InputParameters *string `min:"1" type:"string"`
- // If you want to create a rule that evaluates at a frequency that is independent
- // of the configuration snapshot delivery, use the MaximumExecutionFrequency
- // parameter in the SourceDetail object.
- //
- // If you want to create a rule that triggers evaluations for your resources
- // when AWS Config delivers the configuration snapshot, see the following:
- //
- // A rule that runs an evaluation when AWS Config delivers a configuration
- // snapshot cannot run evaluations more frequently than AWS Config delivers
- // the snapshots. Set the value of the MaximumExecutionFrequency to be equal
- // to or greater than the value of the deliveryFrequency key, which is part
- // of ConfigSnapshotDeliveryProperties.
- //
- // For more information, see ConfigSnapshotDeliveryProperties.
- MaximumExecutionFrequency *string `type:"string" enum:"MaximumExecutionFrequency"`
- // Defines which resources can trigger an evaluation for the rule. The scope
- // can include one or more resource types, a combination of one resource type
- // and one resource ID, or a combination of a tag key and value. Specify a scope
- // to constrain the resources that can trigger an evaluation for the rule. If
- // you do not specify a scope, evaluations are triggered when any resource in
- // the recording group changes.
- Scope *Scope `type:"structure"`
- // Provides the rule owner (AWS or customer), the rule identifier, and the notifications
- // that cause the function to evaluate your AWS resources.
- Source *Source `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s ConfigRule) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigRule) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ConfigRule) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ConfigRule"}
- if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1))
- }
- if s.InputParameters != nil && len(*s.InputParameters) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("InputParameters", 1))
- }
- if s.Source == nil {
- invalidParams.Add(request.NewErrParamRequired("Source"))
- }
- if s.Scope != nil {
- if err := s.Scope.Validate(); err != nil {
- invalidParams.AddNested("Scope", err.(request.ErrInvalidParams))
- }
- }
- if s.Source != nil {
- if err := s.Source.Validate(); err != nil {
- invalidParams.AddNested("Source", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Status information for your AWS managed Config rules. The status includes
- // information such as the last time the rule ran, the last time it failed,
- // and the related error for the last failure.
- //
- // This action does not return status information about custom Config rules.
- type ConfigRuleEvaluationStatus struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the AWS Config rule.
- ConfigRuleArn *string `type:"string"`
- // The ID of the AWS Config rule.
- ConfigRuleId *string `type:"string"`
- // The name of the AWS Config rule.
- ConfigRuleName *string `min:"1" type:"string"`
- // The time that you first activated the AWS Config rule.
- FirstActivatedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // Indicates whether AWS Config has evaluated your resources against the rule
- // at least once.
- //
- // true - AWS Config has evaluated your AWS resources against the rule at
- // least once. false - AWS Config has not once finished evaluating your AWS
- // resources against the rule.
- FirstEvaluationStarted *bool `type:"boolean"`
- // The error code that AWS Config returned when the rule last failed.
- LastErrorCode *string `type:"string"`
- // The error message that AWS Config returned when the rule last failed.
- LastErrorMessage *string `type:"string"`
- // The time that AWS Config last failed to evaluate your AWS resources against
- // the rule.
- LastFailedEvaluationTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // The time that AWS Config last failed to invoke the AWS Config rule to evaluate
- // your AWS resources.
- LastFailedInvocationTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // The time that AWS Config last successfully evaluated your AWS resources against
- // the rule.
- LastSuccessfulEvaluationTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // The time that AWS Config last successfully invoked the AWS Config rule to
- // evaluate your AWS resources.
- LastSuccessfulInvocationTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- }
- // String returns the string representation
- func (s ConfigRuleEvaluationStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigRuleEvaluationStatus) GoString() string {
- return s.String()
- }
- // Shows the options for how often AWS Config delivers configuration snapshots
- // to the Amazon S3 bucket in your delivery channel.
- //
- // If you want to create a rule that triggers evaluations for your resources
- // when AWS Config delivers the configuration snapshot, see the following:
- //
- // The frequency for a rule that triggers evaluations for your resources when
- // AWS Config delivers the configuration snapshot is set by one of two values,
- // depending on which is less frequent:
- //
- // The value for the deliveryFrequency parameter within the delivery channel
- // configuration, which sets how often AWS Config delivers configuration snapshots.
- // This value also sets how often AWS Config invokes evaluations for Config
- // rules.
- //
- // The value for the MaximumExecutionFrequency parameter, which sets the
- // maximum frequency with which AWS Config invokes evaluations for the rule.
- // For more information, see ConfigRule.
- //
- // If the deliveryFrequency value is less frequent than the MaximumExecutionFrequency
- // value for a rule, AWS Config invokes the rule only as often as the deliveryFrequency
- // value.
- //
- // For example, you have a rule and you specify the MaximumExecutionFrequency
- // value to be Six_Hours.
- //
- // You then specify the delivery channel deliveryFrequency value to TwentyFour_Hours.
- //
- // Because the value for deliveryFrequency is less frequent than MaximumExecutionFrequency,
- // AWS Config invokes evaluations for the rule every 24 hours.
- //
- // You should set the MaximumExecutionFrequency value to be at least as frequent
- // as the deliveryFrequency value. You can view the deliveryFrequency value
- // by using the DescribeDeliveryChannnels action.
- //
- // To update the frequency with which AWS Config delivers your configuration
- // snapshots, use the PutDeliveryChannel action.
- type ConfigSnapshotDeliveryProperties struct {
- _ struct{} `type:"structure"`
- // The frequency with which AWS Config delivers configuration snapshots.
- DeliveryFrequency *string `locationName:"deliveryFrequency" type:"string" enum:"MaximumExecutionFrequency"`
- }
- // String returns the string representation
- func (s ConfigSnapshotDeliveryProperties) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigSnapshotDeliveryProperties) GoString() string {
- return s.String()
- }
- // A list that contains the status of the delivery of the configuration stream
- // notification to the Amazon SNS topic.
- type ConfigStreamDeliveryInfo struct {
- _ struct{} `type:"structure"`
- // The error code from the last attempted delivery.
- LastErrorCode *string `locationName:"lastErrorCode" type:"string"`
- // The error message from the last attempted delivery.
- LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"`
- // Status of the last attempted delivery.
- //
- // Note Providing an SNS topic on a DeliveryChannel (http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html)
- // for AWS Config is optional. If the SNS delivery is turned off, the last status
- // will be Not_Applicable.
- LastStatus *string `locationName:"lastStatus" type:"string" enum:"DeliveryStatus"`
- // The time from the last status change.
- LastStatusChangeTime *time.Time `locationName:"lastStatusChangeTime" type:"timestamp" timestampFormat:"unix"`
- }
- // String returns the string representation
- func (s ConfigStreamDeliveryInfo) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigStreamDeliveryInfo) GoString() string {
- return s.String()
- }
- // A list that contains detailed configurations of a specified resource.
- //
- // Currently, the list does not contain information about non-AWS components
- // (for example, applications on your Amazon EC2 instances).
- type ConfigurationItem struct {
- _ struct{} `type:"structure"`
- // The 12 digit AWS account ID associated with the resource.
- AccountId *string `locationName:"accountId" type:"string"`
- // The Amazon Resource Name (ARN) of the resource.
- Arn *string `locationName:"arn" type:"string"`
- // The Availability Zone associated with the resource.
- AvailabilityZone *string `locationName:"availabilityZone" type:"string"`
- // The region where the resource resides.
- AwsRegion *string `locationName:"awsRegion" type:"string"`
- // The description of the resource configuration.
- Configuration *string `locationName:"configuration" type:"string"`
- // The time when the configuration recording was initiated.
- ConfigurationItemCaptureTime *time.Time `locationName:"configurationItemCaptureTime" type:"timestamp" timestampFormat:"unix"`
- // Unique MD5 hash that represents the configuration item's state.
- //
- // You can use MD5 hash to compare the states of two or more configuration
- // items that are associated with the same resource.
- ConfigurationItemMD5Hash *string `locationName:"configurationItemMD5Hash" type:"string"`
- // The configuration item status.
- ConfigurationItemStatus *string `locationName:"configurationItemStatus" type:"string" enum:"ConfigurationItemStatus"`
- // An identifier that indicates the ordering of the configuration items of a
- // resource.
- ConfigurationStateId *string `locationName:"configurationStateId" type:"string"`
- // A list of CloudTrail event IDs.
- //
- // A populated field indicates that the current configuration was initiated
- // by the events recorded in the CloudTrail log. For more information about
- // CloudTrail, see What is AWS CloudTrail? (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html).
- //
- // An empty field indicates that the current configuration was not initiated
- // by any event.
- RelatedEvents []*string `locationName:"relatedEvents" type:"list"`
- // A list of related AWS resources.
- Relationships []*Relationship `locationName:"relationships" type:"list"`
- // The time stamp when the resource was created.
- ResourceCreationTime *time.Time `locationName:"resourceCreationTime" type:"timestamp" timestampFormat:"unix"`
- // The ID of the resource (for example., sg-xxxxxx).
- ResourceId *string `locationName:"resourceId" type:"string"`
- // The custom name of the resource, if available.
- ResourceName *string `locationName:"resourceName" type:"string"`
- // The type of AWS resource.
- ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"`
- // Configuration attributes that AWS Config returns for certain resource types
- // to supplement the information returned for the configuration parameter.
- SupplementaryConfiguration map[string]*string `locationName:"supplementaryConfiguration" type:"map"`
- // A mapping of key value tags associated with the resource.
- Tags map[string]*string `locationName:"tags" type:"map"`
- // The version number of the resource configuration.
- Version *string `locationName:"version" type:"string"`
- }
- // String returns the string representation
- func (s ConfigurationItem) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigurationItem) GoString() string {
- return s.String()
- }
- // An object that represents the recording of configuration changes of an AWS
- // resource.
- type ConfigurationRecorder struct {
- _ struct{} `type:"structure"`
- // The name of the recorder. By default, AWS Config automatically assigns the
- // name "default" when creating the configuration recorder. You cannot change
- // the assigned name.
- Name *string `locationName:"name" min:"1" type:"string"`
- // Specifies the types of AWS resource for which AWS Config records configuration
- // changes.
- RecordingGroup *RecordingGroup `locationName:"recordingGroup" type:"structure"`
- // Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources
- // associated with the account.
- RoleARN *string `locationName:"roleARN" type:"string"`
- }
- // String returns the string representation
- func (s ConfigurationRecorder) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigurationRecorder) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ConfigurationRecorder) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ConfigurationRecorder"}
- if s.Name != nil && len(*s.Name) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Name", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The current status of the configuration recorder.
- type ConfigurationRecorderStatus struct {
- _ struct{} `type:"structure"`
- // The error code indicating that the recording failed.
- LastErrorCode *string `locationName:"lastErrorCode" type:"string"`
- // The message indicating that the recording failed due to an error.
- LastErrorMessage *string `locationName:"lastErrorMessage" type:"string"`
- // The time the recorder was last started.
- LastStartTime *time.Time `locationName:"lastStartTime" type:"timestamp" timestampFormat:"unix"`
- // The last (previous) status of the recorder.
- LastStatus *string `locationName:"lastStatus" type:"string" enum:"RecorderStatus"`
- // The time when the status was last changed.
- LastStatusChangeTime *time.Time `locationName:"lastStatusChangeTime" type:"timestamp" timestampFormat:"unix"`
- // The time the recorder was last stopped.
- LastStopTime *time.Time `locationName:"lastStopTime" type:"timestamp" timestampFormat:"unix"`
- // The name of the configuration recorder.
- Name *string `locationName:"name" type:"string"`
- // Specifies whether the recorder is currently recording or not.
- Recording *bool `locationName:"recording" type:"boolean"`
- }
- // String returns the string representation
- func (s ConfigurationRecorderStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ConfigurationRecorderStatus) GoString() string {
- return s.String()
- }
- type DeleteConfigRuleInput struct {
- _ struct{} `type:"structure"`
- // The name of the AWS Config rule that you want to delete.
- ConfigRuleName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteConfigRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteConfigRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteConfigRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteConfigRuleInput"}
- if s.ConfigRuleName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigRuleName"))
- }
- if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteConfigRuleOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteConfigRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteConfigRuleOutput) GoString() string {
- return s.String()
- }
- // The request object for the DeleteConfigurationRecorder action.
- type DeleteConfigurationRecorderInput struct {
- _ struct{} `type:"structure"`
- // The name of the configuration recorder to be deleted. You can retrieve the
- // name of your configuration recorder by using the DescribeConfigurationRecorders
- // action.
- ConfigurationRecorderName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteConfigurationRecorderInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteConfigurationRecorderInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteConfigurationRecorderInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationRecorderInput"}
- if s.ConfigurationRecorderName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName"))
- }
- if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteConfigurationRecorderOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteConfigurationRecorderOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteConfigurationRecorderOutput) GoString() string {
- return s.String()
- }
- // The input for the DeleteDeliveryChannel action. The action accepts the following
- // data in JSON format.
- type DeleteDeliveryChannelInput struct {
- _ struct{} `type:"structure"`
- // The name of the delivery channel to delete.
- DeliveryChannelName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteDeliveryChannelInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteDeliveryChannelInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteDeliveryChannelInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteDeliveryChannelInput"}
- if s.DeliveryChannelName == nil {
- invalidParams.Add(request.NewErrParamRequired("DeliveryChannelName"))
- }
- if s.DeliveryChannelName != nil && len(*s.DeliveryChannelName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("DeliveryChannelName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteDeliveryChannelOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteDeliveryChannelOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteDeliveryChannelOutput) GoString() string {
- return s.String()
- }
- type DeleteEvaluationResultsInput struct {
- _ struct{} `type:"structure"`
- // The name of the Config rule for which you want to delete the evaluation results.
- ConfigRuleName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteEvaluationResultsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteEvaluationResultsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteEvaluationResultsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteEvaluationResultsInput"}
- if s.ConfigRuleName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigRuleName"))
- }
- if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The output when you delete the evaluation results for the specified Config
- // rule.
- type DeleteEvaluationResultsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteEvaluationResultsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteEvaluationResultsOutput) GoString() string {
- return s.String()
- }
- // The input for the DeliverConfigSnapshot action.
- type DeliverConfigSnapshotInput struct {
- _ struct{} `type:"structure"`
- // The name of the delivery channel through which the snapshot is delivered.
- DeliveryChannelName *string `locationName:"deliveryChannelName" min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeliverConfigSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeliverConfigSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeliverConfigSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeliverConfigSnapshotInput"}
- if s.DeliveryChannelName == nil {
- invalidParams.Add(request.NewErrParamRequired("DeliveryChannelName"))
- }
- if s.DeliveryChannelName != nil && len(*s.DeliveryChannelName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("DeliveryChannelName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The output for the DeliverConfigSnapshot action in JSON format.
- type DeliverConfigSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // The ID of the snapshot that is being created.
- ConfigSnapshotId *string `locationName:"configSnapshotId" type:"string"`
- }
- // String returns the string representation
- func (s DeliverConfigSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeliverConfigSnapshotOutput) GoString() string {
- return s.String()
- }
- // The channel through which AWS Config delivers notifications and updated configuration
- // states.
- type DeliveryChannel struct {
- _ struct{} `type:"structure"`
- // Shows the options for how often AWS Config delivers configuration snapshots
- // to the Amazon S3 bucket in your delivery channel.
- //
- // If you want to create a rule that triggers evaluations for your resources
- // when AWS Config delivers the configuration snapshot, see the following:
- //
- // The frequency for a rule that triggers evaluations for your resources when
- // AWS Config delivers the configuration snapshot is set by one of two values,
- // depending on which is less frequent:
- //
- // The value for the deliveryFrequency parameter within the delivery channel
- // configuration, which sets how often AWS Config delivers configuration snapshots.
- // This value also sets how often AWS Config invokes evaluations for Config
- // rules.
- //
- // The value for the MaximumExecutionFrequency parameter, which sets the
- // maximum frequency with which AWS Config invokes evaluations for the rule.
- // For more information, see ConfigRule.
- //
- // If the deliveryFrequency value is less frequent than the MaximumExecutionFrequency
- // value for a rule, AWS Config invokes the rule only as often as the deliveryFrequency
- // value.
- //
- // For example, you have a rule and you specify the MaximumExecutionFrequency
- // value to be Six_Hours.
- //
- // You then specify the delivery channel deliveryFrequency value to TwentyFour_Hours.
- //
- // Because the value for deliveryFrequency is less frequent than MaximumExecutionFrequency,
- // AWS Config invokes evaluations for the rule every 24 hours.
- //
- // You should set the MaximumExecutionFrequency value to be at least as frequent
- // as the deliveryFrequency value. You can view the deliveryFrequency value
- // by using the DescribeDeliveryChannnels action.
- //
- // To update the frequency with which AWS Config delivers your configuration
- // snapshots, use the PutDeliveryChannel action.
- ConfigSnapshotDeliveryProperties *ConfigSnapshotDeliveryProperties `locationName:"configSnapshotDeliveryProperties" type:"structure"`
- // The name of the delivery channel. By default, AWS Config assigns the name
- // "default" when creating the delivery channel. To change the delivery channel
- // name, you must use the DeleteDeliveryChannel action to delete your current
- // delivery channel, and then you must use the PutDeliveryChannel command to
- // create a delivery channel that has the desired name.
- Name *string `locationName:"name" min:"1" type:"string"`
- // The name of the Amazon S3 bucket to which AWS Config delivers configuration
- // snapshots and configuration history files.
- //
- // If you specify a bucket that belongs to another AWS account, that bucket
- // must have policies that grant access permissions to AWS Config. For more
- // information, see Permissions for the Amazon S3 Bucket (http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html)
- // in the AWS Config Developer Guide.
- S3BucketName *string `locationName:"s3BucketName" type:"string"`
- // The prefix for the specified Amazon S3 bucket.
- S3KeyPrefix *string `locationName:"s3KeyPrefix" type:"string"`
- // The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config
- // sends notifications about configuration changes.
- //
- // If you choose a topic from another account, the topic must have policies
- // that grant access permissions to AWS Config. For more information, see Permissions
- // for the Amazon SNS Topic (http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html)
- // in the AWS Config Developer Guide.
- SnsTopicARN *string `locationName:"snsTopicARN" type:"string"`
- }
- // String returns the string representation
- func (s DeliveryChannel) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeliveryChannel) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeliveryChannel) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeliveryChannel"}
- if s.Name != nil && len(*s.Name) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Name", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The status of a specified delivery channel.
- //
- // Valid values: Success | Failure
- type DeliveryChannelStatus struct {
- _ struct{} `type:"structure"`
- // A list that contains the status of the delivery of the configuration history
- // to the specified Amazon S3 bucket.
- ConfigHistoryDeliveryInfo *ConfigExportDeliveryInfo `locationName:"configHistoryDeliveryInfo" type:"structure"`
- // A list containing the status of the delivery of the snapshot to the specified
- // Amazon S3 bucket.
- ConfigSnapshotDeliveryInfo *ConfigExportDeliveryInfo `locationName:"configSnapshotDeliveryInfo" type:"structure"`
- // A list containing the status of the delivery of the configuration stream
- // notification to the specified Amazon SNS topic.
- ConfigStreamDeliveryInfo *ConfigStreamDeliveryInfo `locationName:"configStreamDeliveryInfo" type:"structure"`
- // The name of the delivery channel.
- Name *string `locationName:"name" type:"string"`
- }
- // String returns the string representation
- func (s DeliveryChannelStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeliveryChannelStatus) GoString() string {
- return s.String()
- }
- type DescribeComplianceByConfigRuleInput struct {
- _ struct{} `type:"structure"`
- // Filters the results by compliance.
- //
- // The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA.
- ComplianceTypes []*string `type:"list"`
- // Specify one or more AWS Config rule names to filter the results by rule.
- ConfigRuleNames []*string `type:"list"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeComplianceByConfigRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeComplianceByConfigRuleInput) GoString() string {
- return s.String()
- }
- type DescribeComplianceByConfigRuleOutput struct {
- _ struct{} `type:"structure"`
- // Indicates whether each of the specified AWS Config rules is compliant.
- ComplianceByConfigRules []*ComplianceByConfigRule `type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeComplianceByConfigRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeComplianceByConfigRuleOutput) GoString() string {
- return s.String()
- }
- type DescribeComplianceByResourceInput struct {
- _ struct{} `type:"structure"`
- // Filters the results by compliance.
- //
- // The allowed values are COMPLIANT, NON_COMPLIANT, and INSUFFICIENT_DATA.
- ComplianceTypes []*string `type:"list"`
- // The maximum number of evaluation results returned on each page. The default
- // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS
- // Config uses the default.
- Limit *int64 `type:"integer"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `type:"string"`
- // The ID of the AWS resource for which you want compliance information. You
- // can specify only one resource ID. If you specify a resource ID, you must
- // also specify a type for ResourceType.
- ResourceId *string `min:"1" type:"string"`
- // The types of AWS resources for which you want compliance information; for
- // example, AWS::EC2::Instance. For this action, you can specify that the resource
- // type is an AWS account by specifying AWS::::Account.
- ResourceType *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s DescribeComplianceByResourceInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeComplianceByResourceInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeComplianceByResourceInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeComplianceByResourceInput"}
- if s.ResourceId != nil && len(*s.ResourceId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
- }
- if s.ResourceType != nil && len(*s.ResourceType) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DescribeComplianceByResourceOutput struct {
- _ struct{} `type:"structure"`
- // Indicates whether the specified AWS resource complies with all of the AWS
- // Config rules that evaluate it.
- ComplianceByResources []*ComplianceByResource `type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeComplianceByResourceOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeComplianceByResourceOutput) GoString() string {
- return s.String()
- }
- type DescribeConfigRuleEvaluationStatusInput struct {
- _ struct{} `type:"structure"`
- // The name of the AWS managed Config rules for which you want status information.
- // If you do not specify any names, AWS Config returns status information for
- // all AWS managed Config rules that you use.
- ConfigRuleNames []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigRuleEvaluationStatusInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigRuleEvaluationStatusInput) GoString() string {
- return s.String()
- }
- type DescribeConfigRuleEvaluationStatusOutput struct {
- _ struct{} `type:"structure"`
- // Status information about your AWS managed Config rules.
- ConfigRulesEvaluationStatus []*ConfigRuleEvaluationStatus `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigRuleEvaluationStatusOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigRuleEvaluationStatusOutput) GoString() string {
- return s.String()
- }
- type DescribeConfigRulesInput struct {
- _ struct{} `type:"structure"`
- // The names of the AWS Config rules for which you want details. If you do not
- // specify any names, AWS Config returns details for all your rules.
- ConfigRuleNames []*string `type:"list"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeConfigRulesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigRulesInput) GoString() string {
- return s.String()
- }
- type DescribeConfigRulesOutput struct {
- _ struct{} `type:"structure"`
- // The details about your AWS Config rules.
- ConfigRules []*ConfigRule `type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeConfigRulesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigRulesOutput) GoString() string {
- return s.String()
- }
- // The input for the DescribeConfigurationRecorderStatus action.
- type DescribeConfigurationRecorderStatusInput struct {
- _ struct{} `type:"structure"`
- // The name(s) of the configuration recorder. If the name is not specified,
- // the action returns the current status of all the configuration recorders
- // associated with the account.
- ConfigurationRecorderNames []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigurationRecorderStatusInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigurationRecorderStatusInput) GoString() string {
- return s.String()
- }
- // The output for the DescribeConfigurationRecorderStatus action in JSON format.
- type DescribeConfigurationRecorderStatusOutput struct {
- _ struct{} `type:"structure"`
- // A list that contains status of the specified recorders.
- ConfigurationRecordersStatus []*ConfigurationRecorderStatus `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigurationRecorderStatusOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigurationRecorderStatusOutput) GoString() string {
- return s.String()
- }
- // The input for the DescribeConfigurationRecorders action.
- type DescribeConfigurationRecordersInput struct {
- _ struct{} `type:"structure"`
- // A list of configuration recorder names.
- ConfigurationRecorderNames []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigurationRecordersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigurationRecordersInput) GoString() string {
- return s.String()
- }
- // The output for the DescribeConfigurationRecorders action.
- type DescribeConfigurationRecordersOutput struct {
- _ struct{} `type:"structure"`
- // A list that contains the descriptions of the specified configuration recorders.
- ConfigurationRecorders []*ConfigurationRecorder `type:"list"`
- }
- // String returns the string representation
- func (s DescribeConfigurationRecordersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeConfigurationRecordersOutput) GoString() string {
- return s.String()
- }
- // The input for the DeliveryChannelStatus action.
- type DescribeDeliveryChannelStatusInput struct {
- _ struct{} `type:"structure"`
- // A list of delivery channel names.
- DeliveryChannelNames []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeDeliveryChannelStatusInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDeliveryChannelStatusInput) GoString() string {
- return s.String()
- }
- // The output for the DescribeDeliveryChannelStatus action.
- type DescribeDeliveryChannelStatusOutput struct {
- _ struct{} `type:"structure"`
- // A list that contains the status of a specified delivery channel.
- DeliveryChannelsStatus []*DeliveryChannelStatus `type:"list"`
- }
- // String returns the string representation
- func (s DescribeDeliveryChannelStatusOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDeliveryChannelStatusOutput) GoString() string {
- return s.String()
- }
- // The input for the DescribeDeliveryChannels action.
- type DescribeDeliveryChannelsInput struct {
- _ struct{} `type:"structure"`
- // A list of delivery channel names.
- DeliveryChannelNames []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeDeliveryChannelsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDeliveryChannelsInput) GoString() string {
- return s.String()
- }
- // The output for the DescribeDeliveryChannels action.
- type DescribeDeliveryChannelsOutput struct {
- _ struct{} `type:"structure"`
- // A list that contains the descriptions of the specified delivery channel.
- DeliveryChannels []*DeliveryChannel `type:"list"`
- }
- // String returns the string representation
- func (s DescribeDeliveryChannelsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDeliveryChannelsOutput) GoString() string {
- return s.String()
- }
- // Identifies an AWS resource and indicates whether it complies with the AWS
- // Config rule that it was evaluated against.
- type Evaluation struct {
- _ struct{} `type:"structure"`
- // Supplementary information about how the evaluation determined the compliance.
- Annotation *string `min:"1" type:"string"`
- // The ID of the AWS resource that was evaluated.
- ComplianceResourceId *string `min:"1" type:"string" required:"true"`
- // The type of AWS resource that was evaluated.
- ComplianceResourceType *string `min:"1" type:"string" required:"true"`
- // Indicates whether the AWS resource complies with the AWS Config rule that
- // it was evaluated against.
- //
- // For the Evaluation data type, AWS Config supports only the COMPLIANT, NON_COMPLIANT,
- // and NOT_APPLICABLE values. AWS Config does not support the INSUFFICIENT_DATA
- // value for this data type.
- //
- // Similarly, AWS Config does not accept INSUFFICIENT_DATA as the value for
- // ComplianceType from a PutEvaluations request. For example, an AWS Lambda
- // function for a custom Config rule cannot pass an INSUFFICIENT_DATA value
- // to AWS Config.
- ComplianceType *string `type:"string" required:"true" enum:"ComplianceType"`
- // The time of the event in AWS Config that triggered the evaluation. For event-based
- // evaluations, the time indicates when AWS Config created the configuration
- // item that triggered the evaluation. For periodic evaluations, the time indicates
- // when AWS Config delivered the configuration snapshot that triggered the evaluation.
- OrderingTimestamp *time.Time `type:"timestamp" timestampFormat:"unix" required:"true"`
- }
- // String returns the string representation
- func (s Evaluation) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Evaluation) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Evaluation) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Evaluation"}
- if s.Annotation != nil && len(*s.Annotation) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Annotation", 1))
- }
- if s.ComplianceResourceId == nil {
- invalidParams.Add(request.NewErrParamRequired("ComplianceResourceId"))
- }
- if s.ComplianceResourceId != nil && len(*s.ComplianceResourceId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceId", 1))
- }
- if s.ComplianceResourceType == nil {
- invalidParams.Add(request.NewErrParamRequired("ComplianceResourceType"))
- }
- if s.ComplianceResourceType != nil && len(*s.ComplianceResourceType) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceType", 1))
- }
- if s.ComplianceType == nil {
- invalidParams.Add(request.NewErrParamRequired("ComplianceType"))
- }
- if s.OrderingTimestamp == nil {
- invalidParams.Add(request.NewErrParamRequired("OrderingTimestamp"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The details of an AWS Config evaluation. Provides the AWS resource that was
- // evaluated, the compliance of the resource, related timestamps, and supplementary
- // information.
- type EvaluationResult struct {
- _ struct{} `type:"structure"`
- // Supplementary information about how the evaluation determined the compliance.
- Annotation *string `min:"1" type:"string"`
- // Indicates whether the AWS resource complies with the AWS Config rule that
- // evaluated it.
- //
- // For the EvaluationResult data type, AWS Config supports only the COMPLIANT,
- // NON_COMPLIANT, and NOT_APPLICABLE values. AWS Config does not support the
- // INSUFFICIENT_DATA value for the EvaluationResult data type.
- ComplianceType *string `type:"string" enum:"ComplianceType"`
- // The time when the AWS Config rule evaluated the AWS resource.
- ConfigRuleInvokedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // Uniquely identifies the evaluation result.
- EvaluationResultIdentifier *EvaluationResultIdentifier `type:"structure"`
- // The time when AWS Config recorded the evaluation result.
- ResultRecordedTime *time.Time `type:"timestamp" timestampFormat:"unix"`
- // An encrypted token that associates an evaluation with an AWS Config rule.
- // The token identifies the rule, the AWS resource being evaluated, and the
- // event that triggered the evaluation.
- ResultToken *string `type:"string"`
- }
- // String returns the string representation
- func (s EvaluationResult) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EvaluationResult) GoString() string {
- return s.String()
- }
- // Uniquely identifies an evaluation result.
- type EvaluationResultIdentifier struct {
- _ struct{} `type:"structure"`
- // Identifies an AWS Config rule used to evaluate an AWS resource, and provides
- // the type and ID of the evaluated resource.
- EvaluationResultQualifier *EvaluationResultQualifier `type:"structure"`
- // The time of the event that triggered the evaluation of your AWS resources.
- // The time can indicate when AWS Config delivered a configuration item change
- // notification, or it can indicate when AWS Config delivered the configuration
- // snapshot, depending on which event triggered the evaluation.
- OrderingTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"`
- }
- // String returns the string representation
- func (s EvaluationResultIdentifier) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EvaluationResultIdentifier) GoString() string {
- return s.String()
- }
- // Identifies an AWS Config rule that evaluated an AWS resource, and provides
- // the type and ID of the resource that the rule evaluated.
- type EvaluationResultQualifier struct {
- _ struct{} `type:"structure"`
- // The name of the AWS Config rule that was used in the evaluation.
- ConfigRuleName *string `min:"1" type:"string"`
- // The ID of the evaluated AWS resource.
- ResourceId *string `min:"1" type:"string"`
- // The type of AWS resource that was evaluated.
- ResourceType *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s EvaluationResultQualifier) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EvaluationResultQualifier) GoString() string {
- return s.String()
- }
- type GetComplianceDetailsByConfigRuleInput struct {
- _ struct{} `type:"structure"`
- // Filters the results by compliance.
- //
- // The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE.
- ComplianceTypes []*string `type:"list"`
- // The name of the AWS Config rule for which you want compliance information.
- ConfigRuleName *string `min:"1" type:"string" required:"true"`
- // The maximum number of evaluation results returned on each page. The default
- // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS
- // Config uses the default.
- Limit *int64 `type:"integer"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s GetComplianceDetailsByConfigRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceDetailsByConfigRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetComplianceDetailsByConfigRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetComplianceDetailsByConfigRuleInput"}
- if s.ConfigRuleName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigRuleName"))
- }
- if s.ConfigRuleName != nil && len(*s.ConfigRuleName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigRuleName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type GetComplianceDetailsByConfigRuleOutput struct {
- _ struct{} `type:"structure"`
- // Indicates whether the AWS resource complies with the specified AWS Config
- // rule.
- EvaluationResults []*EvaluationResult `type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s GetComplianceDetailsByConfigRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceDetailsByConfigRuleOutput) GoString() string {
- return s.String()
- }
- type GetComplianceDetailsByResourceInput struct {
- _ struct{} `type:"structure"`
- // Filters the results by compliance.
- //
- // The allowed values are COMPLIANT, NON_COMPLIANT, and NOT_APPLICABLE.
- ComplianceTypes []*string `type:"list"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `type:"string"`
- // The ID of the AWS resource for which you want compliance information.
- ResourceId *string `min:"1" type:"string" required:"true"`
- // The type of the AWS resource for which you want compliance information.
- ResourceType *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetComplianceDetailsByResourceInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceDetailsByResourceInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetComplianceDetailsByResourceInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetComplianceDetailsByResourceInput"}
- if s.ResourceId == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceId"))
- }
- if s.ResourceId != nil && len(*s.ResourceId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1))
- }
- if s.ResourceType == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceType"))
- }
- if s.ResourceType != nil && len(*s.ResourceType) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type GetComplianceDetailsByResourceOutput struct {
- _ struct{} `type:"structure"`
- // Indicates whether the specified AWS resource complies each AWS Config rule.
- EvaluationResults []*EvaluationResult `type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `type:"string"`
- }
- // String returns the string representation
- func (s GetComplianceDetailsByResourceOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceDetailsByResourceOutput) GoString() string {
- return s.String()
- }
- type GetComplianceSummaryByConfigRuleInput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s GetComplianceSummaryByConfigRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceSummaryByConfigRuleInput) GoString() string {
- return s.String()
- }
- type GetComplianceSummaryByConfigRuleOutput struct {
- _ struct{} `type:"structure"`
- // The number of AWS Config rules that are compliant and the number that are
- // noncompliant, up to a maximum of 25 for each.
- ComplianceSummary *ComplianceSummary `type:"structure"`
- }
- // String returns the string representation
- func (s GetComplianceSummaryByConfigRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceSummaryByConfigRuleOutput) GoString() string {
- return s.String()
- }
- type GetComplianceSummaryByResourceTypeInput struct {
- _ struct{} `type:"structure"`
- // Specify one or more resource types to get the number of resources that are
- // compliant and the number that are noncompliant for each resource type.
- //
- // For this request, you can specify an AWS resource type such as AWS::EC2::Instance,
- // and you can specify that the resource type is an AWS account by specifying
- // AWS::::Account.
- ResourceTypes []*string `type:"list"`
- }
- // String returns the string representation
- func (s GetComplianceSummaryByResourceTypeInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceSummaryByResourceTypeInput) GoString() string {
- return s.String()
- }
- type GetComplianceSummaryByResourceTypeOutput struct {
- _ struct{} `type:"structure"`
- // The number of resources that are compliant and the number that are noncompliant.
- // If one or more resource types were provided with the request, the numbers
- // are returned for each resource type. The maximum number returned is 100.
- ComplianceSummariesByResourceType []*ComplianceSummaryByResourceType `type:"list"`
- }
- // String returns the string representation
- func (s GetComplianceSummaryByResourceTypeOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetComplianceSummaryByResourceTypeOutput) GoString() string {
- return s.String()
- }
- // The input for the GetResourceConfigHistory action.
- type GetResourceConfigHistoryInput struct {
- _ struct{} `type:"structure"`
- // The chronological order for configuration items listed. By default the results
- // are listed in reverse chronological order.
- ChronologicalOrder *string `locationName:"chronologicalOrder" type:"string" enum:"ChronologicalOrder"`
- // The time stamp that indicates an earlier time. If not specified, the action
- // returns paginated results that contain configuration items that start from
- // when the first configuration item was recorded.
- EarlierTime *time.Time `locationName:"earlierTime" type:"timestamp" timestampFormat:"unix"`
- // The time stamp that indicates a later time. If not specified, current time
- // is taken.
- LaterTime *time.Time `locationName:"laterTime" type:"timestamp" timestampFormat:"unix"`
- // The maximum number of configuration items returned on each page. The default
- // is 10. You cannot specify a limit greater than 100. If you specify 0, AWS
- // Config uses the default.
- Limit *int64 `locationName:"limit" type:"integer"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `locationName:"nextToken" type:"string"`
- // The ID of the resource (for example., sg-xxxxxx).
- ResourceId *string `locationName:"resourceId" type:"string" required:"true"`
- // The resource type.
- ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"`
- }
- // String returns the string representation
- func (s GetResourceConfigHistoryInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetResourceConfigHistoryInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetResourceConfigHistoryInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetResourceConfigHistoryInput"}
- if s.ResourceId == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceId"))
- }
- if s.ResourceType == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceType"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The output for the GetResourceConfigHistory action.
- type GetResourceConfigHistoryOutput struct {
- _ struct{} `type:"structure"`
- // A list that contains the configuration history of one or more resources.
- ConfigurationItems []*ConfigurationItem `locationName:"configurationItems" type:"list"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `locationName:"nextToken" type:"string"`
- }
- // String returns the string representation
- func (s GetResourceConfigHistoryOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetResourceConfigHistoryOutput) GoString() string {
- return s.String()
- }
- type ListDiscoveredResourcesInput struct {
- _ struct{} `type:"structure"`
- // Specifies whether AWS Config includes deleted resources in the results. By
- // default, deleted resources are not included.
- IncludeDeletedResources *bool `locationName:"includeDeletedResources" type:"boolean"`
- // The maximum number of resource identifiers returned on each page. The default
- // is 100. You cannot specify a limit greater than 100. If you specify 0, AWS
- // Config uses the default.
- Limit *int64 `locationName:"limit" type:"integer"`
- // The nextToken string returned on a previous page that you use to get the
- // next page of results in a paginated response.
- NextToken *string `locationName:"nextToken" type:"string"`
- // The IDs of only those resources that you want AWS Config to list in the response.
- // If you do not specify this parameter, AWS Config lists all resources of the
- // specified type that it has discovered.
- ResourceIds []*string `locationName:"resourceIds" type:"list"`
- // The custom name of only those resources that you want AWS Config to list
- // in the response. If you do not specify this parameter, AWS Config lists all
- // resources of the specified type that it has discovered.
- ResourceName *string `locationName:"resourceName" type:"string"`
- // The type of resources that you want AWS Config to list in the response.
- ResourceType *string `locationName:"resourceType" type:"string" required:"true" enum:"ResourceType"`
- }
- // String returns the string representation
- func (s ListDiscoveredResourcesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDiscoveredResourcesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ListDiscoveredResourcesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ListDiscoveredResourcesInput"}
- if s.ResourceType == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceType"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ListDiscoveredResourcesOutput struct {
- _ struct{} `type:"structure"`
- // The string that you use in a subsequent request to get the next page of results
- // in a paginated response.
- NextToken *string `locationName:"nextToken" type:"string"`
- // The details that identify a resource that is discovered by AWS Config, including
- // the resource type, ID, and (if available) the custom resource name.
- ResourceIdentifiers []*ResourceIdentifier `locationName:"resourceIdentifiers" type:"list"`
- }
- // String returns the string representation
- func (s ListDiscoveredResourcesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDiscoveredResourcesOutput) GoString() string {
- return s.String()
- }
- type PutConfigRuleInput struct {
- _ struct{} `type:"structure"`
- // An AWS Lambda function that evaluates configuration items to assess whether
- // your AWS resources comply with your desired configurations. This function
- // can run when AWS Config detects a configuration change to an AWS resource
- // and at a periodic frequency that you choose (for example, every 24 hours).
- //
- // You can use the AWS CLI and AWS SDKs if you want to create a rule that
- // triggers evaluations for your resources when AWS Config delivers the configuration
- // snapshot. For more information, see ConfigSnapshotDeliveryProperties.
- //
- // For more information about developing and using AWS Config rules, see Evaluating
- // AWS Resource Configurations with AWS Config (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)
- // in the AWS Config Developer Guide.
- ConfigRule *ConfigRule `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s PutConfigRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutConfigRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PutConfigRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PutConfigRuleInput"}
- if s.ConfigRule == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigRule"))
- }
- if s.ConfigRule != nil {
- if err := s.ConfigRule.Validate(); err != nil {
- invalidParams.AddNested("ConfigRule", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type PutConfigRuleOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s PutConfigRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutConfigRuleOutput) GoString() string {
- return s.String()
- }
- // The input for the PutConfigurationRecorder action.
- type PutConfigurationRecorderInput struct {
- _ struct{} `type:"structure"`
- // The configuration recorder object that records each configuration change
- // made to the resources.
- ConfigurationRecorder *ConfigurationRecorder `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s PutConfigurationRecorderInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutConfigurationRecorderInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PutConfigurationRecorderInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PutConfigurationRecorderInput"}
- if s.ConfigurationRecorder == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorder"))
- }
- if s.ConfigurationRecorder != nil {
- if err := s.ConfigurationRecorder.Validate(); err != nil {
- invalidParams.AddNested("ConfigurationRecorder", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type PutConfigurationRecorderOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s PutConfigurationRecorderOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutConfigurationRecorderOutput) GoString() string {
- return s.String()
- }
- // The input for the PutDeliveryChannel action.
- type PutDeliveryChannelInput struct {
- _ struct{} `type:"structure"`
- // The configuration delivery channel object that delivers the configuration
- // information to an Amazon S3 bucket, and to an Amazon SNS topic.
- DeliveryChannel *DeliveryChannel `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s PutDeliveryChannelInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutDeliveryChannelInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PutDeliveryChannelInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PutDeliveryChannelInput"}
- if s.DeliveryChannel == nil {
- invalidParams.Add(request.NewErrParamRequired("DeliveryChannel"))
- }
- if s.DeliveryChannel != nil {
- if err := s.DeliveryChannel.Validate(); err != nil {
- invalidParams.AddNested("DeliveryChannel", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type PutDeliveryChannelOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s PutDeliveryChannelOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutDeliveryChannelOutput) GoString() string {
- return s.String()
- }
- type PutEvaluationsInput struct {
- _ struct{} `type:"structure"`
- // The assessments that the AWS Lambda function performs. Each evaluation identifies
- // an AWS resource and indicates whether it complies with the AWS Config rule
- // that invokes the AWS Lambda function.
- Evaluations []*Evaluation `type:"list"`
- // An encrypted token that associates an evaluation with an AWS Config rule.
- // Identifies the rule and the event that triggered the evaluation
- ResultToken *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s PutEvaluationsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutEvaluationsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PutEvaluationsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PutEvaluationsInput"}
- if s.ResultToken == nil {
- invalidParams.Add(request.NewErrParamRequired("ResultToken"))
- }
- if s.Evaluations != nil {
- for i, v := range s.Evaluations {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Evaluations", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type PutEvaluationsOutput struct {
- _ struct{} `type:"structure"`
- // Requests that failed because of a client or server error.
- FailedEvaluations []*Evaluation `type:"list"`
- }
- // String returns the string representation
- func (s PutEvaluationsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PutEvaluationsOutput) GoString() string {
- return s.String()
- }
- // Specifies the types of AWS resource for which AWS Config records configuration
- // changes.
- //
- // In the recording group, you specify whether all supported types or specific
- // types of resources are recorded.
- //
- // By default, AWS Config records configuration changes for all supported types
- // of regional resources that AWS Config discovers in the region in which it
- // is running. Regional resources are tied to a region and can be used only
- // in that region. Examples of regional resources are EC2 instances and EBS
- // volumes.
- //
- // You can also have AWS Config record configuration changes for supported
- // types of global resources (for example, IAM resources). Global resources
- // are not tied to an individual region and can be used in all regions.
- //
- // The configuration details for any global resource are the same in all regions.
- // If you customize AWS Config in multiple regions to record global resources,
- // it will create multiple configuration items each time a global resource changes:
- // one configuration item for each region. These configuration items will contain
- // identical data. To prevent duplicate configuration items, you should consider
- // customizing AWS Config in only one region to record global resources, unless
- // you want the configuration items to be available in multiple regions.
- //
- // If you don't want AWS Config to record all resources, you can specify which
- // types of resources it will record with the resourceTypes parameter.
- //
- // For a list of supported resource types, see Supported resource types (http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources).
- //
- // For more information, see Selecting Which Resources AWS Config Records (http://docs.aws.amazon.com/config/latest/developerguide/select-resources.html).
- type RecordingGroup struct {
- _ struct{} `type:"structure"`
- // Specifies whether AWS Config records configuration changes for every supported
- // type of regional resource.
- //
- // If you set this option to true, when AWS Config adds support for a new type
- // of regional resource, it automatically starts recording resources of that
- // type.
- //
- // If you set this option to true, you cannot enumerate a list of resourceTypes.
- AllSupported *bool `locationName:"allSupported" type:"boolean"`
- // Specifies whether AWS Config includes all supported types of global resources
- // (for example, IAM resources) with the resources that it records.
- //
- // Before you can set this option to true, you must set the allSupported option
- // to true.
- //
- // If you set this option to true, when AWS Config adds support for a new type
- // of global resource, it automatically starts recording resources of that type.
- //
- // The configuration details for any global resource are the same in all regions.
- // To prevent duplicate configuration items, you should consider customizing
- // AWS Config in only one region to record global resources.
- IncludeGlobalResourceTypes *bool `locationName:"includeGlobalResourceTypes" type:"boolean"`
- // A comma-separated list that specifies the types of AWS resources for which
- // AWS Config records configuration changes (for example, AWS::EC2::Instance
- // or AWS::CloudTrail::Trail).
- //
- // Before you can set this option to true, you must set the allSupported option
- // to false.
- //
- // If you set this option to true, when AWS Config adds support for a new type
- // of resource, it will not record resources of that type unless you manually
- // add that type to your recording group.
- //
- // For a list of valid resourceTypes values, see the resourceType Value column
- // in Supported AWS Resource Types (http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources).
- ResourceTypes []*string `locationName:"resourceTypes" type:"list"`
- }
- // String returns the string representation
- func (s RecordingGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RecordingGroup) GoString() string {
- return s.String()
- }
- // The relationship of the related resource to the main resource.
- type Relationship struct {
- _ struct{} `type:"structure"`
- // The type of relationship with the related resource.
- RelationshipName *string `locationName:"relationshipName" type:"string"`
- // The ID of the related resource (for example, sg-xxxxxx).
- ResourceId *string `locationName:"resourceId" type:"string"`
- // The custom name of the related resource, if available.
- ResourceName *string `locationName:"resourceName" type:"string"`
- // The resource type of the related resource.
- ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"`
- }
- // String returns the string representation
- func (s Relationship) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Relationship) GoString() string {
- return s.String()
- }
- // The details that identify a resource that is discovered by AWS Config, including
- // the resource type, ID, and (if available) the custom resource name.
- type ResourceIdentifier struct {
- _ struct{} `type:"structure"`
- // The time that the resource was deleted.
- ResourceDeletionTime *time.Time `locationName:"resourceDeletionTime" type:"timestamp" timestampFormat:"unix"`
- // The ID of the resource (for example., sg-xxxxxx).
- ResourceId *string `locationName:"resourceId" type:"string"`
- // The custom name of the resource (if available).
- ResourceName *string `locationName:"resourceName" type:"string"`
- // The type of resource.
- ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"`
- }
- // String returns the string representation
- func (s ResourceIdentifier) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ResourceIdentifier) GoString() string {
- return s.String()
- }
- // Defines which resources trigger an evaluation for an AWS Config rule. The
- // scope can include one or more resource types, a combination of a tag key
- // and value, or a combination of one resource type and one resource ID. Specify
- // a scope to constrain which resources trigger an evaluation for a rule. Otherwise,
- // evaluations for the rule are triggered when any resource in your recording
- // group changes in configuration.
- type Scope struct {
- _ struct{} `type:"structure"`
- // The IDs of the only AWS resource that you want to trigger an evaluation for
- // the rule. If you specify a resource ID, you must specify one resource type
- // for ComplianceResourceTypes.
- ComplianceResourceId *string `min:"1" type:"string"`
- // The resource types of only those AWS resources that you want to trigger an
- // evaluation for the rule. You can only specify one type if you also specify
- // a resource ID for ComplianceResourceId.
- ComplianceResourceTypes []*string `type:"list"`
- // The tag key that is applied to only those AWS resources that you want you
- // want to trigger an evaluation for the rule.
- TagKey *string `min:"1" type:"string"`
- // The tag value applied to only those AWS resources that you want to trigger
- // an evaluation for the rule. If you specify a value for TagValue, you must
- // also specify a value for TagKey.
- TagValue *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s Scope) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Scope) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Scope) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Scope"}
- if s.ComplianceResourceId != nil && len(*s.ComplianceResourceId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceId", 1))
- }
- if s.TagKey != nil && len(*s.TagKey) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("TagKey", 1))
- }
- if s.TagValue != nil && len(*s.TagValue) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("TagValue", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Provides the AWS Config rule owner (AWS or customer), the rule identifier,
- // and the events that trigger the evaluation of your AWS resources.
- type Source struct {
- _ struct{} `type:"structure"`
- // Indicates whether AWS or the customer owns and manages the AWS Config rule.
- Owner *string `type:"string" enum:"Owner"`
- // Provides the source and type of the event that causes AWS Config to evaluate
- // your AWS resources.
- SourceDetails []*SourceDetail `type:"list"`
- // For AWS managed Config rules, a pre-defined identifier from a list. To reference
- // the list, see Using AWS Managed Config Rules (http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html).
- //
- // For custom Config rules, the identifier is the Amazon Resource Name (ARN)
- // of the rule's AWS Lambda function.
- SourceIdentifier *string `min:"1" type:"string"`
- }
- // String returns the string representation
- func (s Source) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Source) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Source) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Source"}
- if s.SourceIdentifier != nil && len(*s.SourceIdentifier) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("SourceIdentifier", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Provides the source and the message type that trigger AWS Config to evaluate
- // your AWS resources against a rule. It also provides the frequency with which
- // you want AWS Config to run evaluations for the rule if the trigger type is
- // periodic.
- type SourceDetail struct {
- _ struct{} `type:"structure"`
- // The source of the event, such as an AWS service, that triggers AWS Config
- // to evaluate your AWS resources.
- EventSource *string `type:"string" enum:"EventSource"`
- // If the trigger type for your rule includes periodic, AWS Config runs evaluations
- // for the rule at a frequency that you choose. If you specify a value for MaximumExecutionFrequency,
- // then MessageType must use the ScheduledNotification value.
- MaximumExecutionFrequency *string `type:"string" enum:"MaximumExecutionFrequency"`
- // The type of SNS message that triggers AWS Config to run an evaluation.
- //
- // For evaluations that are initiated when AWS Config delivers a configuration
- // item change notification, you must use ConfigurationItemChangeNotification.
- //
- // For evaluations that are initiated at a frequency that you choose (for example,
- // every 24 hours), you must use ScheduledNotification.
- //
- // For evaluations that are initiated when AWS Config delivers a configuration
- // snapshot, you must use ConfigurationSnapshotDeliveryCompleted.
- MessageType *string `type:"string" enum:"MessageType"`
- }
- // String returns the string representation
- func (s SourceDetail) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SourceDetail) GoString() string {
- return s.String()
- }
- type StartConfigRulesEvaluationInput struct {
- _ struct{} `type:"structure"`
- // The list of names of Config rules that you want to run evaluations for.
- ConfigRuleNames []*string `min:"1" type:"list"`
- }
- // String returns the string representation
- func (s StartConfigRulesEvaluationInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StartConfigRulesEvaluationInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StartConfigRulesEvaluationInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StartConfigRulesEvaluationInput"}
- if s.ConfigRuleNames != nil && len(s.ConfigRuleNames) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigRuleNames", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The output when you start the evaluation for the specified Config rule.
- type StartConfigRulesEvaluationOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s StartConfigRulesEvaluationOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StartConfigRulesEvaluationOutput) GoString() string {
- return s.String()
- }
- // The input for the StartConfigurationRecorder action.
- type StartConfigurationRecorderInput struct {
- _ struct{} `type:"structure"`
- // The name of the recorder object that records each configuration change made
- // to the resources.
- ConfigurationRecorderName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s StartConfigurationRecorderInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StartConfigurationRecorderInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StartConfigurationRecorderInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StartConfigurationRecorderInput"}
- if s.ConfigurationRecorderName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName"))
- }
- if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type StartConfigurationRecorderOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s StartConfigurationRecorderOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StartConfigurationRecorderOutput) GoString() string {
- return s.String()
- }
- // The input for the StopConfigurationRecorder action.
- type StopConfigurationRecorderInput struct {
- _ struct{} `type:"structure"`
- // The name of the recorder object that records each configuration change made
- // to the resources.
- ConfigurationRecorderName *string `min:"1" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s StopConfigurationRecorderInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StopConfigurationRecorderInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StopConfigurationRecorderInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StopConfigurationRecorderInput"}
- if s.ConfigurationRecorderName == nil {
- invalidParams.Add(request.NewErrParamRequired("ConfigurationRecorderName"))
- }
- if s.ConfigurationRecorderName != nil && len(*s.ConfigurationRecorderName) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("ConfigurationRecorderName", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type StopConfigurationRecorderOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s StopConfigurationRecorderOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StopConfigurationRecorderOutput) GoString() string {
- return s.String()
- }
- const (
- // @enum ChronologicalOrder
- ChronologicalOrderReverse = "Reverse"
- // @enum ChronologicalOrder
- ChronologicalOrderForward = "Forward"
- )
- const (
- // @enum ComplianceType
- ComplianceTypeCompliant = "COMPLIANT"
- // @enum ComplianceType
- ComplianceTypeNonCompliant = "NON_COMPLIANT"
- // @enum ComplianceType
- ComplianceTypeNotApplicable = "NOT_APPLICABLE"
- // @enum ComplianceType
- ComplianceTypeInsufficientData = "INSUFFICIENT_DATA"
- )
- const (
- // @enum ConfigRuleState
- ConfigRuleStateActive = "ACTIVE"
- // @enum ConfigRuleState
- ConfigRuleStateDeleting = "DELETING"
- // @enum ConfigRuleState
- ConfigRuleStateDeletingResults = "DELETING_RESULTS"
- // @enum ConfigRuleState
- ConfigRuleStateEvaluating = "EVALUATING"
- )
- const (
- // @enum ConfigurationItemStatus
- ConfigurationItemStatusOk = "Ok"
- // @enum ConfigurationItemStatus
- ConfigurationItemStatusFailed = "Failed"
- // @enum ConfigurationItemStatus
- ConfigurationItemStatusDiscovered = "Discovered"
- // @enum ConfigurationItemStatus
- ConfigurationItemStatusDeleted = "Deleted"
- )
- const (
- // @enum DeliveryStatus
- DeliveryStatusSuccess = "Success"
- // @enum DeliveryStatus
- DeliveryStatusFailure = "Failure"
- // @enum DeliveryStatus
- DeliveryStatusNotApplicable = "Not_Applicable"
- )
- const (
- // @enum EventSource
- EventSourceAwsConfig = "aws.config"
- )
- const (
- // @enum MaximumExecutionFrequency
- MaximumExecutionFrequencyOneHour = "One_Hour"
- // @enum MaximumExecutionFrequency
- MaximumExecutionFrequencyThreeHours = "Three_Hours"
- // @enum MaximumExecutionFrequency
- MaximumExecutionFrequencySixHours = "Six_Hours"
- // @enum MaximumExecutionFrequency
- MaximumExecutionFrequencyTwelveHours = "Twelve_Hours"
- // @enum MaximumExecutionFrequency
- MaximumExecutionFrequencyTwentyFourHours = "TwentyFour_Hours"
- )
- const (
- // @enum MessageType
- MessageTypeConfigurationItemChangeNotification = "ConfigurationItemChangeNotification"
- // @enum MessageType
- MessageTypeConfigurationSnapshotDeliveryCompleted = "ConfigurationSnapshotDeliveryCompleted"
- // @enum MessageType
- MessageTypeScheduledNotification = "ScheduledNotification"
- )
- const (
- // @enum Owner
- OwnerCustomLambda = "CUSTOM_LAMBDA"
- // @enum Owner
- OwnerAws = "AWS"
- )
- const (
- // @enum RecorderStatus
- RecorderStatusPending = "Pending"
- // @enum RecorderStatus
- RecorderStatusSuccess = "Success"
- // @enum RecorderStatus
- RecorderStatusFailure = "Failure"
- )
- const (
- // @enum ResourceType
- ResourceTypeAwsEc2CustomerGateway = "AWS::EC2::CustomerGateway"
- // @enum ResourceType
- ResourceTypeAwsEc2Eip = "AWS::EC2::EIP"
- // @enum ResourceType
- ResourceTypeAwsEc2Host = "AWS::EC2::Host"
- // @enum ResourceType
- ResourceTypeAwsEc2Instance = "AWS::EC2::Instance"
- // @enum ResourceType
- ResourceTypeAwsEc2InternetGateway = "AWS::EC2::InternetGateway"
- // @enum ResourceType
- ResourceTypeAwsEc2NetworkAcl = "AWS::EC2::NetworkAcl"
- // @enum ResourceType
- ResourceTypeAwsEc2NetworkInterface = "AWS::EC2::NetworkInterface"
- // @enum ResourceType
- ResourceTypeAwsEc2RouteTable = "AWS::EC2::RouteTable"
- // @enum ResourceType
- ResourceTypeAwsEc2SecurityGroup = "AWS::EC2::SecurityGroup"
- // @enum ResourceType
- ResourceTypeAwsEc2Subnet = "AWS::EC2::Subnet"
- // @enum ResourceType
- ResourceTypeAwsCloudTrailTrail = "AWS::CloudTrail::Trail"
- // @enum ResourceType
- ResourceTypeAwsEc2Volume = "AWS::EC2::Volume"
- // @enum ResourceType
- ResourceTypeAwsEc2Vpc = "AWS::EC2::VPC"
- // @enum ResourceType
- ResourceTypeAwsEc2Vpnconnection = "AWS::EC2::VPNConnection"
- // @enum ResourceType
- ResourceTypeAwsEc2Vpngateway = "AWS::EC2::VPNGateway"
- // @enum ResourceType
- ResourceTypeAwsIamGroup = "AWS::IAM::Group"
- // @enum ResourceType
- ResourceTypeAwsIamPolicy = "AWS::IAM::Policy"
- // @enum ResourceType
- ResourceTypeAwsIamRole = "AWS::IAM::Role"
- // @enum ResourceType
- ResourceTypeAwsIamUser = "AWS::IAM::User"
- // @enum ResourceType
- ResourceTypeAwsAcmCertificate = "AWS::ACM::Certificate"
- // @enum ResourceType
- ResourceTypeAwsRdsDbinstance = "AWS::RDS::DBInstance"
- // @enum ResourceType
- ResourceTypeAwsRdsDbsubnetGroup = "AWS::RDS::DBSubnetGroup"
- // @enum ResourceType
- ResourceTypeAwsRdsDbsecurityGroup = "AWS::RDS::DBSecurityGroup"
- // @enum ResourceType
- ResourceTypeAwsRdsDbsnapshot = "AWS::RDS::DBSnapshot"
- // @enum ResourceType
- ResourceTypeAwsRdsEventSubscription = "AWS::RDS::EventSubscription"
- )
|