bundle.yaml 238 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.8.0
  6. creationTimestamp: null
  7. name: clustersecretstores.external-secrets.io
  8. spec:
  9. group: external-secrets.io
  10. names:
  11. categories:
  12. - externalsecrets
  13. kind: ClusterSecretStore
  14. listKind: ClusterSecretStoreList
  15. plural: clustersecretstores
  16. shortNames:
  17. - css
  18. singular: clustersecretstore
  19. scope: Cluster
  20. versions:
  21. - additionalPrinterColumns:
  22. - jsonPath: .metadata.creationTimestamp
  23. name: AGE
  24. type: date
  25. name: v1alpha1
  26. schema:
  27. openAPIV3Schema:
  28. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  29. properties:
  30. apiVersion:
  31. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  32. type: string
  33. kind:
  34. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  35. type: string
  36. metadata:
  37. type: object
  38. spec:
  39. description: SecretStoreSpec defines the desired state of SecretStore.
  40. properties:
  41. controller:
  42. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  43. type: string
  44. provider:
  45. description: Used to configure the provider. Only one provider may be set
  46. maxProperties: 1
  47. minProperties: 1
  48. properties:
  49. akeyless:
  50. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  51. properties:
  52. akeylessGWApiURL:
  53. description: Akeyless GW API Url from which the secrets to be fetched from.
  54. type: string
  55. authSecretRef:
  56. description: Auth configures how the operator authenticates with Akeyless.
  57. properties:
  58. secretRef:
  59. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  60. properties:
  61. accessID:
  62. description: The SecretAccessID is used for authentication
  63. properties:
  64. key:
  65. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  66. type: string
  67. name:
  68. description: The name of the Secret resource being referred to.
  69. type: string
  70. namespace:
  71. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  72. type: string
  73. type: object
  74. accessType:
  75. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  76. properties:
  77. key:
  78. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  79. type: string
  80. name:
  81. description: The name of the Secret resource being referred to.
  82. type: string
  83. namespace:
  84. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  85. type: string
  86. type: object
  87. accessTypeParam:
  88. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  89. properties:
  90. key:
  91. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  92. type: string
  93. name:
  94. description: The name of the Secret resource being referred to.
  95. type: string
  96. namespace:
  97. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  98. type: string
  99. type: object
  100. type: object
  101. required:
  102. - secretRef
  103. type: object
  104. required:
  105. - akeylessGWApiURL
  106. - authSecretRef
  107. type: object
  108. alibaba:
  109. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  110. properties:
  111. auth:
  112. description: AlibabaAuth contains a secretRef for credentials.
  113. properties:
  114. secretRef:
  115. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  116. properties:
  117. accessKeyIDSecretRef:
  118. description: The AccessKeyID is used for authentication
  119. properties:
  120. key:
  121. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  122. type: string
  123. name:
  124. description: The name of the Secret resource being referred to.
  125. type: string
  126. namespace:
  127. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  128. type: string
  129. type: object
  130. accessKeySecretSecretRef:
  131. description: The AccessKeySecret is used for authentication
  132. properties:
  133. key:
  134. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  135. type: string
  136. name:
  137. description: The name of the Secret resource being referred to.
  138. type: string
  139. namespace:
  140. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  141. type: string
  142. type: object
  143. required:
  144. - accessKeyIDSecretRef
  145. - accessKeySecretSecretRef
  146. type: object
  147. required:
  148. - secretRef
  149. type: object
  150. endpoint:
  151. type: string
  152. regionID:
  153. description: Alibaba Region to be used for the provider
  154. type: string
  155. required:
  156. - auth
  157. - regionID
  158. type: object
  159. aws:
  160. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  161. properties:
  162. auth:
  163. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  164. properties:
  165. jwt:
  166. description: Authenticate against AWS using service account tokens.
  167. properties:
  168. serviceAccountRef:
  169. description: A reference to a ServiceAccount resource.
  170. properties:
  171. name:
  172. description: The name of the ServiceAccount resource being referred to.
  173. type: string
  174. namespace:
  175. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  176. type: string
  177. required:
  178. - name
  179. type: object
  180. type: object
  181. secretRef:
  182. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  183. properties:
  184. accessKeyIDSecretRef:
  185. description: The AccessKeyID is used for authentication
  186. properties:
  187. key:
  188. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  189. type: string
  190. name:
  191. description: The name of the Secret resource being referred to.
  192. type: string
  193. namespace:
  194. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  195. type: string
  196. type: object
  197. secretAccessKeySecretRef:
  198. description: The SecretAccessKey is used for authentication
  199. properties:
  200. key:
  201. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  202. type: string
  203. name:
  204. description: The name of the Secret resource being referred to.
  205. type: string
  206. namespace:
  207. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  208. type: string
  209. type: object
  210. type: object
  211. type: object
  212. region:
  213. description: AWS Region to be used for the provider
  214. type: string
  215. role:
  216. description: Role is a Role ARN which the SecretManager provider will assume
  217. type: string
  218. service:
  219. description: Service defines which service should be used to fetch the secrets
  220. enum:
  221. - SecretsManager
  222. - ParameterStore
  223. type: string
  224. required:
  225. - region
  226. - service
  227. type: object
  228. azurekv:
  229. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  230. properties:
  231. authSecretRef:
  232. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  233. properties:
  234. clientId:
  235. description: The Azure clientId of the service principle used for authentication.
  236. properties:
  237. key:
  238. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  239. type: string
  240. name:
  241. description: The name of the Secret resource being referred to.
  242. type: string
  243. namespace:
  244. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  245. type: string
  246. type: object
  247. clientSecret:
  248. description: The Azure ClientSecret of the service principle used for authentication.
  249. properties:
  250. key:
  251. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  252. type: string
  253. name:
  254. description: The name of the Secret resource being referred to.
  255. type: string
  256. namespace:
  257. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  258. type: string
  259. type: object
  260. required:
  261. - clientId
  262. - clientSecret
  263. type: object
  264. authType:
  265. default: ServicePrincipal
  266. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  267. enum:
  268. - ServicePrincipal
  269. - ManagedIdentity
  270. type: string
  271. identityId:
  272. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  273. type: string
  274. tenantId:
  275. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  276. type: string
  277. vaultUrl:
  278. description: Vault Url from which the secrets to be fetched from.
  279. type: string
  280. required:
  281. - vaultUrl
  282. type: object
  283. fake:
  284. description: Fake configures a store with static key/value pairs
  285. properties:
  286. data:
  287. items:
  288. properties:
  289. key:
  290. type: string
  291. value:
  292. type: string
  293. valueMap:
  294. additionalProperties:
  295. type: string
  296. type: object
  297. version:
  298. type: string
  299. required:
  300. - key
  301. type: object
  302. type: array
  303. required:
  304. - data
  305. type: object
  306. gcpsm:
  307. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  308. properties:
  309. auth:
  310. description: Auth defines the information necessary to authenticate against GCP
  311. properties:
  312. secretRef:
  313. properties:
  314. secretAccessKeySecretRef:
  315. description: The SecretAccessKey is used for authentication
  316. properties:
  317. key:
  318. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  319. type: string
  320. name:
  321. description: The name of the Secret resource being referred to.
  322. type: string
  323. namespace:
  324. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  325. type: string
  326. type: object
  327. type: object
  328. workloadIdentity:
  329. properties:
  330. clusterLocation:
  331. type: string
  332. clusterName:
  333. type: string
  334. serviceAccountRef:
  335. description: A reference to a ServiceAccount resource.
  336. properties:
  337. name:
  338. description: The name of the ServiceAccount resource being referred to.
  339. type: string
  340. namespace:
  341. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  342. type: string
  343. required:
  344. - name
  345. type: object
  346. required:
  347. - clusterLocation
  348. - clusterName
  349. - serviceAccountRef
  350. type: object
  351. type: object
  352. projectID:
  353. description: ProjectID project where secret is located
  354. type: string
  355. type: object
  356. gitlab:
  357. description: GItlab configures this store to sync secrets using Gitlab Variables provider
  358. properties:
  359. auth:
  360. description: Auth configures how secret-manager authenticates with a GitLab instance.
  361. properties:
  362. SecretRef:
  363. properties:
  364. accessToken:
  365. description: AccessToken is used for authentication.
  366. properties:
  367. key:
  368. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  369. type: string
  370. name:
  371. description: The name of the Secret resource being referred to.
  372. type: string
  373. namespace:
  374. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  375. type: string
  376. type: object
  377. type: object
  378. required:
  379. - SecretRef
  380. type: object
  381. projectID:
  382. description: ProjectID specifies a project where secrets are located.
  383. type: string
  384. url:
  385. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  386. type: string
  387. required:
  388. - auth
  389. type: object
  390. ibm:
  391. description: IBM configures this store to sync secrets using IBM Cloud provider
  392. properties:
  393. auth:
  394. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  395. properties:
  396. secretRef:
  397. properties:
  398. secretApiKeySecretRef:
  399. description: The SecretAccessKey is used for authentication
  400. properties:
  401. key:
  402. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  403. type: string
  404. name:
  405. description: The name of the Secret resource being referred to.
  406. type: string
  407. namespace:
  408. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  409. type: string
  410. type: object
  411. type: object
  412. required:
  413. - secretRef
  414. type: object
  415. serviceUrl:
  416. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  417. type: string
  418. required:
  419. - auth
  420. type: object
  421. oracle:
  422. description: Oracle configures this store to sync secrets using Oracle Vault provider
  423. properties:
  424. auth:
  425. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  426. properties:
  427. secretRef:
  428. description: SecretRef to pass through sensitive information.
  429. properties:
  430. fingerprint:
  431. description: Fingerprint is the fingerprint of the API private key.
  432. properties:
  433. key:
  434. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  435. type: string
  436. name:
  437. description: The name of the Secret resource being referred to.
  438. type: string
  439. namespace:
  440. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  441. type: string
  442. type: object
  443. privatekey:
  444. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  445. properties:
  446. key:
  447. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  448. type: string
  449. name:
  450. description: The name of the Secret resource being referred to.
  451. type: string
  452. namespace:
  453. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  454. type: string
  455. type: object
  456. required:
  457. - fingerprint
  458. - privatekey
  459. type: object
  460. tenancy:
  461. description: Tenancy is the tenancy OCID where user is located.
  462. type: string
  463. user:
  464. description: User is an access OCID specific to the account.
  465. type: string
  466. required:
  467. - secretRef
  468. - tenancy
  469. - user
  470. type: object
  471. region:
  472. description: Region is the region where vault is located.
  473. type: string
  474. vault:
  475. description: Vault is the vault's OCID of the specific vault where secret is located.
  476. type: string
  477. required:
  478. - region
  479. - vault
  480. type: object
  481. vault:
  482. description: Vault configures this store to sync secrets using Hashi provider
  483. properties:
  484. auth:
  485. description: Auth configures how secret-manager authenticates with the Vault server.
  486. properties:
  487. appRole:
  488. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  489. properties:
  490. path:
  491. default: approle
  492. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  493. type: string
  494. roleId:
  495. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  496. type: string
  497. secretRef:
  498. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  499. properties:
  500. key:
  501. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  502. type: string
  503. name:
  504. description: The name of the Secret resource being referred to.
  505. type: string
  506. namespace:
  507. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  508. type: string
  509. type: object
  510. required:
  511. - path
  512. - roleId
  513. - secretRef
  514. type: object
  515. cert:
  516. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  517. properties:
  518. clientCert:
  519. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  520. properties:
  521. key:
  522. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  523. type: string
  524. name:
  525. description: The name of the Secret resource being referred to.
  526. type: string
  527. namespace:
  528. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  529. type: string
  530. type: object
  531. secretRef:
  532. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  533. properties:
  534. key:
  535. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  536. type: string
  537. name:
  538. description: The name of the Secret resource being referred to.
  539. type: string
  540. namespace:
  541. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  542. type: string
  543. type: object
  544. type: object
  545. jwt:
  546. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  547. properties:
  548. path:
  549. default: jwt
  550. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  551. type: string
  552. role:
  553. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  554. type: string
  555. secretRef:
  556. description: SecretRef to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method
  557. properties:
  558. key:
  559. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  560. type: string
  561. name:
  562. description: The name of the Secret resource being referred to.
  563. type: string
  564. namespace:
  565. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  566. type: string
  567. type: object
  568. required:
  569. - path
  570. type: object
  571. kubernetes:
  572. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  573. properties:
  574. mountPath:
  575. default: kubernetes
  576. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  577. type: string
  578. role:
  579. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  580. type: string
  581. secretRef:
  582. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  583. properties:
  584. key:
  585. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  586. type: string
  587. name:
  588. description: The name of the Secret resource being referred to.
  589. type: string
  590. namespace:
  591. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  592. type: string
  593. type: object
  594. serviceAccountRef:
  595. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  596. properties:
  597. name:
  598. description: The name of the ServiceAccount resource being referred to.
  599. type: string
  600. namespace:
  601. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  602. type: string
  603. required:
  604. - name
  605. type: object
  606. required:
  607. - mountPath
  608. - role
  609. type: object
  610. ldap:
  611. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  612. properties:
  613. path:
  614. default: ldap
  615. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  616. type: string
  617. secretRef:
  618. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  619. properties:
  620. key:
  621. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  622. type: string
  623. name:
  624. description: The name of the Secret resource being referred to.
  625. type: string
  626. namespace:
  627. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  628. type: string
  629. type: object
  630. username:
  631. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  632. type: string
  633. required:
  634. - path
  635. - username
  636. type: object
  637. tokenSecretRef:
  638. description: TokenSecretRef authenticates with Vault by presenting a token.
  639. properties:
  640. key:
  641. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  642. type: string
  643. name:
  644. description: The name of the Secret resource being referred to.
  645. type: string
  646. namespace:
  647. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  648. type: string
  649. type: object
  650. type: object
  651. caBundle:
  652. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  653. format: byte
  654. type: string
  655. caProvider:
  656. description: The provider for the CA bundle to use to validate Vault server certificate.
  657. properties:
  658. key:
  659. description: The key the value inside of the provider type to use, only used with "Secret" type
  660. type: string
  661. name:
  662. description: The name of the object located at the provider type.
  663. type: string
  664. namespace:
  665. description: The namespace the Provider type is in.
  666. type: string
  667. type:
  668. description: The type of provider to use such as "Secret", or "ConfigMap".
  669. enum:
  670. - Secret
  671. - ConfigMap
  672. type: string
  673. required:
  674. - name
  675. - type
  676. type: object
  677. forwardInconsistent:
  678. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  679. type: boolean
  680. namespace:
  681. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  682. type: string
  683. path:
  684. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  685. type: string
  686. readYourWrites:
  687. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  688. type: boolean
  689. server:
  690. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  691. type: string
  692. version:
  693. default: v2
  694. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  695. enum:
  696. - v1
  697. - v2
  698. type: string
  699. required:
  700. - auth
  701. - server
  702. type: object
  703. webhook:
  704. description: Webhook configures this store to sync secrets using a generic templated webhook
  705. properties:
  706. body:
  707. description: Body
  708. type: string
  709. caBundle:
  710. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  711. format: byte
  712. type: string
  713. caProvider:
  714. description: The provider for the CA bundle to use to validate webhook server certificate.
  715. properties:
  716. key:
  717. description: The key the value inside of the provider type to use, only used with "Secret" type
  718. type: string
  719. name:
  720. description: The name of the object located at the provider type.
  721. type: string
  722. namespace:
  723. description: The namespace the Provider type is in.
  724. type: string
  725. type:
  726. description: The type of provider to use such as "Secret", or "ConfigMap".
  727. enum:
  728. - Secret
  729. - ConfigMap
  730. type: string
  731. required:
  732. - name
  733. - type
  734. type: object
  735. headers:
  736. additionalProperties:
  737. type: string
  738. description: Headers
  739. type: object
  740. method:
  741. description: Webhook Method
  742. type: string
  743. result:
  744. description: Result formatting
  745. properties:
  746. jsonPath:
  747. description: Json path of return value
  748. type: string
  749. type: object
  750. secrets:
  751. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  752. items:
  753. properties:
  754. name:
  755. description: Name of this secret in templates
  756. type: string
  757. secretRef:
  758. description: Secret ref to fill in credentials
  759. properties:
  760. key:
  761. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  762. type: string
  763. name:
  764. description: The name of the Secret resource being referred to.
  765. type: string
  766. namespace:
  767. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  768. type: string
  769. type: object
  770. required:
  771. - name
  772. - secretRef
  773. type: object
  774. type: array
  775. timeout:
  776. description: Timeout
  777. type: string
  778. url:
  779. description: Webhook url to call
  780. type: string
  781. required:
  782. - result
  783. - url
  784. type: object
  785. yandexlockbox:
  786. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  787. properties:
  788. apiEndpoint:
  789. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  790. type: string
  791. auth:
  792. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  793. properties:
  794. authorizedKeySecretRef:
  795. description: The authorized key used for authentication
  796. properties:
  797. key:
  798. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  799. type: string
  800. name:
  801. description: The name of the Secret resource being referred to.
  802. type: string
  803. namespace:
  804. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  805. type: string
  806. type: object
  807. type: object
  808. caProvider:
  809. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  810. properties:
  811. certSecretRef:
  812. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  813. properties:
  814. key:
  815. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  816. type: string
  817. name:
  818. description: The name of the Secret resource being referred to.
  819. type: string
  820. namespace:
  821. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  822. type: string
  823. type: object
  824. type: object
  825. required:
  826. - auth
  827. type: object
  828. type: object
  829. retrySettings:
  830. description: Used to configure http retries if failed
  831. properties:
  832. maxRetries:
  833. format: int32
  834. type: integer
  835. retryInterval:
  836. type: string
  837. type: object
  838. required:
  839. - provider
  840. type: object
  841. status:
  842. description: SecretStoreStatus defines the observed state of the SecretStore.
  843. properties:
  844. conditions:
  845. items:
  846. properties:
  847. lastTransitionTime:
  848. format: date-time
  849. type: string
  850. message:
  851. type: string
  852. reason:
  853. type: string
  854. status:
  855. type: string
  856. type:
  857. type: string
  858. required:
  859. - status
  860. - type
  861. type: object
  862. type: array
  863. type: object
  864. type: object
  865. served: true
  866. storage: false
  867. subresources:
  868. status: {}
  869. - additionalPrinterColumns:
  870. - jsonPath: .metadata.creationTimestamp
  871. name: AGE
  872. type: date
  873. name: v1beta1
  874. schema:
  875. openAPIV3Schema:
  876. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  877. properties:
  878. apiVersion:
  879. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  880. type: string
  881. kind:
  882. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  883. type: string
  884. metadata:
  885. type: object
  886. spec:
  887. description: SecretStoreSpec defines the desired state of SecretStore.
  888. properties:
  889. controller:
  890. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  891. type: string
  892. provider:
  893. description: Used to configure the provider. Only one provider may be set
  894. maxProperties: 1
  895. minProperties: 1
  896. properties:
  897. akeyless:
  898. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  899. properties:
  900. akeylessGWApiURL:
  901. description: Akeyless GW API Url from which the secrets to be fetched from.
  902. type: string
  903. authSecretRef:
  904. description: Auth configures how the operator authenticates with Akeyless.
  905. properties:
  906. secretRef:
  907. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  908. properties:
  909. accessID:
  910. description: The SecretAccessID is used for authentication
  911. properties:
  912. key:
  913. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  914. type: string
  915. name:
  916. description: The name of the Secret resource being referred to.
  917. type: string
  918. namespace:
  919. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  920. type: string
  921. type: object
  922. accessType:
  923. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  924. properties:
  925. key:
  926. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  927. type: string
  928. name:
  929. description: The name of the Secret resource being referred to.
  930. type: string
  931. namespace:
  932. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  933. type: string
  934. type: object
  935. accessTypeParam:
  936. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  937. properties:
  938. key:
  939. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  940. type: string
  941. name:
  942. description: The name of the Secret resource being referred to.
  943. type: string
  944. namespace:
  945. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  946. type: string
  947. type: object
  948. type: object
  949. required:
  950. - secretRef
  951. type: object
  952. required:
  953. - akeylessGWApiURL
  954. - authSecretRef
  955. type: object
  956. alibaba:
  957. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  958. properties:
  959. auth:
  960. description: AlibabaAuth contains a secretRef for credentials.
  961. properties:
  962. secretRef:
  963. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  964. properties:
  965. accessKeyIDSecretRef:
  966. description: The AccessKeyID is used for authentication
  967. properties:
  968. key:
  969. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  970. type: string
  971. name:
  972. description: The name of the Secret resource being referred to.
  973. type: string
  974. namespace:
  975. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  976. type: string
  977. type: object
  978. accessKeySecretSecretRef:
  979. description: The AccessKeySecret is used for authentication
  980. properties:
  981. key:
  982. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  983. type: string
  984. name:
  985. description: The name of the Secret resource being referred to.
  986. type: string
  987. namespace:
  988. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  989. type: string
  990. type: object
  991. required:
  992. - accessKeyIDSecretRef
  993. - accessKeySecretSecretRef
  994. type: object
  995. required:
  996. - secretRef
  997. type: object
  998. endpoint:
  999. type: string
  1000. regionID:
  1001. description: Alibaba Region to be used for the provider
  1002. type: string
  1003. required:
  1004. - auth
  1005. - regionID
  1006. type: object
  1007. aws:
  1008. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  1009. properties:
  1010. auth:
  1011. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1012. properties:
  1013. jwt:
  1014. description: Authenticate against AWS using service account tokens.
  1015. properties:
  1016. serviceAccountRef:
  1017. description: A reference to a ServiceAccount resource.
  1018. properties:
  1019. name:
  1020. description: The name of the ServiceAccount resource being referred to.
  1021. type: string
  1022. namespace:
  1023. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1024. type: string
  1025. required:
  1026. - name
  1027. type: object
  1028. type: object
  1029. secretRef:
  1030. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  1031. properties:
  1032. accessKeyIDSecretRef:
  1033. description: The AccessKeyID is used for authentication
  1034. properties:
  1035. key:
  1036. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1037. type: string
  1038. name:
  1039. description: The name of the Secret resource being referred to.
  1040. type: string
  1041. namespace:
  1042. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1043. type: string
  1044. type: object
  1045. secretAccessKeySecretRef:
  1046. description: The SecretAccessKey is used for authentication
  1047. properties:
  1048. key:
  1049. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1050. type: string
  1051. name:
  1052. description: The name of the Secret resource being referred to.
  1053. type: string
  1054. namespace:
  1055. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1056. type: string
  1057. type: object
  1058. type: object
  1059. type: object
  1060. region:
  1061. description: AWS Region to be used for the provider
  1062. type: string
  1063. role:
  1064. description: Role is a Role ARN which the SecretManager provider will assume
  1065. type: string
  1066. service:
  1067. description: Service defines which service should be used to fetch the secrets
  1068. enum:
  1069. - SecretsManager
  1070. - ParameterStore
  1071. type: string
  1072. required:
  1073. - region
  1074. - service
  1075. type: object
  1076. azurekv:
  1077. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  1078. properties:
  1079. authSecretRef:
  1080. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  1081. properties:
  1082. clientId:
  1083. description: The Azure clientId of the service principle used for authentication.
  1084. properties:
  1085. key:
  1086. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1087. type: string
  1088. name:
  1089. description: The name of the Secret resource being referred to.
  1090. type: string
  1091. namespace:
  1092. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1093. type: string
  1094. type: object
  1095. clientSecret:
  1096. description: The Azure ClientSecret of the service principle used for authentication.
  1097. properties:
  1098. key:
  1099. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1100. type: string
  1101. name:
  1102. description: The name of the Secret resource being referred to.
  1103. type: string
  1104. namespace:
  1105. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1106. type: string
  1107. type: object
  1108. required:
  1109. - clientId
  1110. - clientSecret
  1111. type: object
  1112. authType:
  1113. default: ServicePrincipal
  1114. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  1115. enum:
  1116. - ServicePrincipal
  1117. - ManagedIdentity
  1118. type: string
  1119. identityId:
  1120. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1121. type: string
  1122. tenantId:
  1123. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1124. type: string
  1125. vaultUrl:
  1126. description: Vault Url from which the secrets to be fetched from.
  1127. type: string
  1128. required:
  1129. - vaultUrl
  1130. type: object
  1131. fake:
  1132. description: Fake configures a store with static key/value pairs
  1133. properties:
  1134. data:
  1135. items:
  1136. properties:
  1137. key:
  1138. type: string
  1139. value:
  1140. type: string
  1141. valueMap:
  1142. additionalProperties:
  1143. type: string
  1144. type: object
  1145. version:
  1146. type: string
  1147. required:
  1148. - key
  1149. type: object
  1150. type: array
  1151. required:
  1152. - data
  1153. type: object
  1154. gcpsm:
  1155. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1156. properties:
  1157. auth:
  1158. description: Auth defines the information necessary to authenticate against GCP
  1159. properties:
  1160. secretRef:
  1161. properties:
  1162. secretAccessKeySecretRef:
  1163. description: The SecretAccessKey is used for authentication
  1164. properties:
  1165. key:
  1166. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1167. type: string
  1168. name:
  1169. description: The name of the Secret resource being referred to.
  1170. type: string
  1171. namespace:
  1172. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1173. type: string
  1174. type: object
  1175. type: object
  1176. workloadIdentity:
  1177. properties:
  1178. clusterLocation:
  1179. type: string
  1180. clusterName:
  1181. type: string
  1182. serviceAccountRef:
  1183. description: A reference to a ServiceAccount resource.
  1184. properties:
  1185. name:
  1186. description: The name of the ServiceAccount resource being referred to.
  1187. type: string
  1188. namespace:
  1189. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1190. type: string
  1191. required:
  1192. - name
  1193. type: object
  1194. required:
  1195. - clusterLocation
  1196. - clusterName
  1197. - serviceAccountRef
  1198. type: object
  1199. type: object
  1200. projectID:
  1201. description: ProjectID project where secret is located
  1202. type: string
  1203. type: object
  1204. gitlab:
  1205. description: GItlab configures this store to sync secrets using Gitlab Variables provider
  1206. properties:
  1207. auth:
  1208. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1209. properties:
  1210. SecretRef:
  1211. properties:
  1212. accessToken:
  1213. description: AccessToken is used for authentication.
  1214. properties:
  1215. key:
  1216. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1217. type: string
  1218. name:
  1219. description: The name of the Secret resource being referred to.
  1220. type: string
  1221. namespace:
  1222. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1223. type: string
  1224. type: object
  1225. type: object
  1226. required:
  1227. - SecretRef
  1228. type: object
  1229. projectID:
  1230. description: ProjectID specifies a project where secrets are located.
  1231. type: string
  1232. url:
  1233. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1234. type: string
  1235. required:
  1236. - auth
  1237. type: object
  1238. ibm:
  1239. description: IBM configures this store to sync secrets using IBM Cloud provider
  1240. properties:
  1241. auth:
  1242. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1243. properties:
  1244. secretRef:
  1245. properties:
  1246. secretApiKeySecretRef:
  1247. description: The SecretAccessKey is used for authentication
  1248. properties:
  1249. key:
  1250. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1251. type: string
  1252. name:
  1253. description: The name of the Secret resource being referred to.
  1254. type: string
  1255. namespace:
  1256. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1257. type: string
  1258. type: object
  1259. type: object
  1260. required:
  1261. - secretRef
  1262. type: object
  1263. serviceUrl:
  1264. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1265. type: string
  1266. required:
  1267. - auth
  1268. type: object
  1269. oracle:
  1270. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1271. properties:
  1272. auth:
  1273. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  1274. properties:
  1275. secretRef:
  1276. description: SecretRef to pass through sensitive information.
  1277. properties:
  1278. fingerprint:
  1279. description: Fingerprint is the fingerprint of the API private key.
  1280. properties:
  1281. key:
  1282. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1283. type: string
  1284. name:
  1285. description: The name of the Secret resource being referred to.
  1286. type: string
  1287. namespace:
  1288. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1289. type: string
  1290. type: object
  1291. privatekey:
  1292. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  1293. properties:
  1294. key:
  1295. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1296. type: string
  1297. name:
  1298. description: The name of the Secret resource being referred to.
  1299. type: string
  1300. namespace:
  1301. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1302. type: string
  1303. type: object
  1304. required:
  1305. - fingerprint
  1306. - privatekey
  1307. type: object
  1308. tenancy:
  1309. description: Tenancy is the tenancy OCID where user is located.
  1310. type: string
  1311. user:
  1312. description: User is an access OCID specific to the account.
  1313. type: string
  1314. required:
  1315. - secretRef
  1316. - tenancy
  1317. - user
  1318. type: object
  1319. region:
  1320. description: Region is the region where vault is located.
  1321. type: string
  1322. vault:
  1323. description: Vault is the vault's OCID of the specific vault where secret is located.
  1324. type: string
  1325. required:
  1326. - region
  1327. - vault
  1328. type: object
  1329. vault:
  1330. description: Vault configures this store to sync secrets using Hashi provider
  1331. properties:
  1332. auth:
  1333. description: Auth configures how secret-manager authenticates with the Vault server.
  1334. properties:
  1335. appRole:
  1336. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  1337. properties:
  1338. path:
  1339. default: approle
  1340. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  1341. type: string
  1342. roleId:
  1343. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  1344. type: string
  1345. secretRef:
  1346. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  1347. properties:
  1348. key:
  1349. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1350. type: string
  1351. name:
  1352. description: The name of the Secret resource being referred to.
  1353. type: string
  1354. namespace:
  1355. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1356. type: string
  1357. type: object
  1358. required:
  1359. - path
  1360. - roleId
  1361. - secretRef
  1362. type: object
  1363. cert:
  1364. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  1365. properties:
  1366. clientCert:
  1367. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  1368. properties:
  1369. key:
  1370. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1371. type: string
  1372. name:
  1373. description: The name of the Secret resource being referred to.
  1374. type: string
  1375. namespace:
  1376. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1377. type: string
  1378. type: object
  1379. secretRef:
  1380. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  1381. properties:
  1382. key:
  1383. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1384. type: string
  1385. name:
  1386. description: The name of the Secret resource being referred to.
  1387. type: string
  1388. namespace:
  1389. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1390. type: string
  1391. type: object
  1392. type: object
  1393. jwt:
  1394. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  1395. properties:
  1396. path:
  1397. default: jwt
  1398. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  1399. type: string
  1400. role:
  1401. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  1402. type: string
  1403. secretRef:
  1404. description: SecretRef to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method
  1405. properties:
  1406. key:
  1407. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1408. type: string
  1409. name:
  1410. description: The name of the Secret resource being referred to.
  1411. type: string
  1412. namespace:
  1413. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1414. type: string
  1415. type: object
  1416. required:
  1417. - path
  1418. type: object
  1419. kubernetes:
  1420. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  1421. properties:
  1422. mountPath:
  1423. default: kubernetes
  1424. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  1425. type: string
  1426. role:
  1427. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  1428. type: string
  1429. secretRef:
  1430. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  1431. properties:
  1432. key:
  1433. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1434. type: string
  1435. name:
  1436. description: The name of the Secret resource being referred to.
  1437. type: string
  1438. namespace:
  1439. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1440. type: string
  1441. type: object
  1442. serviceAccountRef:
  1443. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  1444. properties:
  1445. name:
  1446. description: The name of the ServiceAccount resource being referred to.
  1447. type: string
  1448. namespace:
  1449. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1450. type: string
  1451. required:
  1452. - name
  1453. type: object
  1454. required:
  1455. - mountPath
  1456. - role
  1457. type: object
  1458. ldap:
  1459. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  1460. properties:
  1461. path:
  1462. default: ldap
  1463. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  1464. type: string
  1465. secretRef:
  1466. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  1467. properties:
  1468. key:
  1469. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1470. type: string
  1471. name:
  1472. description: The name of the Secret resource being referred to.
  1473. type: string
  1474. namespace:
  1475. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1476. type: string
  1477. type: object
  1478. username:
  1479. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  1480. type: string
  1481. required:
  1482. - path
  1483. - username
  1484. type: object
  1485. tokenSecretRef:
  1486. description: TokenSecretRef authenticates with Vault by presenting a token.
  1487. properties:
  1488. key:
  1489. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1490. type: string
  1491. name:
  1492. description: The name of the Secret resource being referred to.
  1493. type: string
  1494. namespace:
  1495. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1496. type: string
  1497. type: object
  1498. type: object
  1499. caBundle:
  1500. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  1501. format: byte
  1502. type: string
  1503. caProvider:
  1504. description: The provider for the CA bundle to use to validate Vault server certificate.
  1505. properties:
  1506. key:
  1507. description: The key the value inside of the provider type to use, only used with "Secret" type
  1508. type: string
  1509. name:
  1510. description: The name of the object located at the provider type.
  1511. type: string
  1512. namespace:
  1513. description: The namespace the Provider type is in.
  1514. type: string
  1515. type:
  1516. description: The type of provider to use such as "Secret", or "ConfigMap".
  1517. enum:
  1518. - Secret
  1519. - ConfigMap
  1520. type: string
  1521. required:
  1522. - name
  1523. - type
  1524. type: object
  1525. forwardInconsistent:
  1526. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1527. type: boolean
  1528. namespace:
  1529. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  1530. type: string
  1531. path:
  1532. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  1533. type: string
  1534. readYourWrites:
  1535. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  1536. type: boolean
  1537. server:
  1538. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  1539. type: string
  1540. version:
  1541. default: v2
  1542. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  1543. enum:
  1544. - v1
  1545. - v2
  1546. type: string
  1547. required:
  1548. - auth
  1549. - server
  1550. type: object
  1551. webhook:
  1552. description: Webhook configures this store to sync secrets using a generic templated webhook
  1553. properties:
  1554. body:
  1555. description: Body
  1556. type: string
  1557. caBundle:
  1558. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  1559. format: byte
  1560. type: string
  1561. caProvider:
  1562. description: The provider for the CA bundle to use to validate webhook server certificate.
  1563. properties:
  1564. key:
  1565. description: The key the value inside of the provider type to use, only used with "Secret" type
  1566. type: string
  1567. name:
  1568. description: The name of the object located at the provider type.
  1569. type: string
  1570. namespace:
  1571. description: The namespace the Provider type is in.
  1572. type: string
  1573. type:
  1574. description: The type of provider to use such as "Secret", or "ConfigMap".
  1575. enum:
  1576. - Secret
  1577. - ConfigMap
  1578. type: string
  1579. required:
  1580. - name
  1581. - type
  1582. type: object
  1583. headers:
  1584. additionalProperties:
  1585. type: string
  1586. description: Headers
  1587. type: object
  1588. method:
  1589. description: Webhook Method
  1590. type: string
  1591. result:
  1592. description: Result formatting
  1593. properties:
  1594. jsonPath:
  1595. description: Json path of return value
  1596. type: string
  1597. type: object
  1598. secrets:
  1599. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  1600. items:
  1601. properties:
  1602. name:
  1603. description: Name of this secret in templates
  1604. type: string
  1605. secretRef:
  1606. description: Secret ref to fill in credentials
  1607. properties:
  1608. key:
  1609. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1610. type: string
  1611. name:
  1612. description: The name of the Secret resource being referred to.
  1613. type: string
  1614. namespace:
  1615. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1616. type: string
  1617. type: object
  1618. required:
  1619. - name
  1620. - secretRef
  1621. type: object
  1622. type: array
  1623. timeout:
  1624. description: Timeout
  1625. type: string
  1626. url:
  1627. description: Webhook url to call
  1628. type: string
  1629. required:
  1630. - result
  1631. - url
  1632. type: object
  1633. yandexlockbox:
  1634. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  1635. properties:
  1636. apiEndpoint:
  1637. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1638. type: string
  1639. auth:
  1640. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  1641. properties:
  1642. authorizedKeySecretRef:
  1643. description: The authorized key used for authentication
  1644. properties:
  1645. key:
  1646. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1647. type: string
  1648. name:
  1649. description: The name of the Secret resource being referred to.
  1650. type: string
  1651. namespace:
  1652. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1653. type: string
  1654. type: object
  1655. type: object
  1656. caProvider:
  1657. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  1658. properties:
  1659. certSecretRef:
  1660. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1661. properties:
  1662. key:
  1663. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  1664. type: string
  1665. name:
  1666. description: The name of the Secret resource being referred to.
  1667. type: string
  1668. namespace:
  1669. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1670. type: string
  1671. type: object
  1672. type: object
  1673. required:
  1674. - auth
  1675. type: object
  1676. type: object
  1677. retrySettings:
  1678. description: Used to configure http retries if failed
  1679. properties:
  1680. maxRetries:
  1681. format: int32
  1682. type: integer
  1683. retryInterval:
  1684. type: string
  1685. type: object
  1686. required:
  1687. - provider
  1688. type: object
  1689. status:
  1690. description: SecretStoreStatus defines the observed state of the SecretStore.
  1691. properties:
  1692. conditions:
  1693. items:
  1694. properties:
  1695. lastTransitionTime:
  1696. format: date-time
  1697. type: string
  1698. message:
  1699. type: string
  1700. reason:
  1701. type: string
  1702. status:
  1703. type: string
  1704. type:
  1705. type: string
  1706. required:
  1707. - status
  1708. - type
  1709. type: object
  1710. type: array
  1711. type: object
  1712. type: object
  1713. served: true
  1714. storage: true
  1715. subresources:
  1716. status: {}
  1717. conversion:
  1718. strategy: Webhook
  1719. webhook:
  1720. conversionReviewVersions:
  1721. - v1
  1722. clientConfig:
  1723. caBundle: Cg==
  1724. service:
  1725. name: kubernetes
  1726. namespace: default
  1727. path: /convert
  1728. status:
  1729. acceptedNames:
  1730. kind: ""
  1731. plural: ""
  1732. conditions: []
  1733. storedVersions: []
  1734. ---
  1735. apiVersion: apiextensions.k8s.io/v1
  1736. kind: CustomResourceDefinition
  1737. metadata:
  1738. annotations:
  1739. controller-gen.kubebuilder.io/version: v0.8.0
  1740. creationTimestamp: null
  1741. name: externalsecrets.external-secrets.io
  1742. spec:
  1743. group: external-secrets.io
  1744. names:
  1745. categories:
  1746. - externalsecrets
  1747. kind: ExternalSecret
  1748. listKind: ExternalSecretList
  1749. plural: externalsecrets
  1750. shortNames:
  1751. - es
  1752. singular: externalsecret
  1753. scope: Namespaced
  1754. versions:
  1755. - additionalPrinterColumns:
  1756. - jsonPath: .spec.secretStoreRef.name
  1757. name: Store
  1758. type: string
  1759. - jsonPath: .spec.refreshInterval
  1760. name: Refresh Interval
  1761. type: string
  1762. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1763. name: Status
  1764. type: string
  1765. name: v1alpha1
  1766. schema:
  1767. openAPIV3Schema:
  1768. description: ExternalSecret is the Schema for the external-secrets API.
  1769. properties:
  1770. apiVersion:
  1771. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1772. type: string
  1773. kind:
  1774. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1775. type: string
  1776. metadata:
  1777. type: object
  1778. spec:
  1779. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  1780. properties:
  1781. data:
  1782. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  1783. items:
  1784. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  1785. properties:
  1786. remoteRef:
  1787. description: ExternalSecretDataRemoteRef defines Provider data location.
  1788. properties:
  1789. key:
  1790. description: Key is the key used in the Provider, mandatory
  1791. type: string
  1792. property:
  1793. description: Used to select a specific property of the Provider value (if a map), if supported
  1794. type: string
  1795. version:
  1796. description: Used to select a specific version of the Provider value, if supported
  1797. type: string
  1798. required:
  1799. - key
  1800. type: object
  1801. secretKey:
  1802. type: string
  1803. required:
  1804. - remoteRef
  1805. - secretKey
  1806. type: object
  1807. type: array
  1808. dataFrom:
  1809. description: DataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
  1810. items:
  1811. description: ExternalSecretDataRemoteRef defines Provider data location.
  1812. properties:
  1813. key:
  1814. description: Key is the key used in the Provider, mandatory
  1815. type: string
  1816. property:
  1817. description: Used to select a specific property of the Provider value (if a map), if supported
  1818. type: string
  1819. version:
  1820. description: Used to select a specific version of the Provider value, if supported
  1821. type: string
  1822. required:
  1823. - key
  1824. type: object
  1825. type: array
  1826. refreshInterval:
  1827. default: 1h
  1828. description: RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to fetch and create it once. Defaults to 1h.
  1829. type: string
  1830. secretStoreRef:
  1831. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1832. properties:
  1833. kind:
  1834. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  1835. type: string
  1836. name:
  1837. description: Name of the SecretStore resource
  1838. type: string
  1839. required:
  1840. - name
  1841. type: object
  1842. target:
  1843. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  1844. properties:
  1845. creationPolicy:
  1846. default: Owner
  1847. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  1848. type: string
  1849. immutable:
  1850. description: Immutable defines if the final secret will be immutable
  1851. type: boolean
  1852. name:
  1853. description: Name defines the name of the Secret resource to be managed This field is immutable Defaults to the .metadata.name of the ExternalSecret resource
  1854. type: string
  1855. template:
  1856. description: Template defines a blueprint for the created Secret resource.
  1857. properties:
  1858. data:
  1859. additionalProperties:
  1860. type: string
  1861. type: object
  1862. metadata:
  1863. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1864. properties:
  1865. annotations:
  1866. additionalProperties:
  1867. type: string
  1868. type: object
  1869. labels:
  1870. additionalProperties:
  1871. type: string
  1872. type: object
  1873. type: object
  1874. templateFrom:
  1875. items:
  1876. maxProperties: 1
  1877. minProperties: 1
  1878. properties:
  1879. configMap:
  1880. properties:
  1881. items:
  1882. items:
  1883. properties:
  1884. key:
  1885. type: string
  1886. required:
  1887. - key
  1888. type: object
  1889. type: array
  1890. name:
  1891. type: string
  1892. required:
  1893. - items
  1894. - name
  1895. type: object
  1896. secret:
  1897. properties:
  1898. items:
  1899. items:
  1900. properties:
  1901. key:
  1902. type: string
  1903. required:
  1904. - key
  1905. type: object
  1906. type: array
  1907. name:
  1908. type: string
  1909. required:
  1910. - items
  1911. - name
  1912. type: object
  1913. type: object
  1914. type: array
  1915. type:
  1916. type: string
  1917. type: object
  1918. type: object
  1919. required:
  1920. - secretStoreRef
  1921. - target
  1922. type: object
  1923. status:
  1924. properties:
  1925. conditions:
  1926. items:
  1927. properties:
  1928. lastTransitionTime:
  1929. format: date-time
  1930. type: string
  1931. message:
  1932. type: string
  1933. reason:
  1934. type: string
  1935. status:
  1936. type: string
  1937. type:
  1938. type: string
  1939. required:
  1940. - status
  1941. - type
  1942. type: object
  1943. type: array
  1944. refreshTime:
  1945. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  1946. format: date-time
  1947. nullable: true
  1948. type: string
  1949. syncedResourceVersion:
  1950. description: SyncedResourceVersion keeps track of the last synced version
  1951. type: string
  1952. type: object
  1953. type: object
  1954. served: true
  1955. storage: false
  1956. subresources:
  1957. status: {}
  1958. - additionalPrinterColumns:
  1959. - jsonPath: .spec.secretStoreRef.name
  1960. name: Store
  1961. type: string
  1962. - jsonPath: .spec.refreshInterval
  1963. name: Refresh Interval
  1964. type: string
  1965. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1966. name: Status
  1967. type: string
  1968. name: v1beta1
  1969. schema:
  1970. openAPIV3Schema:
  1971. description: ExternalSecret is the Schema for the external-secrets API.
  1972. properties:
  1973. apiVersion:
  1974. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1975. type: string
  1976. kind:
  1977. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1978. type: string
  1979. metadata:
  1980. type: object
  1981. spec:
  1982. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  1983. properties:
  1984. data:
  1985. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  1986. items:
  1987. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  1988. properties:
  1989. remoteRef:
  1990. description: ExternalSecretDataRemoteRef defines Provider data location.
  1991. properties:
  1992. key:
  1993. description: Key is the key used in the Provider, mandatory
  1994. type: string
  1995. property:
  1996. description: Used to select a specific property of the Provider value (if a map), if supported
  1997. type: string
  1998. version:
  1999. description: Used to select a specific version of the Provider value, if supported
  2000. type: string
  2001. required:
  2002. - key
  2003. type: object
  2004. secretKey:
  2005. type: string
  2006. required:
  2007. - remoteRef
  2008. - secretKey
  2009. type: object
  2010. type: array
  2011. dataFrom:
  2012. description: DataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
  2013. items:
  2014. properties:
  2015. extract:
  2016. description: Used to select a specific version and property from the secret
  2017. properties:
  2018. key:
  2019. description: Key is the key used in the Provider, mandatory
  2020. type: string
  2021. property:
  2022. description: Used to select a specific property of the Provider value (if a map), if supported
  2023. type: string
  2024. version:
  2025. description: Used to select a specific version of the Provider value, if supported
  2026. type: string
  2027. required:
  2028. - key
  2029. type: object
  2030. find:
  2031. description: Used to find secrets based on tags or regular expressions
  2032. properties:
  2033. name:
  2034. description: Key is the key used in the Provider
  2035. properties:
  2036. regexp:
  2037. description: Used to select multiple secrets based on a regular expression of the name
  2038. type: string
  2039. type: object
  2040. tags:
  2041. additionalProperties:
  2042. type: string
  2043. description: Used to select a specific version of the Provider value, if supported
  2044. type: object
  2045. type: object
  2046. type: object
  2047. type: array
  2048. refreshInterval:
  2049. default: 1h
  2050. description: RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to fetch and create it once. Defaults to 1h.
  2051. type: string
  2052. secretStoreRef:
  2053. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  2054. properties:
  2055. kind:
  2056. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore) Defaults to `SecretStore`
  2057. type: string
  2058. name:
  2059. description: Name of the SecretStore resource
  2060. type: string
  2061. required:
  2062. - name
  2063. type: object
  2064. target:
  2065. description: ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
  2066. properties:
  2067. creationPolicy:
  2068. default: Owner
  2069. description: CreationPolicy defines rules on how to create the resulting Secret Defaults to 'Owner'
  2070. type: string
  2071. immutable:
  2072. description: Immutable defines if the final secret will be immutable
  2073. type: boolean
  2074. name:
  2075. description: Name defines the name of the Secret resource to be managed This field is immutable Defaults to the .metadata.name of the ExternalSecret resource
  2076. type: string
  2077. template:
  2078. description: Template defines a blueprint for the created Secret resource.
  2079. properties:
  2080. data:
  2081. additionalProperties:
  2082. type: string
  2083. type: object
  2084. metadata:
  2085. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2086. properties:
  2087. annotations:
  2088. additionalProperties:
  2089. type: string
  2090. type: object
  2091. labels:
  2092. additionalProperties:
  2093. type: string
  2094. type: object
  2095. type: object
  2096. templateFrom:
  2097. items:
  2098. maxProperties: 1
  2099. minProperties: 1
  2100. properties:
  2101. configMap:
  2102. properties:
  2103. items:
  2104. items:
  2105. properties:
  2106. key:
  2107. type: string
  2108. required:
  2109. - key
  2110. type: object
  2111. type: array
  2112. name:
  2113. type: string
  2114. required:
  2115. - items
  2116. - name
  2117. type: object
  2118. secret:
  2119. properties:
  2120. items:
  2121. items:
  2122. properties:
  2123. key:
  2124. type: string
  2125. required:
  2126. - key
  2127. type: object
  2128. type: array
  2129. name:
  2130. type: string
  2131. required:
  2132. - items
  2133. - name
  2134. type: object
  2135. type: object
  2136. type: array
  2137. type:
  2138. type: string
  2139. type: object
  2140. type: object
  2141. required:
  2142. - secretStoreRef
  2143. - target
  2144. type: object
  2145. status:
  2146. properties:
  2147. conditions:
  2148. items:
  2149. properties:
  2150. lastTransitionTime:
  2151. format: date-time
  2152. type: string
  2153. message:
  2154. type: string
  2155. reason:
  2156. type: string
  2157. status:
  2158. type: string
  2159. type:
  2160. type: string
  2161. required:
  2162. - status
  2163. - type
  2164. type: object
  2165. type: array
  2166. refreshTime:
  2167. description: refreshTime is the time and date the external secret was fetched and the target secret updated
  2168. format: date-time
  2169. nullable: true
  2170. type: string
  2171. syncedResourceVersion:
  2172. description: SyncedResourceVersion keeps track of the last synced version
  2173. type: string
  2174. type: object
  2175. type: object
  2176. served: true
  2177. storage: true
  2178. subresources:
  2179. status: {}
  2180. conversion:
  2181. strategy: Webhook
  2182. webhook:
  2183. conversionReviewVersions:
  2184. - v1
  2185. clientConfig:
  2186. caBundle: Cg==
  2187. service:
  2188. name: kubernetes
  2189. namespace: default
  2190. path: /convert
  2191. status:
  2192. acceptedNames:
  2193. kind: ""
  2194. plural: ""
  2195. conditions: []
  2196. storedVersions: []
  2197. ---
  2198. apiVersion: apiextensions.k8s.io/v1
  2199. kind: CustomResourceDefinition
  2200. metadata:
  2201. annotations:
  2202. controller-gen.kubebuilder.io/version: v0.8.0
  2203. creationTimestamp: null
  2204. name: secretstores.external-secrets.io
  2205. spec:
  2206. group: external-secrets.io
  2207. names:
  2208. categories:
  2209. - externalsecrets
  2210. kind: SecretStore
  2211. listKind: SecretStoreList
  2212. plural: secretstores
  2213. shortNames:
  2214. - ss
  2215. singular: secretstore
  2216. scope: Namespaced
  2217. versions:
  2218. - additionalPrinterColumns:
  2219. - jsonPath: .metadata.creationTimestamp
  2220. name: AGE
  2221. type: date
  2222. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2223. name: Status
  2224. type: string
  2225. name: v1alpha1
  2226. schema:
  2227. openAPIV3Schema:
  2228. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2229. properties:
  2230. apiVersion:
  2231. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2232. type: string
  2233. kind:
  2234. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2235. type: string
  2236. metadata:
  2237. type: object
  2238. spec:
  2239. description: SecretStoreSpec defines the desired state of SecretStore.
  2240. properties:
  2241. controller:
  2242. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  2243. type: string
  2244. provider:
  2245. description: Used to configure the provider. Only one provider may be set
  2246. maxProperties: 1
  2247. minProperties: 1
  2248. properties:
  2249. akeyless:
  2250. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2251. properties:
  2252. akeylessGWApiURL:
  2253. description: Akeyless GW API Url from which the secrets to be fetched from.
  2254. type: string
  2255. authSecretRef:
  2256. description: Auth configures how the operator authenticates with Akeyless.
  2257. properties:
  2258. secretRef:
  2259. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  2260. properties:
  2261. accessID:
  2262. description: The SecretAccessID is used for authentication
  2263. properties:
  2264. key:
  2265. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2266. type: string
  2267. name:
  2268. description: The name of the Secret resource being referred to.
  2269. type: string
  2270. namespace:
  2271. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2272. type: string
  2273. type: object
  2274. accessType:
  2275. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2276. properties:
  2277. key:
  2278. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2279. type: string
  2280. name:
  2281. description: The name of the Secret resource being referred to.
  2282. type: string
  2283. namespace:
  2284. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2285. type: string
  2286. type: object
  2287. accessTypeParam:
  2288. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2289. properties:
  2290. key:
  2291. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2292. type: string
  2293. name:
  2294. description: The name of the Secret resource being referred to.
  2295. type: string
  2296. namespace:
  2297. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2298. type: string
  2299. type: object
  2300. type: object
  2301. required:
  2302. - secretRef
  2303. type: object
  2304. required:
  2305. - akeylessGWApiURL
  2306. - authSecretRef
  2307. type: object
  2308. alibaba:
  2309. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  2310. properties:
  2311. auth:
  2312. description: AlibabaAuth contains a secretRef for credentials.
  2313. properties:
  2314. secretRef:
  2315. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  2316. properties:
  2317. accessKeyIDSecretRef:
  2318. description: The AccessKeyID is used for authentication
  2319. properties:
  2320. key:
  2321. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2322. type: string
  2323. name:
  2324. description: The name of the Secret resource being referred to.
  2325. type: string
  2326. namespace:
  2327. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2328. type: string
  2329. type: object
  2330. accessKeySecretSecretRef:
  2331. description: The AccessKeySecret is used for authentication
  2332. properties:
  2333. key:
  2334. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2335. type: string
  2336. name:
  2337. description: The name of the Secret resource being referred to.
  2338. type: string
  2339. namespace:
  2340. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2341. type: string
  2342. type: object
  2343. required:
  2344. - accessKeyIDSecretRef
  2345. - accessKeySecretSecretRef
  2346. type: object
  2347. required:
  2348. - secretRef
  2349. type: object
  2350. endpoint:
  2351. type: string
  2352. regionID:
  2353. description: Alibaba Region to be used for the provider
  2354. type: string
  2355. required:
  2356. - auth
  2357. - regionID
  2358. type: object
  2359. aws:
  2360. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2361. properties:
  2362. auth:
  2363. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  2364. properties:
  2365. jwt:
  2366. description: Authenticate against AWS using service account tokens.
  2367. properties:
  2368. serviceAccountRef:
  2369. description: A reference to a ServiceAccount resource.
  2370. properties:
  2371. name:
  2372. description: The name of the ServiceAccount resource being referred to.
  2373. type: string
  2374. namespace:
  2375. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2376. type: string
  2377. required:
  2378. - name
  2379. type: object
  2380. type: object
  2381. secretRef:
  2382. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2383. properties:
  2384. accessKeyIDSecretRef:
  2385. description: The AccessKeyID is used for authentication
  2386. properties:
  2387. key:
  2388. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2389. type: string
  2390. name:
  2391. description: The name of the Secret resource being referred to.
  2392. type: string
  2393. namespace:
  2394. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2395. type: string
  2396. type: object
  2397. secretAccessKeySecretRef:
  2398. description: The SecretAccessKey is used for authentication
  2399. properties:
  2400. key:
  2401. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2402. type: string
  2403. name:
  2404. description: The name of the Secret resource being referred to.
  2405. type: string
  2406. namespace:
  2407. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2408. type: string
  2409. type: object
  2410. type: object
  2411. type: object
  2412. region:
  2413. description: AWS Region to be used for the provider
  2414. type: string
  2415. role:
  2416. description: Role is a Role ARN which the SecretManager provider will assume
  2417. type: string
  2418. service:
  2419. description: Service defines which service should be used to fetch the secrets
  2420. enum:
  2421. - SecretsManager
  2422. - ParameterStore
  2423. type: string
  2424. required:
  2425. - region
  2426. - service
  2427. type: object
  2428. azurekv:
  2429. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2430. properties:
  2431. authSecretRef:
  2432. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  2433. properties:
  2434. clientId:
  2435. description: The Azure clientId of the service principle used for authentication.
  2436. properties:
  2437. key:
  2438. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2439. type: string
  2440. name:
  2441. description: The name of the Secret resource being referred to.
  2442. type: string
  2443. namespace:
  2444. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2445. type: string
  2446. type: object
  2447. clientSecret:
  2448. description: The Azure ClientSecret of the service principle used for authentication.
  2449. properties:
  2450. key:
  2451. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2452. type: string
  2453. name:
  2454. description: The name of the Secret resource being referred to.
  2455. type: string
  2456. namespace:
  2457. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2458. type: string
  2459. type: object
  2460. required:
  2461. - clientId
  2462. - clientSecret
  2463. type: object
  2464. authType:
  2465. default: ServicePrincipal
  2466. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  2467. enum:
  2468. - ServicePrincipal
  2469. - ManagedIdentity
  2470. type: string
  2471. identityId:
  2472. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2473. type: string
  2474. tenantId:
  2475. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  2476. type: string
  2477. vaultUrl:
  2478. description: Vault Url from which the secrets to be fetched from.
  2479. type: string
  2480. required:
  2481. - vaultUrl
  2482. type: object
  2483. fake:
  2484. description: Fake configures a store with static key/value pairs
  2485. properties:
  2486. data:
  2487. items:
  2488. properties:
  2489. key:
  2490. type: string
  2491. value:
  2492. type: string
  2493. valueMap:
  2494. additionalProperties:
  2495. type: string
  2496. type: object
  2497. version:
  2498. type: string
  2499. required:
  2500. - key
  2501. type: object
  2502. type: array
  2503. required:
  2504. - data
  2505. type: object
  2506. gcpsm:
  2507. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  2508. properties:
  2509. auth:
  2510. description: Auth defines the information necessary to authenticate against GCP
  2511. properties:
  2512. secretRef:
  2513. properties:
  2514. secretAccessKeySecretRef:
  2515. description: The SecretAccessKey is used for authentication
  2516. properties:
  2517. key:
  2518. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2519. type: string
  2520. name:
  2521. description: The name of the Secret resource being referred to.
  2522. type: string
  2523. namespace:
  2524. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2525. type: string
  2526. type: object
  2527. type: object
  2528. workloadIdentity:
  2529. properties:
  2530. clusterLocation:
  2531. type: string
  2532. clusterName:
  2533. type: string
  2534. serviceAccountRef:
  2535. description: A reference to a ServiceAccount resource.
  2536. properties:
  2537. name:
  2538. description: The name of the ServiceAccount resource being referred to.
  2539. type: string
  2540. namespace:
  2541. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2542. type: string
  2543. required:
  2544. - name
  2545. type: object
  2546. required:
  2547. - clusterLocation
  2548. - clusterName
  2549. - serviceAccountRef
  2550. type: object
  2551. type: object
  2552. projectID:
  2553. description: ProjectID project where secret is located
  2554. type: string
  2555. type: object
  2556. gitlab:
  2557. description: GItlab configures this store to sync secrets using Gitlab Variables provider
  2558. properties:
  2559. auth:
  2560. description: Auth configures how secret-manager authenticates with a GitLab instance.
  2561. properties:
  2562. SecretRef:
  2563. properties:
  2564. accessToken:
  2565. description: AccessToken is used for authentication.
  2566. properties:
  2567. key:
  2568. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2569. type: string
  2570. name:
  2571. description: The name of the Secret resource being referred to.
  2572. type: string
  2573. namespace:
  2574. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2575. type: string
  2576. type: object
  2577. type: object
  2578. required:
  2579. - SecretRef
  2580. type: object
  2581. projectID:
  2582. description: ProjectID specifies a project where secrets are located.
  2583. type: string
  2584. url:
  2585. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  2586. type: string
  2587. required:
  2588. - auth
  2589. type: object
  2590. ibm:
  2591. description: IBM configures this store to sync secrets using IBM Cloud provider
  2592. properties:
  2593. auth:
  2594. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  2595. properties:
  2596. secretRef:
  2597. properties:
  2598. secretApiKeySecretRef:
  2599. description: The SecretAccessKey is used for authentication
  2600. properties:
  2601. key:
  2602. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2603. type: string
  2604. name:
  2605. description: The name of the Secret resource being referred to.
  2606. type: string
  2607. namespace:
  2608. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2609. type: string
  2610. type: object
  2611. type: object
  2612. required:
  2613. - secretRef
  2614. type: object
  2615. serviceUrl:
  2616. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  2617. type: string
  2618. required:
  2619. - auth
  2620. type: object
  2621. oracle:
  2622. description: Oracle configures this store to sync secrets using Oracle Vault provider
  2623. properties:
  2624. auth:
  2625. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  2626. properties:
  2627. secretRef:
  2628. description: SecretRef to pass through sensitive information.
  2629. properties:
  2630. fingerprint:
  2631. description: Fingerprint is the fingerprint of the API private key.
  2632. properties:
  2633. key:
  2634. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2635. type: string
  2636. name:
  2637. description: The name of the Secret resource being referred to.
  2638. type: string
  2639. namespace:
  2640. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2641. type: string
  2642. type: object
  2643. privatekey:
  2644. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  2645. properties:
  2646. key:
  2647. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2648. type: string
  2649. name:
  2650. description: The name of the Secret resource being referred to.
  2651. type: string
  2652. namespace:
  2653. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2654. type: string
  2655. type: object
  2656. required:
  2657. - fingerprint
  2658. - privatekey
  2659. type: object
  2660. tenancy:
  2661. description: Tenancy is the tenancy OCID where user is located.
  2662. type: string
  2663. user:
  2664. description: User is an access OCID specific to the account.
  2665. type: string
  2666. required:
  2667. - secretRef
  2668. - tenancy
  2669. - user
  2670. type: object
  2671. region:
  2672. description: Region is the region where vault is located.
  2673. type: string
  2674. vault:
  2675. description: Vault is the vault's OCID of the specific vault where secret is located.
  2676. type: string
  2677. required:
  2678. - region
  2679. - vault
  2680. type: object
  2681. vault:
  2682. description: Vault configures this store to sync secrets using Hashi provider
  2683. properties:
  2684. auth:
  2685. description: Auth configures how secret-manager authenticates with the Vault server.
  2686. properties:
  2687. appRole:
  2688. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  2689. properties:
  2690. path:
  2691. default: approle
  2692. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  2693. type: string
  2694. roleId:
  2695. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  2696. type: string
  2697. secretRef:
  2698. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  2699. properties:
  2700. key:
  2701. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2702. type: string
  2703. name:
  2704. description: The name of the Secret resource being referred to.
  2705. type: string
  2706. namespace:
  2707. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2708. type: string
  2709. type: object
  2710. required:
  2711. - path
  2712. - roleId
  2713. - secretRef
  2714. type: object
  2715. cert:
  2716. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  2717. properties:
  2718. clientCert:
  2719. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  2720. properties:
  2721. key:
  2722. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2723. type: string
  2724. name:
  2725. description: The name of the Secret resource being referred to.
  2726. type: string
  2727. namespace:
  2728. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2729. type: string
  2730. type: object
  2731. secretRef:
  2732. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  2733. properties:
  2734. key:
  2735. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2736. type: string
  2737. name:
  2738. description: The name of the Secret resource being referred to.
  2739. type: string
  2740. namespace:
  2741. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2742. type: string
  2743. type: object
  2744. type: object
  2745. jwt:
  2746. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  2747. properties:
  2748. path:
  2749. default: jwt
  2750. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  2751. type: string
  2752. role:
  2753. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  2754. type: string
  2755. secretRef:
  2756. description: SecretRef to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method
  2757. properties:
  2758. key:
  2759. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2760. type: string
  2761. name:
  2762. description: The name of the Secret resource being referred to.
  2763. type: string
  2764. namespace:
  2765. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2766. type: string
  2767. type: object
  2768. required:
  2769. - path
  2770. type: object
  2771. kubernetes:
  2772. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  2773. properties:
  2774. mountPath:
  2775. default: kubernetes
  2776. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  2777. type: string
  2778. role:
  2779. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  2780. type: string
  2781. secretRef:
  2782. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  2783. properties:
  2784. key:
  2785. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2786. type: string
  2787. name:
  2788. description: The name of the Secret resource being referred to.
  2789. type: string
  2790. namespace:
  2791. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2792. type: string
  2793. type: object
  2794. serviceAccountRef:
  2795. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  2796. properties:
  2797. name:
  2798. description: The name of the ServiceAccount resource being referred to.
  2799. type: string
  2800. namespace:
  2801. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2802. type: string
  2803. required:
  2804. - name
  2805. type: object
  2806. required:
  2807. - mountPath
  2808. - role
  2809. type: object
  2810. ldap:
  2811. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  2812. properties:
  2813. path:
  2814. default: ldap
  2815. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  2816. type: string
  2817. secretRef:
  2818. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  2819. properties:
  2820. key:
  2821. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2822. type: string
  2823. name:
  2824. description: The name of the Secret resource being referred to.
  2825. type: string
  2826. namespace:
  2827. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2828. type: string
  2829. type: object
  2830. username:
  2831. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  2832. type: string
  2833. required:
  2834. - path
  2835. - username
  2836. type: object
  2837. tokenSecretRef:
  2838. description: TokenSecretRef authenticates with Vault by presenting a token.
  2839. properties:
  2840. key:
  2841. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2842. type: string
  2843. name:
  2844. description: The name of the Secret resource being referred to.
  2845. type: string
  2846. namespace:
  2847. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2848. type: string
  2849. type: object
  2850. type: object
  2851. caBundle:
  2852. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  2853. format: byte
  2854. type: string
  2855. caProvider:
  2856. description: The provider for the CA bundle to use to validate Vault server certificate.
  2857. properties:
  2858. key:
  2859. description: The key the value inside of the provider type to use, only used with "Secret" type
  2860. type: string
  2861. name:
  2862. description: The name of the object located at the provider type.
  2863. type: string
  2864. namespace:
  2865. description: The namespace the Provider type is in.
  2866. type: string
  2867. type:
  2868. description: The type of provider to use such as "Secret", or "ConfigMap".
  2869. enum:
  2870. - Secret
  2871. - ConfigMap
  2872. type: string
  2873. required:
  2874. - name
  2875. - type
  2876. type: object
  2877. forwardInconsistent:
  2878. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  2879. type: boolean
  2880. namespace:
  2881. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  2882. type: string
  2883. path:
  2884. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  2885. type: string
  2886. readYourWrites:
  2887. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  2888. type: boolean
  2889. server:
  2890. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  2891. type: string
  2892. version:
  2893. default: v2
  2894. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  2895. enum:
  2896. - v1
  2897. - v2
  2898. type: string
  2899. required:
  2900. - auth
  2901. - server
  2902. type: object
  2903. webhook:
  2904. description: Webhook configures this store to sync secrets using a generic templated webhook
  2905. properties:
  2906. body:
  2907. description: Body
  2908. type: string
  2909. caBundle:
  2910. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  2911. format: byte
  2912. type: string
  2913. caProvider:
  2914. description: The provider for the CA bundle to use to validate webhook server certificate.
  2915. properties:
  2916. key:
  2917. description: The key the value inside of the provider type to use, only used with "Secret" type
  2918. type: string
  2919. name:
  2920. description: The name of the object located at the provider type.
  2921. type: string
  2922. namespace:
  2923. description: The namespace the Provider type is in.
  2924. type: string
  2925. type:
  2926. description: The type of provider to use such as "Secret", or "ConfigMap".
  2927. enum:
  2928. - Secret
  2929. - ConfigMap
  2930. type: string
  2931. required:
  2932. - name
  2933. - type
  2934. type: object
  2935. headers:
  2936. additionalProperties:
  2937. type: string
  2938. description: Headers
  2939. type: object
  2940. method:
  2941. description: Webhook Method
  2942. type: string
  2943. result:
  2944. description: Result formatting
  2945. properties:
  2946. jsonPath:
  2947. description: Json path of return value
  2948. type: string
  2949. type: object
  2950. secrets:
  2951. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  2952. items:
  2953. properties:
  2954. name:
  2955. description: Name of this secret in templates
  2956. type: string
  2957. secretRef:
  2958. description: Secret ref to fill in credentials
  2959. properties:
  2960. key:
  2961. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2962. type: string
  2963. name:
  2964. description: The name of the Secret resource being referred to.
  2965. type: string
  2966. namespace:
  2967. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2968. type: string
  2969. type: object
  2970. required:
  2971. - name
  2972. - secretRef
  2973. type: object
  2974. type: array
  2975. timeout:
  2976. description: Timeout
  2977. type: string
  2978. url:
  2979. description: Webhook url to call
  2980. type: string
  2981. required:
  2982. - result
  2983. - url
  2984. type: object
  2985. yandexlockbox:
  2986. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2987. properties:
  2988. apiEndpoint:
  2989. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2990. type: string
  2991. auth:
  2992. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2993. properties:
  2994. authorizedKeySecretRef:
  2995. description: The authorized key used for authentication
  2996. properties:
  2997. key:
  2998. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  2999. type: string
  3000. name:
  3001. description: The name of the Secret resource being referred to.
  3002. type: string
  3003. namespace:
  3004. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3005. type: string
  3006. type: object
  3007. type: object
  3008. caProvider:
  3009. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  3010. properties:
  3011. certSecretRef:
  3012. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3013. properties:
  3014. key:
  3015. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3016. type: string
  3017. name:
  3018. description: The name of the Secret resource being referred to.
  3019. type: string
  3020. namespace:
  3021. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3022. type: string
  3023. type: object
  3024. type: object
  3025. required:
  3026. - auth
  3027. type: object
  3028. type: object
  3029. retrySettings:
  3030. description: Used to configure http retries if failed
  3031. properties:
  3032. maxRetries:
  3033. format: int32
  3034. type: integer
  3035. retryInterval:
  3036. type: string
  3037. type: object
  3038. required:
  3039. - provider
  3040. type: object
  3041. status:
  3042. description: SecretStoreStatus defines the observed state of the SecretStore.
  3043. properties:
  3044. conditions:
  3045. items:
  3046. properties:
  3047. lastTransitionTime:
  3048. format: date-time
  3049. type: string
  3050. message:
  3051. type: string
  3052. reason:
  3053. type: string
  3054. status:
  3055. type: string
  3056. type:
  3057. type: string
  3058. required:
  3059. - status
  3060. - type
  3061. type: object
  3062. type: array
  3063. type: object
  3064. type: object
  3065. served: true
  3066. storage: false
  3067. subresources:
  3068. status: {}
  3069. - additionalPrinterColumns:
  3070. - jsonPath: .metadata.creationTimestamp
  3071. name: AGE
  3072. type: date
  3073. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  3074. name: Status
  3075. type: string
  3076. name: v1beta1
  3077. schema:
  3078. openAPIV3Schema:
  3079. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  3080. properties:
  3081. apiVersion:
  3082. description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  3083. type: string
  3084. kind:
  3085. description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  3086. type: string
  3087. metadata:
  3088. type: object
  3089. spec:
  3090. description: SecretStoreSpec defines the desired state of SecretStore.
  3091. properties:
  3092. controller:
  3093. description: 'Used to select the correct KES controller (think: ingress.ingressClassName) The KES controller is instantiated with a specific controller name and filters ES based on this property'
  3094. type: string
  3095. provider:
  3096. description: Used to configure the provider. Only one provider may be set
  3097. maxProperties: 1
  3098. minProperties: 1
  3099. properties:
  3100. akeyless:
  3101. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  3102. properties:
  3103. akeylessGWApiURL:
  3104. description: Akeyless GW API Url from which the secrets to be fetched from.
  3105. type: string
  3106. authSecretRef:
  3107. description: Auth configures how the operator authenticates with Akeyless.
  3108. properties:
  3109. secretRef:
  3110. description: 'AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.'
  3111. properties:
  3112. accessID:
  3113. description: The SecretAccessID is used for authentication
  3114. properties:
  3115. key:
  3116. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3117. type: string
  3118. name:
  3119. description: The name of the Secret resource being referred to.
  3120. type: string
  3121. namespace:
  3122. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3123. type: string
  3124. type: object
  3125. accessType:
  3126. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3127. properties:
  3128. key:
  3129. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3130. type: string
  3131. name:
  3132. description: The name of the Secret resource being referred to.
  3133. type: string
  3134. namespace:
  3135. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3136. type: string
  3137. type: object
  3138. accessTypeParam:
  3139. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3140. properties:
  3141. key:
  3142. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3143. type: string
  3144. name:
  3145. description: The name of the Secret resource being referred to.
  3146. type: string
  3147. namespace:
  3148. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3149. type: string
  3150. type: object
  3151. type: object
  3152. required:
  3153. - secretRef
  3154. type: object
  3155. required:
  3156. - akeylessGWApiURL
  3157. - authSecretRef
  3158. type: object
  3159. alibaba:
  3160. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  3161. properties:
  3162. auth:
  3163. description: AlibabaAuth contains a secretRef for credentials.
  3164. properties:
  3165. secretRef:
  3166. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  3167. properties:
  3168. accessKeyIDSecretRef:
  3169. description: The AccessKeyID is used for authentication
  3170. properties:
  3171. key:
  3172. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3173. type: string
  3174. name:
  3175. description: The name of the Secret resource being referred to.
  3176. type: string
  3177. namespace:
  3178. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3179. type: string
  3180. type: object
  3181. accessKeySecretSecretRef:
  3182. description: The AccessKeySecret is used for authentication
  3183. properties:
  3184. key:
  3185. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3186. type: string
  3187. name:
  3188. description: The name of the Secret resource being referred to.
  3189. type: string
  3190. namespace:
  3191. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3192. type: string
  3193. type: object
  3194. required:
  3195. - accessKeyIDSecretRef
  3196. - accessKeySecretSecretRef
  3197. type: object
  3198. required:
  3199. - secretRef
  3200. type: object
  3201. endpoint:
  3202. type: string
  3203. regionID:
  3204. description: Alibaba Region to be used for the provider
  3205. type: string
  3206. required:
  3207. - auth
  3208. - regionID
  3209. type: object
  3210. aws:
  3211. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  3212. properties:
  3213. auth:
  3214. description: 'Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  3215. properties:
  3216. jwt:
  3217. description: Authenticate against AWS using service account tokens.
  3218. properties:
  3219. serviceAccountRef:
  3220. description: A reference to a ServiceAccount resource.
  3221. properties:
  3222. name:
  3223. description: The name of the ServiceAccount resource being referred to.
  3224. type: string
  3225. namespace:
  3226. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3227. type: string
  3228. required:
  3229. - name
  3230. type: object
  3231. type: object
  3232. secretRef:
  3233. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  3234. properties:
  3235. accessKeyIDSecretRef:
  3236. description: The AccessKeyID is used for authentication
  3237. properties:
  3238. key:
  3239. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3240. type: string
  3241. name:
  3242. description: The name of the Secret resource being referred to.
  3243. type: string
  3244. namespace:
  3245. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3246. type: string
  3247. type: object
  3248. secretAccessKeySecretRef:
  3249. description: The SecretAccessKey is used for authentication
  3250. properties:
  3251. key:
  3252. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3253. type: string
  3254. name:
  3255. description: The name of the Secret resource being referred to.
  3256. type: string
  3257. namespace:
  3258. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3259. type: string
  3260. type: object
  3261. type: object
  3262. type: object
  3263. region:
  3264. description: AWS Region to be used for the provider
  3265. type: string
  3266. role:
  3267. description: Role is a Role ARN which the SecretManager provider will assume
  3268. type: string
  3269. service:
  3270. description: Service defines which service should be used to fetch the secrets
  3271. enum:
  3272. - SecretsManager
  3273. - ParameterStore
  3274. type: string
  3275. required:
  3276. - region
  3277. - service
  3278. type: object
  3279. azurekv:
  3280. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  3281. properties:
  3282. authSecretRef:
  3283. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  3284. properties:
  3285. clientId:
  3286. description: The Azure clientId of the service principle used for authentication.
  3287. properties:
  3288. key:
  3289. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3290. type: string
  3291. name:
  3292. description: The name of the Secret resource being referred to.
  3293. type: string
  3294. namespace:
  3295. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3296. type: string
  3297. type: object
  3298. clientSecret:
  3299. description: The Azure ClientSecret of the service principle used for authentication.
  3300. properties:
  3301. key:
  3302. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3303. type: string
  3304. name:
  3305. description: The name of the Secret resource being referred to.
  3306. type: string
  3307. namespace:
  3308. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3309. type: string
  3310. type: object
  3311. required:
  3312. - clientId
  3313. - clientSecret
  3314. type: object
  3315. authType:
  3316. default: ServicePrincipal
  3317. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  3318. enum:
  3319. - ServicePrincipal
  3320. - ManagedIdentity
  3321. type: string
  3322. identityId:
  3323. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3324. type: string
  3325. tenantId:
  3326. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  3327. type: string
  3328. vaultUrl:
  3329. description: Vault Url from which the secrets to be fetched from.
  3330. type: string
  3331. required:
  3332. - vaultUrl
  3333. type: object
  3334. fake:
  3335. description: Fake configures a store with static key/value pairs
  3336. properties:
  3337. data:
  3338. items:
  3339. properties:
  3340. key:
  3341. type: string
  3342. value:
  3343. type: string
  3344. valueMap:
  3345. additionalProperties:
  3346. type: string
  3347. type: object
  3348. version:
  3349. type: string
  3350. required:
  3351. - key
  3352. type: object
  3353. type: array
  3354. required:
  3355. - data
  3356. type: object
  3357. gcpsm:
  3358. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  3359. properties:
  3360. auth:
  3361. description: Auth defines the information necessary to authenticate against GCP
  3362. properties:
  3363. secretRef:
  3364. properties:
  3365. secretAccessKeySecretRef:
  3366. description: The SecretAccessKey is used for authentication
  3367. properties:
  3368. key:
  3369. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3370. type: string
  3371. name:
  3372. description: The name of the Secret resource being referred to.
  3373. type: string
  3374. namespace:
  3375. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3376. type: string
  3377. type: object
  3378. type: object
  3379. workloadIdentity:
  3380. properties:
  3381. clusterLocation:
  3382. type: string
  3383. clusterName:
  3384. type: string
  3385. serviceAccountRef:
  3386. description: A reference to a ServiceAccount resource.
  3387. properties:
  3388. name:
  3389. description: The name of the ServiceAccount resource being referred to.
  3390. type: string
  3391. namespace:
  3392. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3393. type: string
  3394. required:
  3395. - name
  3396. type: object
  3397. required:
  3398. - clusterLocation
  3399. - clusterName
  3400. - serviceAccountRef
  3401. type: object
  3402. type: object
  3403. projectID:
  3404. description: ProjectID project where secret is located
  3405. type: string
  3406. type: object
  3407. gitlab:
  3408. description: GItlab configures this store to sync secrets using Gitlab Variables provider
  3409. properties:
  3410. auth:
  3411. description: Auth configures how secret-manager authenticates with a GitLab instance.
  3412. properties:
  3413. SecretRef:
  3414. properties:
  3415. accessToken:
  3416. description: AccessToken is used for authentication.
  3417. properties:
  3418. key:
  3419. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3420. type: string
  3421. name:
  3422. description: The name of the Secret resource being referred to.
  3423. type: string
  3424. namespace:
  3425. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3426. type: string
  3427. type: object
  3428. type: object
  3429. required:
  3430. - SecretRef
  3431. type: object
  3432. projectID:
  3433. description: ProjectID specifies a project where secrets are located.
  3434. type: string
  3435. url:
  3436. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  3437. type: string
  3438. required:
  3439. - auth
  3440. type: object
  3441. ibm:
  3442. description: IBM configures this store to sync secrets using IBM Cloud provider
  3443. properties:
  3444. auth:
  3445. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  3446. properties:
  3447. secretRef:
  3448. properties:
  3449. secretApiKeySecretRef:
  3450. description: The SecretAccessKey is used for authentication
  3451. properties:
  3452. key:
  3453. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3454. type: string
  3455. name:
  3456. description: The name of the Secret resource being referred to.
  3457. type: string
  3458. namespace:
  3459. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3460. type: string
  3461. type: object
  3462. type: object
  3463. required:
  3464. - secretRef
  3465. type: object
  3466. serviceUrl:
  3467. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  3468. type: string
  3469. required:
  3470. - auth
  3471. type: object
  3472. oracle:
  3473. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3474. properties:
  3475. auth:
  3476. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3477. properties:
  3478. secretRef:
  3479. description: SecretRef to pass through sensitive information.
  3480. properties:
  3481. fingerprint:
  3482. description: Fingerprint is the fingerprint of the API private key.
  3483. properties:
  3484. key:
  3485. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3486. type: string
  3487. name:
  3488. description: The name of the Secret resource being referred to.
  3489. type: string
  3490. namespace:
  3491. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3492. type: string
  3493. type: object
  3494. privatekey:
  3495. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3496. properties:
  3497. key:
  3498. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3499. type: string
  3500. name:
  3501. description: The name of the Secret resource being referred to.
  3502. type: string
  3503. namespace:
  3504. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3505. type: string
  3506. type: object
  3507. required:
  3508. - fingerprint
  3509. - privatekey
  3510. type: object
  3511. tenancy:
  3512. description: Tenancy is the tenancy OCID where user is located.
  3513. type: string
  3514. user:
  3515. description: User is an access OCID specific to the account.
  3516. type: string
  3517. required:
  3518. - secretRef
  3519. - tenancy
  3520. - user
  3521. type: object
  3522. region:
  3523. description: Region is the region where vault is located.
  3524. type: string
  3525. vault:
  3526. description: Vault is the vault's OCID of the specific vault where secret is located.
  3527. type: string
  3528. required:
  3529. - region
  3530. - vault
  3531. type: object
  3532. vault:
  3533. description: Vault configures this store to sync secrets using Hashi provider
  3534. properties:
  3535. auth:
  3536. description: Auth configures how secret-manager authenticates with the Vault server.
  3537. properties:
  3538. appRole:
  3539. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  3540. properties:
  3541. path:
  3542. default: approle
  3543. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  3544. type: string
  3545. roleId:
  3546. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  3547. type: string
  3548. secretRef:
  3549. description: Reference to a key in a Secret that contains the App Role secret used to authenticate with Vault. The `key` field must be specified and denotes which entry within the Secret resource is used as the app role secret.
  3550. properties:
  3551. key:
  3552. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3553. type: string
  3554. name:
  3555. description: The name of the Secret resource being referred to.
  3556. type: string
  3557. namespace:
  3558. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3559. type: string
  3560. type: object
  3561. required:
  3562. - path
  3563. - roleId
  3564. - secretRef
  3565. type: object
  3566. cert:
  3567. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  3568. properties:
  3569. clientCert:
  3570. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  3571. properties:
  3572. key:
  3573. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3574. type: string
  3575. name:
  3576. description: The name of the Secret resource being referred to.
  3577. type: string
  3578. namespace:
  3579. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3580. type: string
  3581. type: object
  3582. secretRef:
  3583. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  3584. properties:
  3585. key:
  3586. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3587. type: string
  3588. name:
  3589. description: The name of the Secret resource being referred to.
  3590. type: string
  3591. namespace:
  3592. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3593. type: string
  3594. type: object
  3595. type: object
  3596. jwt:
  3597. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  3598. properties:
  3599. path:
  3600. default: jwt
  3601. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  3602. type: string
  3603. role:
  3604. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  3605. type: string
  3606. secretRef:
  3607. description: SecretRef to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method
  3608. properties:
  3609. key:
  3610. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3611. type: string
  3612. name:
  3613. description: The name of the Secret resource being referred to.
  3614. type: string
  3615. namespace:
  3616. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3617. type: string
  3618. type: object
  3619. required:
  3620. - path
  3621. type: object
  3622. kubernetes:
  3623. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  3624. properties:
  3625. mountPath:
  3626. default: kubernetes
  3627. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  3628. type: string
  3629. role:
  3630. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  3631. type: string
  3632. secretRef:
  3633. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Vault. If a name is specified without a key, `token` is the default. If one is not specified, the one bound to the controller will be used.
  3634. properties:
  3635. key:
  3636. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3637. type: string
  3638. name:
  3639. description: The name of the Secret resource being referred to.
  3640. type: string
  3641. namespace:
  3642. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3643. type: string
  3644. type: object
  3645. serviceAccountRef:
  3646. description: Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead.
  3647. properties:
  3648. name:
  3649. description: The name of the ServiceAccount resource being referred to.
  3650. type: string
  3651. namespace:
  3652. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3653. type: string
  3654. required:
  3655. - name
  3656. type: object
  3657. required:
  3658. - mountPath
  3659. - role
  3660. type: object
  3661. ldap:
  3662. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  3663. properties:
  3664. path:
  3665. default: ldap
  3666. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  3667. type: string
  3668. secretRef:
  3669. description: SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
  3670. properties:
  3671. key:
  3672. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3673. type: string
  3674. name:
  3675. description: The name of the Secret resource being referred to.
  3676. type: string
  3677. namespace:
  3678. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3679. type: string
  3680. type: object
  3681. username:
  3682. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  3683. type: string
  3684. required:
  3685. - path
  3686. - username
  3687. type: object
  3688. tokenSecretRef:
  3689. description: TokenSecretRef authenticates with Vault by presenting a token.
  3690. properties:
  3691. key:
  3692. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3693. type: string
  3694. name:
  3695. description: The name of the Secret resource being referred to.
  3696. type: string
  3697. namespace:
  3698. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3699. type: string
  3700. type: object
  3701. type: object
  3702. caBundle:
  3703. description: PEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  3704. format: byte
  3705. type: string
  3706. caProvider:
  3707. description: The provider for the CA bundle to use to validate Vault server certificate.
  3708. properties:
  3709. key:
  3710. description: The key the value inside of the provider type to use, only used with "Secret" type
  3711. type: string
  3712. name:
  3713. description: The name of the object located at the provider type.
  3714. type: string
  3715. namespace:
  3716. description: The namespace the Provider type is in.
  3717. type: string
  3718. type:
  3719. description: The type of provider to use such as "Secret", or "ConfigMap".
  3720. enum:
  3721. - Secret
  3722. - ConfigMap
  3723. type: string
  3724. required:
  3725. - name
  3726. - type
  3727. type: object
  3728. forwardInconsistent:
  3729. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3730. type: boolean
  3731. namespace:
  3732. description: 'Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: "ns1". More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  3733. type: string
  3734. path:
  3735. description: 'Path is the mount path of the Vault KV backend endpoint, e.g: "secret". The v2 KV secret engine version specific "/data" path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.'
  3736. type: string
  3737. readYourWrites:
  3738. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  3739. type: boolean
  3740. server:
  3741. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  3742. type: string
  3743. version:
  3744. default: v2
  3745. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  3746. enum:
  3747. - v1
  3748. - v2
  3749. type: string
  3750. required:
  3751. - auth
  3752. - server
  3753. type: object
  3754. webhook:
  3755. description: Webhook configures this store to sync secrets using a generic templated webhook
  3756. properties:
  3757. body:
  3758. description: Body
  3759. type: string
  3760. caBundle:
  3761. description: PEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
  3762. format: byte
  3763. type: string
  3764. caProvider:
  3765. description: The provider for the CA bundle to use to validate webhook server certificate.
  3766. properties:
  3767. key:
  3768. description: The key the value inside of the provider type to use, only used with "Secret" type
  3769. type: string
  3770. name:
  3771. description: The name of the object located at the provider type.
  3772. type: string
  3773. namespace:
  3774. description: The namespace the Provider type is in.
  3775. type: string
  3776. type:
  3777. description: The type of provider to use such as "Secret", or "ConfigMap".
  3778. enum:
  3779. - Secret
  3780. - ConfigMap
  3781. type: string
  3782. required:
  3783. - name
  3784. - type
  3785. type: object
  3786. headers:
  3787. additionalProperties:
  3788. type: string
  3789. description: Headers
  3790. type: object
  3791. method:
  3792. description: Webhook Method
  3793. type: string
  3794. result:
  3795. description: Result formatting
  3796. properties:
  3797. jsonPath:
  3798. description: Json path of return value
  3799. type: string
  3800. type: object
  3801. secrets:
  3802. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  3803. items:
  3804. properties:
  3805. name:
  3806. description: Name of this secret in templates
  3807. type: string
  3808. secretRef:
  3809. description: Secret ref to fill in credentials
  3810. properties:
  3811. key:
  3812. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3813. type: string
  3814. name:
  3815. description: The name of the Secret resource being referred to.
  3816. type: string
  3817. namespace:
  3818. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3819. type: string
  3820. type: object
  3821. required:
  3822. - name
  3823. - secretRef
  3824. type: object
  3825. type: array
  3826. timeout:
  3827. description: Timeout
  3828. type: string
  3829. url:
  3830. description: Webhook url to call
  3831. type: string
  3832. required:
  3833. - result
  3834. - url
  3835. type: object
  3836. yandexlockbox:
  3837. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  3838. properties:
  3839. apiEndpoint:
  3840. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3841. type: string
  3842. auth:
  3843. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  3844. properties:
  3845. authorizedKeySecretRef:
  3846. description: The authorized key used for authentication
  3847. properties:
  3848. key:
  3849. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3850. type: string
  3851. name:
  3852. description: The name of the Secret resource being referred to.
  3853. type: string
  3854. namespace:
  3855. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3856. type: string
  3857. type: object
  3858. type: object
  3859. caProvider:
  3860. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  3861. properties:
  3862. certSecretRef:
  3863. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  3864. properties:
  3865. key:
  3866. description: The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be defaulted, in others it may be required.
  3867. type: string
  3868. name:
  3869. description: The name of the Secret resource being referred to.
  3870. type: string
  3871. namespace:
  3872. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  3873. type: string
  3874. type: object
  3875. type: object
  3876. required:
  3877. - auth
  3878. type: object
  3879. type: object
  3880. retrySettings:
  3881. description: Used to configure http retries if failed
  3882. properties:
  3883. maxRetries:
  3884. format: int32
  3885. type: integer
  3886. retryInterval:
  3887. type: string
  3888. type: object
  3889. required:
  3890. - provider
  3891. type: object
  3892. status:
  3893. description: SecretStoreStatus defines the observed state of the SecretStore.
  3894. properties:
  3895. conditions:
  3896. items:
  3897. properties:
  3898. lastTransitionTime:
  3899. format: date-time
  3900. type: string
  3901. message:
  3902. type: string
  3903. reason:
  3904. type: string
  3905. status:
  3906. type: string
  3907. type:
  3908. type: string
  3909. required:
  3910. - status
  3911. - type
  3912. type: object
  3913. type: array
  3914. type: object
  3915. type: object
  3916. served: true
  3917. storage: true
  3918. subresources:
  3919. status: {}
  3920. conversion:
  3921. strategy: Webhook
  3922. webhook:
  3923. conversionReviewVersions:
  3924. - v1
  3925. clientConfig:
  3926. caBundle: Cg==
  3927. service:
  3928. name: kubernetes
  3929. namespace: default
  3930. path: /convert
  3931. status:
  3932. acceptedNames:
  3933. kind: ""
  3934. plural: ""
  3935. conditions: []
  3936. storedVersions: []