index.html 78 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="prev" href="../chef/">
  7. <link rel="next" href="../google-secrets-manager/">
  8. <link rel="icon" href="../../assets/images/favicon.png">
  9. <meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.9">
  10. <title>CyberArk Conjur - External Secrets Operator</title>
  11. <link rel="stylesheet" href="../../assets/stylesheets/main.f2e4d321.min.css">
  12. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  13. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
  14. <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
  15. <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
  16. <script id="__analytics">function __md_analytics(){function n(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],n("js",new Date),n("config","G-QP38TD8K7V"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){this.value&&n("event","search",{search_term:this.value})}),document$.subscribe(function(){var a=document.forms.feedback;if(void 0!==a)for(var e of a.querySelectorAll("[type=submit]"))e.addEventListener("click",function(e){e.preventDefault();var t=document.location.pathname,e=this.getAttribute("data-md-value");n("event","feedback",{page:t,data:e}),a.firstElementChild.disabled=!0;e=a.querySelector(".md-feedback__note [data-md-value='"+e+"']");e&&(e.hidden=!1)}),a.hidden=!1}),location$.subscribe(function(e){n("config","G-QP38TD8K7V",{page_path:e.pathname})})});var e=document.createElement("script");e.async=!0,e.src="https://www.googletagmanager.com/gtag/js?id=G-QP38TD8K7V",document.getElementById("__analytics").insertAdjacentElement("afterEnd",e)}</script>
  17. <script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
  18. </head>
  19. <body dir="ltr">
  20. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  21. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  22. <label class="md-overlay" for="__drawer"></label>
  23. <div data-md-component="skip">
  24. <a href="#conjur-provider" class="md-skip">
  25. Skip to content
  26. </a>
  27. </div>
  28. <div data-md-component="announce">
  29. </div>
  30. <div data-md-color-scheme="default" data-md-component="outdated" hidden>
  31. <aside class="md-banner md-banner--warning">
  32. <div class="md-banner__inner md-grid md-typeset">
  33. You're not viewing the latest version.
  34. <a href="../../..">
  35. <strong>Click here to go to latest.</strong>
  36. </a>
  37. </div>
  38. <script>var el=document.querySelector("[data-md-component=outdated]"),outdated=__md_get("__outdated",sessionStorage);!0===outdated&&el&&(el.hidden=!1)</script>
  39. </aside>
  40. </div>
  41. <header class="md-header" data-md-component="header">
  42. <nav class="md-header__inner md-grid" aria-label="Header">
  43. <a href="../.." title="External Secrets Operator" class="md-header__button md-logo" aria-label="External Secrets Operator" data-md-component="logo">
  44. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  45. </a>
  46. <label class="md-header__button md-icon" for="__drawer">
  47. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
  48. </label>
  49. <div class="md-header__title" data-md-component="header-title">
  50. <div class="md-header__ellipsis">
  51. <div class="md-header__topic">
  52. <span class="md-ellipsis">
  53. External Secrets Operator
  54. </span>
  55. </div>
  56. <div class="md-header__topic" data-md-component="header-topic">
  57. <span class="md-ellipsis">
  58. CyberArk Conjur
  59. </span>
  60. </div>
  61. </div>
  62. </div>
  63. <script>var media,input,key,value,palette=__md_get("__palette");if(palette&&palette.color){"(prefers-color-scheme)"===palette.color.media&&(media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']"),palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent"));for([key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
  64. <label class="md-header__button md-icon" for="__search">
  65. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  66. </label>
  67. <div class="md-search" data-md-component="search" role="dialog">
  68. <label class="md-search__overlay" for="__search"></label>
  69. <div class="md-search__inner" role="search">
  70. <form class="md-search__form" name="search">
  71. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
  72. <label class="md-search__icon md-icon" for="__search">
  73. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
  74. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
  75. </label>
  76. <nav class="md-search__options" aria-label="Search">
  77. <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
  78. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
  79. </button>
  80. </nav>
  81. </form>
  82. <div class="md-search__output">
  83. <div class="md-search__scrollwrap" data-md-scrollfix>
  84. <div class="md-search-result" data-md-component="search-result">
  85. <div class="md-search-result__meta">
  86. Initializing search
  87. </div>
  88. <ol class="md-search-result__list" role="presentation"></ol>
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. </div>
  94. <div class="md-header__source">
  95. <a href="https://github.com/external-secrets/external-secrets" title="Go to repository" class="md-source" data-md-component="source">
  96. <div class="md-source__icon md-icon">
  97. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  98. </div>
  99. <div class="md-source__repository">
  100. External Secrets Operator
  101. </div>
  102. </a>
  103. </div>
  104. </nav>
  105. </header>
  106. <div class="md-container" data-md-component="container">
  107. <nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
  108. <div class="md-grid">
  109. <ul class="md-tabs__list">
  110. <li class="md-tabs__item">
  111. <a href="../.." class="md-tabs__link">
  112. Introduction
  113. </a>
  114. </li>
  115. <li class="md-tabs__item">
  116. <a href="../../api/components/" class="md-tabs__link">
  117. API
  118. </a>
  119. </li>
  120. <li class="md-tabs__item">
  121. <a href="../../guides/introduction/" class="md-tabs__link">
  122. Guides
  123. </a>
  124. </li>
  125. <li class="md-tabs__item md-tabs__item--active">
  126. <a href="../aws-secrets-manager/" class="md-tabs__link">
  127. Provider
  128. </a>
  129. </li>
  130. <li class="md-tabs__item">
  131. <a href="../../examples/gitops-using-fluxcd/" class="md-tabs__link">
  132. Examples
  133. </a>
  134. </li>
  135. <li class="md-tabs__item">
  136. <a href="../../contributing/devguide/" class="md-tabs__link">
  137. Community
  138. </a>
  139. </li>
  140. </ul>
  141. </div>
  142. </nav>
  143. <main class="md-main" data-md-component="main">
  144. <div class="md-main__inner md-grid">
  145. <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
  146. <div class="md-sidebar__scrollwrap">
  147. <div class="md-sidebar__inner">
  148. <nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
  149. <label class="md-nav__title" for="__drawer">
  150. <a href="../.." title="External Secrets Operator" class="md-nav__button md-logo" aria-label="External Secrets Operator" data-md-component="logo">
  151. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
  152. </a>
  153. External Secrets Operator
  154. </label>
  155. <div class="md-nav__source">
  156. <a href="https://github.com/external-secrets/external-secrets" title="Go to repository" class="md-source" data-md-component="source">
  157. <div class="md-source__icon md-icon">
  158. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  159. </div>
  160. <div class="md-source__repository">
  161. External Secrets Operator
  162. </div>
  163. </a>
  164. </div>
  165. <ul class="md-nav__list" data-md-scrollfix>
  166. <li class="md-nav__item md-nav__item--nested">
  167. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_1" >
  168. <div class="md-nav__link md-nav__container">
  169. <a href="../.." class="md-nav__link ">
  170. <span class="md-ellipsis">
  171. Introduction
  172. </span>
  173. </a>
  174. <label class="md-nav__link " for="__nav_1" id="__nav_1_label" tabindex="0">
  175. <span class="md-nav__icon md-icon"></span>
  176. </label>
  177. </div>
  178. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
  179. <label class="md-nav__title" for="__nav_1">
  180. <span class="md-nav__icon md-icon"></span>
  181. Introduction
  182. </label>
  183. <ul class="md-nav__list" data-md-scrollfix>
  184. <li class="md-nav__item">
  185. <a href="../../introduction/overview/" class="md-nav__link">
  186. <span class="md-ellipsis">
  187. Overview
  188. </span>
  189. </a>
  190. </li>
  191. <li class="md-nav__item">
  192. <a href="../../introduction/getting-started/" class="md-nav__link">
  193. <span class="md-ellipsis">
  194. Getting started
  195. </span>
  196. </a>
  197. </li>
  198. <li class="md-nav__item">
  199. <a href="../../introduction/faq/" class="md-nav__link">
  200. <span class="md-ellipsis">
  201. FAQ
  202. </span>
  203. </a>
  204. </li>
  205. <li class="md-nav__item">
  206. <a href="../../introduction/stability-support/" class="md-nav__link">
  207. <span class="md-ellipsis">
  208. Stability and Support
  209. </span>
  210. </a>
  211. </li>
  212. <li class="md-nav__item">
  213. <a href="../../introduction/deprecation-policy/" class="md-nav__link">
  214. <span class="md-ellipsis">
  215. Deprecation Policy
  216. </span>
  217. </a>
  218. </li>
  219. </ul>
  220. </nav>
  221. </li>
  222. <li class="md-nav__item md-nav__item--nested">
  223. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2" >
  224. <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
  225. <span class="md-ellipsis">
  226. API
  227. </span>
  228. <span class="md-nav__icon md-icon"></span>
  229. </label>
  230. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
  231. <label class="md-nav__title" for="__nav_2">
  232. <span class="md-nav__icon md-icon"></span>
  233. API
  234. </label>
  235. <ul class="md-nav__list" data-md-scrollfix>
  236. <li class="md-nav__item">
  237. <a href="../../api/components/" class="md-nav__link">
  238. <span class="md-ellipsis">
  239. Components
  240. </span>
  241. </a>
  242. </li>
  243. <li class="md-nav__item md-nav__item--nested">
  244. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2_2" >
  245. <label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
  246. <span class="md-ellipsis">
  247. Core Resources
  248. </span>
  249. <span class="md-nav__icon md-icon"></span>
  250. </label>
  251. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="false">
  252. <label class="md-nav__title" for="__nav_2_2">
  253. <span class="md-nav__icon md-icon"></span>
  254. Core Resources
  255. </label>
  256. <ul class="md-nav__list" data-md-scrollfix>
  257. <li class="md-nav__item">
  258. <a href="../../api/externalsecret/" class="md-nav__link">
  259. <span class="md-ellipsis">
  260. ExternalSecret
  261. </span>
  262. </a>
  263. </li>
  264. <li class="md-nav__item">
  265. <a href="../../api/secretstore/" class="md-nav__link">
  266. <span class="md-ellipsis">
  267. SecretStore
  268. </span>
  269. </a>
  270. </li>
  271. <li class="md-nav__item">
  272. <a href="../../api/clustersecretstore/" class="md-nav__link">
  273. <span class="md-ellipsis">
  274. ClusterSecretStore
  275. </span>
  276. </a>
  277. </li>
  278. <li class="md-nav__item">
  279. <a href="../../api/clusterexternalsecret/" class="md-nav__link">
  280. <span class="md-ellipsis">
  281. ClusterExternalSecret
  282. </span>
  283. </a>
  284. </li>
  285. <li class="md-nav__item">
  286. <a href="../../api/pushsecret/" class="md-nav__link">
  287. <span class="md-ellipsis">
  288. PushSecret
  289. </span>
  290. </a>
  291. </li>
  292. </ul>
  293. </nav>
  294. </li>
  295. <li class="md-nav__item md-nav__item--nested">
  296. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2_3" >
  297. <div class="md-nav__link md-nav__container">
  298. <a href="../../api/generator/" class="md-nav__link ">
  299. <span class="md-ellipsis">
  300. Generators
  301. </span>
  302. </a>
  303. <label class="md-nav__link " for="__nav_2_3" id="__nav_2_3_label" tabindex="0">
  304. <span class="md-nav__icon md-icon"></span>
  305. </label>
  306. </div>
  307. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_3_label" aria-expanded="false">
  308. <label class="md-nav__title" for="__nav_2_3">
  309. <span class="md-nav__icon md-icon"></span>
  310. Generators
  311. </label>
  312. <ul class="md-nav__list" data-md-scrollfix>
  313. <li class="md-nav__item">
  314. <a href="../../api/generator/acr/" class="md-nav__link">
  315. <span class="md-ellipsis">
  316. Azure Container Registry
  317. </span>
  318. </a>
  319. </li>
  320. <li class="md-nav__item">
  321. <a href="../../api/generator/ecr/" class="md-nav__link">
  322. <span class="md-ellipsis">
  323. AWS Elastic Container Registry
  324. </span>
  325. </a>
  326. </li>
  327. <li class="md-nav__item">
  328. <a href="../../api/generator/gcr/" class="md-nav__link">
  329. <span class="md-ellipsis">
  330. Google Container Registry
  331. </span>
  332. </a>
  333. </li>
  334. <li class="md-nav__item">
  335. <a href="../../api/generator/vault/" class="md-nav__link">
  336. <span class="md-ellipsis">
  337. Vault Dynamic Secret
  338. </span>
  339. </a>
  340. </li>
  341. <li class="md-nav__item">
  342. <a href="../../api/generator/password/" class="md-nav__link">
  343. <span class="md-ellipsis">
  344. Password
  345. </span>
  346. </a>
  347. </li>
  348. <li class="md-nav__item">
  349. <a href="../../api/generator/fake/" class="md-nav__link">
  350. <span class="md-ellipsis">
  351. Fake
  352. </span>
  353. </a>
  354. </li>
  355. <li class="md-nav__item">
  356. <a href="../../api/generator/webhook/" class="md-nav__link">
  357. <span class="md-ellipsis">
  358. Webhook
  359. </span>
  360. </a>
  361. </li>
  362. </ul>
  363. </nav>
  364. </li>
  365. <li class="md-nav__item md-nav__item--nested">
  366. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_2_4" >
  367. <label class="md-nav__link" for="__nav_2_4" id="__nav_2_4_label" tabindex="0">
  368. <span class="md-ellipsis">
  369. Reference Docs
  370. </span>
  371. <span class="md-nav__icon md-icon"></span>
  372. </label>
  373. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_4_label" aria-expanded="false">
  374. <label class="md-nav__title" for="__nav_2_4">
  375. <span class="md-nav__icon md-icon"></span>
  376. Reference Docs
  377. </label>
  378. <ul class="md-nav__list" data-md-scrollfix>
  379. <li class="md-nav__item">
  380. <a href="../../api/spec/" class="md-nav__link">
  381. <span class="md-ellipsis">
  382. API specification
  383. </span>
  384. </a>
  385. </li>
  386. <li class="md-nav__item">
  387. <a href="../../api/controller-options/" class="md-nav__link">
  388. <span class="md-ellipsis">
  389. Controller Options
  390. </span>
  391. </a>
  392. </li>
  393. <li class="md-nav__item">
  394. <a href="../../api/metrics/" class="md-nav__link">
  395. <span class="md-ellipsis">
  396. Metrics
  397. </span>
  398. </a>
  399. </li>
  400. </ul>
  401. </nav>
  402. </li>
  403. </ul>
  404. </nav>
  405. </li>
  406. <li class="md-nav__item md-nav__item--nested">
  407. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
  408. <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
  409. <span class="md-ellipsis">
  410. Guides
  411. </span>
  412. <span class="md-nav__icon md-icon"></span>
  413. </label>
  414. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
  415. <label class="md-nav__title" for="__nav_3">
  416. <span class="md-nav__icon md-icon"></span>
  417. Guides
  418. </label>
  419. <ul class="md-nav__list" data-md-scrollfix>
  420. <li class="md-nav__item">
  421. <a href="../../guides/introduction/" class="md-nav__link">
  422. <span class="md-ellipsis">
  423. Introduction
  424. </span>
  425. </a>
  426. </li>
  427. <li class="md-nav__item md-nav__item--nested">
  428. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
  429. <label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
  430. <span class="md-ellipsis">
  431. External Secrets
  432. </span>
  433. <span class="md-nav__icon md-icon"></span>
  434. </label>
  435. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
  436. <label class="md-nav__title" for="__nav_3_2">
  437. <span class="md-nav__icon md-icon"></span>
  438. External Secrets
  439. </label>
  440. <ul class="md-nav__list" data-md-scrollfix>
  441. <li class="md-nav__item">
  442. <a href="../../guides/all-keys-one-secret/" class="md-nav__link">
  443. <span class="md-ellipsis">
  444. Extract structured data
  445. </span>
  446. </a>
  447. </li>
  448. <li class="md-nav__item">
  449. <a href="../../guides/getallsecrets/" class="md-nav__link">
  450. <span class="md-ellipsis">
  451. Find Secrets by Name or Metadata
  452. </span>
  453. </a>
  454. </li>
  455. <li class="md-nav__item">
  456. <a href="../../guides/datafrom-rewrite/" class="md-nav__link">
  457. <span class="md-ellipsis">
  458. Rewriting Keys
  459. </span>
  460. </a>
  461. </li>
  462. <li class="md-nav__item md-nav__item--nested">
  463. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2_4" >
  464. <label class="md-nav__link" for="__nav_3_2_4" id="__nav_3_2_4_label" tabindex="0">
  465. <span class="md-ellipsis">
  466. Advanced Templating
  467. </span>
  468. <span class="md-nav__icon md-icon"></span>
  469. </label>
  470. <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_2_4_label" aria-expanded="false">
  471. <label class="md-nav__title" for="__nav_3_2_4">
  472. <span class="md-nav__icon md-icon"></span>
  473. Advanced Templating
  474. </label>
  475. <ul class="md-nav__list" data-md-scrollfix>
  476. <li class="md-nav__item">
  477. <a href="../../guides/templating/" class="md-nav__link">
  478. <span class="md-ellipsis">
  479. v2
  480. </span>
  481. </a>
  482. </li>
  483. <li class="md-nav__item">
  484. <a href="../../guides/templating-v1/" class="md-nav__link">
  485. <span class="md-ellipsis">
  486. v1
  487. </span>
  488. </a>
  489. </li>
  490. </ul>
  491. </nav>
  492. </li>
  493. <li class="md-nav__item">
  494. <a href="../../guides/common-k8s-secret-types/" class="md-nav__link">
  495. <span class="md-ellipsis">
  496. Kubernetes Secret Types
  497. </span>
  498. </a>
  499. </li>
  500. <li class="md-nav__item">
  501. <a href="../../guides/ownership-deletion-policy/" class="md-nav__link">
  502. <span class="md-ellipsis">
  503. Lifecycle: ownership & deletion
  504. </span>
  505. </a>
  506. </li>
  507. <li class="md-nav__item">
  508. <a href="../../guides/decoding-strategy/" class="md-nav__link">
  509. <span class="md-ellipsis">
  510. Decoding Strategies
  511. </span>
  512. </a>
  513. </li>
  514. <li class="md-nav__item">
  515. <a href="../../guides/controller-class/" class="md-nav__link">
  516. <span class="md-ellipsis">
  517. Controller Classes
  518. </span>
  519. </a>
  520. </li>
  521. </ul>
  522. </nav>
  523. </li>
  524. <li class="md-nav__item">
  525. <a href="../../guides/generator/" class="md-nav__link">
  526. <span class="md-ellipsis">
  527. Generators
  528. </span>
  529. </a>
  530. </li>
  531. <li class="md-nav__item">
  532. <a href="../../guides/pushsecrets/" class="md-nav__link">
  533. <span class="md-ellipsis">
  534. Push Secrets
  535. </span>
  536. </a>
  537. </li>
  538. <li class="md-nav__item md-nav__item--nested">
  539. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_5" >
  540. <label class="md-nav__link" for="__nav_3_5" id="__nav_3_5_label" tabindex="0">
  541. <span class="md-ellipsis">
  542. Operations
  543. </span>
  544. <span class="md-nav__icon md-icon"></span>
  545. </label>
  546. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_5_label" aria-expanded="false">
  547. <label class="md-nav__title" for="__nav_3_5">
  548. <span class="md-nav__icon md-icon"></span>
  549. Operations
  550. </label>
  551. <ul class="md-nav__list" data-md-scrollfix>
  552. <li class="md-nav__item">
  553. <a href="../../guides/multi-tenancy/" class="md-nav__link">
  554. <span class="md-ellipsis">
  555. Multi Tenancy
  556. </span>
  557. </a>
  558. </li>
  559. <li class="md-nav__item">
  560. <a href="../../guides/security-best-practices/" class="md-nav__link">
  561. <span class="md-ellipsis">
  562. Security Best Practices
  563. </span>
  564. </a>
  565. </li>
  566. <li class="md-nav__item">
  567. <a href="../../guides/threat-model/" class="md-nav__link">
  568. <span class="md-ellipsis">
  569. Threat Model
  570. </span>
  571. </a>
  572. </li>
  573. <li class="md-nav__item">
  574. <a href="../../guides/v1beta1/" class="md-nav__link">
  575. <span class="md-ellipsis">
  576. Upgrading to v1beta1
  577. </span>
  578. </a>
  579. </li>
  580. <li class="md-nav__item">
  581. <a href="../../guides/using-latest-image/" class="md-nav__link">
  582. <span class="md-ellipsis">
  583. Using Latest Image
  584. </span>
  585. </a>
  586. </li>
  587. <li class="md-nav__item">
  588. <a href="../../guides/disable-cluster-features/" class="md-nav__link">
  589. <span class="md-ellipsis">
  590. Disable Cluster Features
  591. </span>
  592. </a>
  593. </li>
  594. </ul>
  595. </nav>
  596. </li>
  597. </ul>
  598. </nav>
  599. </li>
  600. <li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
  601. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" checked>
  602. <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="">
  603. <span class="md-ellipsis">
  604. Provider
  605. </span>
  606. <span class="md-nav__icon md-icon"></span>
  607. </label>
  608. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="true">
  609. <label class="md-nav__title" for="__nav_4">
  610. <span class="md-nav__icon md-icon"></span>
  611. Provider
  612. </label>
  613. <ul class="md-nav__list" data-md-scrollfix>
  614. <li class="md-nav__item">
  615. <a href="../aws-secrets-manager/" class="md-nav__link">
  616. <span class="md-ellipsis">
  617. AWS Secrets Manager
  618. </span>
  619. </a>
  620. </li>
  621. <li class="md-nav__item">
  622. <a href="../aws-parameter-store/" class="md-nav__link">
  623. <span class="md-ellipsis">
  624. AWS Parameter Store
  625. </span>
  626. </a>
  627. </li>
  628. <li class="md-nav__item">
  629. <a href="../azure-key-vault/" class="md-nav__link">
  630. <span class="md-ellipsis">
  631. Azure Key Vault
  632. </span>
  633. </a>
  634. </li>
  635. <li class="md-nav__item">
  636. <a href="../chef/" class="md-nav__link">
  637. <span class="md-ellipsis">
  638. Chef
  639. </span>
  640. </a>
  641. </li>
  642. <li class="md-nav__item md-nav__item--active">
  643. <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
  644. <label class="md-nav__link md-nav__link--active" for="__toc">
  645. <span class="md-ellipsis">
  646. CyberArk Conjur
  647. </span>
  648. <span class="md-nav__icon md-icon"></span>
  649. </label>
  650. <a href="./" class="md-nav__link md-nav__link--active">
  651. <span class="md-ellipsis">
  652. CyberArk Conjur
  653. </span>
  654. </a>
  655. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  656. <label class="md-nav__title" for="__toc">
  657. <span class="md-nav__icon md-icon"></span>
  658. Table of contents
  659. </label>
  660. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  661. <li class="md-nav__item">
  662. <a href="#conjur-provider" class="md-nav__link">
  663. <span class="md-ellipsis">
  664. Conjur Provider
  665. </span>
  666. </a>
  667. <nav class="md-nav" aria-label="Conjur Provider">
  668. <ul class="md-nav__list">
  669. <li class="md-nav__item">
  670. <a href="#pre-requirements" class="md-nav__link">
  671. <span class="md-ellipsis">
  672. Pre-requirements
  673. </span>
  674. </a>
  675. </li>
  676. <li class="md-nav__item">
  677. <a href="#certificate-for-conjur-server" class="md-nav__link">
  678. <span class="md-ellipsis">
  679. Certificate for Conjur server
  680. </span>
  681. </a>
  682. </li>
  683. <li class="md-nav__item">
  684. <a href="#external-secret-store-definition-with-apikey-authentication" class="md-nav__link">
  685. <span class="md-ellipsis">
  686. External Secret Store Definition with ApiKey Authentication
  687. </span>
  688. </a>
  689. <nav class="md-nav" aria-label="External Secret Store Definition with ApiKey Authentication">
  690. <ul class="md-nav__list">
  691. <li class="md-nav__item">
  692. <a href="#create-external-secret-store-definition" class="md-nav__link">
  693. <span class="md-ellipsis">
  694. Create External Secret Store Definition
  695. </span>
  696. </a>
  697. </li>
  698. <li class="md-nav__item">
  699. <a href="#create-kubernetes-secrets" class="md-nav__link">
  700. <span class="md-ellipsis">
  701. Create Kubernetes Secrets
  702. </span>
  703. </a>
  704. </li>
  705. </ul>
  706. </nav>
  707. </li>
  708. <li class="md-nav__item">
  709. <a href="#external-secret-store-with-jwt-authentication" class="md-nav__link">
  710. <span class="md-ellipsis">
  711. External Secret Store with JWT Authentication
  712. </span>
  713. </a>
  714. <nav class="md-nav" aria-label="External Secret Store with JWT Authentication">
  715. <ul class="md-nav__list">
  716. <li class="md-nav__item">
  717. <a href="#create-external-secret-store-definition_1" class="md-nav__link">
  718. <span class="md-ellipsis">
  719. Create External Secret Store Definition
  720. </span>
  721. </a>
  722. </li>
  723. </ul>
  724. </nav>
  725. </li>
  726. <li class="md-nav__item">
  727. <a href="#create-external-secret-definition" class="md-nav__link">
  728. <span class="md-ellipsis">
  729. Create External Secret Definition
  730. </span>
  731. </a>
  732. </li>
  733. <li class="md-nav__item">
  734. <a href="#create-the-external-secrets-store" class="md-nav__link">
  735. <span class="md-ellipsis">
  736. Create the External Secrets Store
  737. </span>
  738. </a>
  739. </li>
  740. <li class="md-nav__item">
  741. <a href="#create-the-external-secret" class="md-nav__link">
  742. <span class="md-ellipsis">
  743. Create the External Secret
  744. </span>
  745. </a>
  746. </li>
  747. <li class="md-nav__item">
  748. <a href="#getting-the-k8s-secret" class="md-nav__link">
  749. <span class="md-ellipsis">
  750. Getting the K8S Secret
  751. </span>
  752. </a>
  753. </li>
  754. <li class="md-nav__item">
  755. <a href="#support" class="md-nav__link">
  756. <span class="md-ellipsis">
  757. Support
  758. </span>
  759. </a>
  760. </li>
  761. </ul>
  762. </nav>
  763. </li>
  764. </ul>
  765. </nav>
  766. </li>
  767. <li class="md-nav__item">
  768. <a href="../google-secrets-manager/" class="md-nav__link">
  769. <span class="md-ellipsis">
  770. Google Cloud Secret Manager
  771. </span>
  772. </a>
  773. </li>
  774. <li class="md-nav__item">
  775. <a href="../hashicorp-vault/" class="md-nav__link">
  776. <span class="md-ellipsis">
  777. HashiCorp Vault
  778. </span>
  779. </a>
  780. </li>
  781. <li class="md-nav__item">
  782. <a href="../kubernetes/" class="md-nav__link">
  783. <span class="md-ellipsis">
  784. Kubernetes
  785. </span>
  786. </a>
  787. </li>
  788. <li class="md-nav__item">
  789. <a href="../ibm-secrets-manager/" class="md-nav__link">
  790. <span class="md-ellipsis">
  791. IBM Secrets Manager
  792. </span>
  793. </a>
  794. </li>
  795. <li class="md-nav__item">
  796. <a href="../akeyless/" class="md-nav__link">
  797. <span class="md-ellipsis">
  798. Akeyless
  799. </span>
  800. </a>
  801. </li>
  802. <li class="md-nav__item">
  803. <a href="../yandex-certificate-manager/" class="md-nav__link">
  804. <span class="md-ellipsis">
  805. Yandex Certificate Manager
  806. </span>
  807. </a>
  808. </li>
  809. <li class="md-nav__item">
  810. <a href="../yandex-lockbox/" class="md-nav__link">
  811. <span class="md-ellipsis">
  812. Yandex Lockbox
  813. </span>
  814. </a>
  815. </li>
  816. <li class="md-nav__item">
  817. <a href="../alibaba/" class="md-nav__link">
  818. <span class="md-ellipsis">
  819. Alibaba Cloud
  820. </span>
  821. </a>
  822. </li>
  823. <li class="md-nav__item">
  824. <a href="../gitlab-variables/" class="md-nav__link">
  825. <span class="md-ellipsis">
  826. GitLab Variables
  827. </span>
  828. </a>
  829. </li>
  830. <li class="md-nav__item">
  831. <a href="../oracle-vault/" class="md-nav__link">
  832. <span class="md-ellipsis">
  833. Oracle Vault
  834. </span>
  835. </a>
  836. </li>
  837. <li class="md-nav__item">
  838. <a href="../1password-automation/" class="md-nav__link">
  839. <span class="md-ellipsis">
  840. 1Password Secrets Automation
  841. </span>
  842. </a>
  843. </li>
  844. <li class="md-nav__item">
  845. <a href="../webhook/" class="md-nav__link">
  846. <span class="md-ellipsis">
  847. Webhook
  848. </span>
  849. </a>
  850. </li>
  851. <li class="md-nav__item">
  852. <a href="../fake/" class="md-nav__link">
  853. <span class="md-ellipsis">
  854. Fake
  855. </span>
  856. </a>
  857. </li>
  858. <li class="md-nav__item">
  859. <a href="../senhasegura-dsm/" class="md-nav__link">
  860. <span class="md-ellipsis">
  861. senhasegura DevOps Secrets Management (DSM)
  862. </span>
  863. </a>
  864. </li>
  865. <li class="md-nav__item">
  866. <a href="../doppler/" class="md-nav__link">
  867. <span class="md-ellipsis">
  868. Doppler
  869. </span>
  870. </a>
  871. </li>
  872. <li class="md-nav__item">
  873. <a href="../keeper-security/" class="md-nav__link">
  874. <span class="md-ellipsis">
  875. Keeper Security
  876. </span>
  877. </a>
  878. </li>
  879. <li class="md-nav__item">
  880. <a href="../cloak/" class="md-nav__link">
  881. <span class="md-ellipsis">
  882. Cloak End 2 End Encrypted Secrets
  883. </span>
  884. </a>
  885. </li>
  886. <li class="md-nav__item">
  887. <a href="../scaleway/" class="md-nav__link">
  888. <span class="md-ellipsis">
  889. Scaleway
  890. </span>
  891. </a>
  892. </li>
  893. <li class="md-nav__item">
  894. <a href="../delinea/" class="md-nav__link">
  895. <span class="md-ellipsis">
  896. Delinea
  897. </span>
  898. </a>
  899. </li>
  900. <li class="md-nav__item">
  901. <a href="../pulumi/" class="md-nav__link">
  902. <span class="md-ellipsis">
  903. Pulumi ESC
  904. </span>
  905. </a>
  906. </li>
  907. </ul>
  908. </nav>
  909. </li>
  910. <li class="md-nav__item md-nav__item--nested">
  911. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
  912. <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
  913. <span class="md-ellipsis">
  914. Examples
  915. </span>
  916. <span class="md-nav__icon md-icon"></span>
  917. </label>
  918. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
  919. <label class="md-nav__title" for="__nav_5">
  920. <span class="md-nav__icon md-icon"></span>
  921. Examples
  922. </label>
  923. <ul class="md-nav__list" data-md-scrollfix>
  924. <li class="md-nav__item">
  925. <a href="../../examples/gitops-using-fluxcd/" class="md-nav__link">
  926. <span class="md-ellipsis">
  927. FluxCD
  928. </span>
  929. </a>
  930. </li>
  931. <li class="md-nav__item">
  932. <a href="../../examples/anchore-engine-credentials/" class="md-nav__link">
  933. <span class="md-ellipsis">
  934. Anchore Engine
  935. </span>
  936. </a>
  937. </li>
  938. <li class="md-nav__item">
  939. <a href="../../examples/jenkins-kubernetes-credentials/" class="md-nav__link">
  940. <span class="md-ellipsis">
  941. Jenkins
  942. </span>
  943. </a>
  944. </li>
  945. <li class="md-nav__item">
  946. <a href="../../examples/bitwarden/" class="md-nav__link">
  947. <span class="md-ellipsis">
  948. BitWarden
  949. </span>
  950. </a>
  951. </li>
  952. </ul>
  953. </nav>
  954. </li>
  955. <li class="md-nav__item md-nav__item--nested">
  956. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6" >
  957. <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
  958. <span class="md-ellipsis">
  959. Community
  960. </span>
  961. <span class="md-nav__icon md-icon"></span>
  962. </label>
  963. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
  964. <label class="md-nav__title" for="__nav_6">
  965. <span class="md-nav__icon md-icon"></span>
  966. Community
  967. </label>
  968. <ul class="md-nav__list" data-md-scrollfix>
  969. <li class="md-nav__item md-nav__item--nested">
  970. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6_1" >
  971. <label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
  972. <span class="md-ellipsis">
  973. Contributing
  974. </span>
  975. <span class="md-nav__icon md-icon"></span>
  976. </label>
  977. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="false">
  978. <label class="md-nav__title" for="__nav_6_1">
  979. <span class="md-nav__icon md-icon"></span>
  980. Contributing
  981. </label>
  982. <ul class="md-nav__list" data-md-scrollfix>
  983. <li class="md-nav__item">
  984. <a href="../../contributing/devguide/" class="md-nav__link">
  985. <span class="md-ellipsis">
  986. Developer guide
  987. </span>
  988. </a>
  989. </li>
  990. <li class="md-nav__item">
  991. <a href="../../contributing/process/" class="md-nav__link">
  992. <span class="md-ellipsis">
  993. Contributing Process
  994. </span>
  995. </a>
  996. </li>
  997. <li class="md-nav__item">
  998. <a href="../../contributing/release/" class="md-nav__link">
  999. <span class="md-ellipsis">
  1000. Release Process
  1001. </span>
  1002. </a>
  1003. </li>
  1004. <li class="md-nav__item">
  1005. <a href="../../contributing/coc/" class="md-nav__link">
  1006. <span class="md-ellipsis">
  1007. Code of Conduct
  1008. </span>
  1009. </a>
  1010. </li>
  1011. <li class="md-nav__item">
  1012. <a href="../../contributing/roadmap/" class="md-nav__link">
  1013. <span class="md-ellipsis">
  1014. Roadmap
  1015. </span>
  1016. </a>
  1017. </li>
  1018. </ul>
  1019. </nav>
  1020. </li>
  1021. <li class="md-nav__item md-nav__item--nested">
  1022. <input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_6_2" >
  1023. <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
  1024. <span class="md-ellipsis">
  1025. External Resources
  1026. </span>
  1027. <span class="md-nav__icon md-icon"></span>
  1028. </label>
  1029. <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
  1030. <label class="md-nav__title" for="__nav_6_2">
  1031. <span class="md-nav__icon md-icon"></span>
  1032. External Resources
  1033. </label>
  1034. <ul class="md-nav__list" data-md-scrollfix>
  1035. <li class="md-nav__item">
  1036. <a href="../../eso-talks/" class="md-nav__link">
  1037. <span class="md-ellipsis">
  1038. Talks
  1039. </span>
  1040. </a>
  1041. </li>
  1042. <li class="md-nav__item">
  1043. <a href="../../eso-demos/" class="md-nav__link">
  1044. <span class="md-ellipsis">
  1045. Demos
  1046. </span>
  1047. </a>
  1048. </li>
  1049. <li class="md-nav__item">
  1050. <a href="../../eso-blogs/" class="md-nav__link">
  1051. <span class="md-ellipsis">
  1052. Blogs
  1053. </span>
  1054. </a>
  1055. </li>
  1056. </ul>
  1057. </nav>
  1058. </li>
  1059. </ul>
  1060. </nav>
  1061. </li>
  1062. </ul>
  1063. </nav>
  1064. </div>
  1065. </div>
  1066. </div>
  1067. <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
  1068. <div class="md-sidebar__scrollwrap">
  1069. <div class="md-sidebar__inner">
  1070. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  1071. <label class="md-nav__title" for="__toc">
  1072. <span class="md-nav__icon md-icon"></span>
  1073. Table of contents
  1074. </label>
  1075. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  1076. <li class="md-nav__item">
  1077. <a href="#conjur-provider" class="md-nav__link">
  1078. <span class="md-ellipsis">
  1079. Conjur Provider
  1080. </span>
  1081. </a>
  1082. <nav class="md-nav" aria-label="Conjur Provider">
  1083. <ul class="md-nav__list">
  1084. <li class="md-nav__item">
  1085. <a href="#pre-requirements" class="md-nav__link">
  1086. <span class="md-ellipsis">
  1087. Pre-requirements
  1088. </span>
  1089. </a>
  1090. </li>
  1091. <li class="md-nav__item">
  1092. <a href="#certificate-for-conjur-server" class="md-nav__link">
  1093. <span class="md-ellipsis">
  1094. Certificate for Conjur server
  1095. </span>
  1096. </a>
  1097. </li>
  1098. <li class="md-nav__item">
  1099. <a href="#external-secret-store-definition-with-apikey-authentication" class="md-nav__link">
  1100. <span class="md-ellipsis">
  1101. External Secret Store Definition with ApiKey Authentication
  1102. </span>
  1103. </a>
  1104. <nav class="md-nav" aria-label="External Secret Store Definition with ApiKey Authentication">
  1105. <ul class="md-nav__list">
  1106. <li class="md-nav__item">
  1107. <a href="#create-external-secret-store-definition" class="md-nav__link">
  1108. <span class="md-ellipsis">
  1109. Create External Secret Store Definition
  1110. </span>
  1111. </a>
  1112. </li>
  1113. <li class="md-nav__item">
  1114. <a href="#create-kubernetes-secrets" class="md-nav__link">
  1115. <span class="md-ellipsis">
  1116. Create Kubernetes Secrets
  1117. </span>
  1118. </a>
  1119. </li>
  1120. </ul>
  1121. </nav>
  1122. </li>
  1123. <li class="md-nav__item">
  1124. <a href="#external-secret-store-with-jwt-authentication" class="md-nav__link">
  1125. <span class="md-ellipsis">
  1126. External Secret Store with JWT Authentication
  1127. </span>
  1128. </a>
  1129. <nav class="md-nav" aria-label="External Secret Store with JWT Authentication">
  1130. <ul class="md-nav__list">
  1131. <li class="md-nav__item">
  1132. <a href="#create-external-secret-store-definition_1" class="md-nav__link">
  1133. <span class="md-ellipsis">
  1134. Create External Secret Store Definition
  1135. </span>
  1136. </a>
  1137. </li>
  1138. </ul>
  1139. </nav>
  1140. </li>
  1141. <li class="md-nav__item">
  1142. <a href="#create-external-secret-definition" class="md-nav__link">
  1143. <span class="md-ellipsis">
  1144. Create External Secret Definition
  1145. </span>
  1146. </a>
  1147. </li>
  1148. <li class="md-nav__item">
  1149. <a href="#create-the-external-secrets-store" class="md-nav__link">
  1150. <span class="md-ellipsis">
  1151. Create the External Secrets Store
  1152. </span>
  1153. </a>
  1154. </li>
  1155. <li class="md-nav__item">
  1156. <a href="#create-the-external-secret" class="md-nav__link">
  1157. <span class="md-ellipsis">
  1158. Create the External Secret
  1159. </span>
  1160. </a>
  1161. </li>
  1162. <li class="md-nav__item">
  1163. <a href="#getting-the-k8s-secret" class="md-nav__link">
  1164. <span class="md-ellipsis">
  1165. Getting the K8S Secret
  1166. </span>
  1167. </a>
  1168. </li>
  1169. <li class="md-nav__item">
  1170. <a href="#support" class="md-nav__link">
  1171. <span class="md-ellipsis">
  1172. Support
  1173. </span>
  1174. </a>
  1175. </li>
  1176. </ul>
  1177. </nav>
  1178. </li>
  1179. </ul>
  1180. </nav>
  1181. </div>
  1182. </div>
  1183. </div>
  1184. <div class="md-content" data-md-component="content">
  1185. <article class="md-content__inner md-typeset">
  1186. <h1>CyberArk Conjur</h1>
  1187. <h2 id="conjur-provider">Conjur Provider</h2>
  1188. <p>The following sections outline what is needed to get your external-secrets Conjur provider setup.</p>
  1189. <h3 id="pre-requirements">Pre-requirements</h3>
  1190. <p>This section contains the list of the pre-requirements before installing the Conjur Provider.</p>
  1191. <ul>
  1192. <li>Running Conjur Server<ul>
  1193. <li>These items will be needed in order to configure the secret-store<ul>
  1194. <li>Conjur endpoint - include the scheme but no trailing '/', ex: https://myapi.example.com</li>
  1195. <li>Conjur authentication info (hostid, apikey, jwt service id, etc)</li>
  1196. <li>Conjur must be configured to support your authentication method (<code>apikey</code> is supported by default, <code>jwt</code> requires additional configuration)</li>
  1197. <li>Certificate for Conjur server is OPTIONAL -- But, <strong>when using a self-signed cert when setting up your Conjur server, it is strongly recommended to populate "caBundle" with self-signed cert in the secret-store definition</strong></li>
  1198. </ul>
  1199. </li>
  1200. </ul>
  1201. </li>
  1202. <li>Kubernetes cluster<ul>
  1203. <li>External Secrets Operator is installed</li>
  1204. </ul>
  1205. </li>
  1206. </ul>
  1207. <h3 id="certificate-for-conjur-server">Certificate for Conjur server</h3>
  1208. <p>When using a self-signed cert when setting up your Conjur server, it is strongly recommended to populate "caBundle" with self-signed cert in the secret-store definition. The certificate CA must be referenced on the secret-store definition using either a <code>caBundle</code> or <code>caProvider</code> as below:</p>
  1209. <div class="highlight"><pre><span></span><code><span class="l l-Scalar l-Scalar-Plain">....</span>
  1210. <span class="l l-Scalar l-Scalar-Plain">spec</span><span class="p p-Indicator">:</span>
  1211. <span class="w"> </span><span class="nt">provider</span><span class="p">:</span>
  1212. <span class="w"> </span><span class="nt">conjur</span><span class="p">:</span>
  1213. <span class="w"> </span><span class="c1"># Service URL</span>
  1214. <span class="w"> </span><span class="nt">url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://myapi.conjur.org</span>
  1215. <span class="w"> </span><span class="c1"># [OPTIONAL] base64 encoded string of certificate</span>
  1216. <span class="w"> </span><span class="nt">caBundle</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;&lt;base64</span><span class="nv"> </span><span class="s">encoded</span><span class="nv"> </span><span class="s">cabundle&gt;&quot;</span>
  1217. <span class="w"> </span><span class="c1"># [OPTIONAL] caProvider:</span>
  1218. <span class="w"> </span><span class="c1"># Instead of caBundle you can also specify a caProvider</span>
  1219. <span class="w"> </span><span class="c1"># this will retrieve the cert from a Secret or ConfigMap</span>
  1220. <span class="w"> </span><span class="nt">caProvider</span><span class="p">:</span>
  1221. <span class="w"> </span><span class="nt">type</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;Secret&quot;</span><span class="w"> </span><span class="c1"># Can be Secret or ConfigMap</span>
  1222. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;&lt;name</span><span class="nv"> </span><span class="s">of</span><span class="nv"> </span><span class="s">secret</span><span class="nv"> </span><span class="s">or</span><span class="nv"> </span><span class="s">configmap&gt;&quot;</span>
  1223. <span class="w"> </span><span class="nt">key</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;&lt;key</span><span class="nv"> </span><span class="s">inside</span><span class="nv"> </span><span class="s">secret</span><span class="nv"> </span><span class="s">or</span><span class="nv"> </span><span class="s">configmap&gt;&quot;</span>
  1224. <span class="w"> </span><span class="c1"># namespace is mandatory for ClusterSecretStore and not relevant for SecretStore</span>
  1225. <span class="w"> </span><span class="nt">namespace</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;my-cert-secret-namespace&quot;</span>
  1226. <span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">....</span>
  1227. </code></pre></div>
  1228. <h3 id="external-secret-store-definition-with-apikey-authentication">External Secret Store Definition with ApiKey Authentication</h3>
  1229. <p>This method uses a combination of the Conjur <code>hostid</code> and <code>apikey</code> to authenticate to Conjur. This method is the simplest to setup and use as your Conjur instance requires no special setup.</p>
  1230. <h4 id="create-external-secret-store-definition">Create External Secret Store Definition</h4>
  1231. <p>Recommend to save as filename: <code>conjur-secret-store.yaml</code></p>
  1232. <div class="highlight"><pre><span></span><code><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">external-secrets.io/v1beta1</span>
  1233. <span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">SecretStore</span>
  1234. <span class="nt">metadata</span><span class="p">:</span>
  1235. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1236. <span class="nt">spec</span><span class="p">:</span>
  1237. <span class="w"> </span><span class="nt">provider</span><span class="p">:</span>
  1238. <span class="w"> </span><span class="nt">conjur</span><span class="p">:</span>
  1239. <span class="w"> </span><span class="c1"># Service URL</span>
  1240. <span class="w"> </span><span class="nt">url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://myapi.conjur.org</span>
  1241. <span class="w"> </span><span class="c1"># [OPTIONAL] base64 encoded string of certificate</span>
  1242. <span class="w"> </span><span class="nt">caBundle</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">OPTIONALxFIELDxxxBase64xCertxString==</span><span class="w"> </span>
  1243. <span class="w"> </span><span class="nt">auth</span><span class="p">:</span>
  1244. <span class="w"> </span><span class="nt">apikey</span><span class="p">:</span>
  1245. <span class="w"> </span><span class="c1"># conjur account</span>
  1246. <span class="w"> </span><span class="nt">account</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1247. <span class="w"> </span><span class="nt">userRef</span><span class="p">:</span><span class="w"> </span><span class="c1"># Get this from K8S secret</span>
  1248. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur-creds</span>
  1249. <span class="w"> </span><span class="nt">key</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hostid</span>
  1250. <span class="w"> </span><span class="nt">apiKeyRef</span><span class="p">:</span><span class="w"> </span><span class="c1"># Get this from K8S secret</span>
  1251. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur-creds</span>
  1252. <span class="w"> </span><span class="nt">key</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">apikey</span>
  1253. </code></pre></div>
  1254. <h4 id="create-kubernetes-secrets">Create Kubernetes Secrets</h4>
  1255. <p>In order for the ESO <strong>Conjur</strong> provider to connect to the Conjur server using the <code>apikey</code> creds, these creds should be stored as k8s secrets. Please refer to <a href="https://kubernetes.io/docs/concepts/configuration/secret/#creating-a-secret">https://kubernetes.io/docs/concepts/configuration/secret/#creating-a-secret</a> for various methods to create secrets. Here is one way to do it using <code>kubectl</code></p>
  1256. <p><strong><em>NOTE</em></strong>: "conjur-creds" is the "name" used in "userRef" and "apikeyRef" in the conjur-secret-store definition</p>
  1257. <div class="highlight"><pre><span></span><code><span class="c1"># This is all one line</span>
  1258. kubectl<span class="w"> </span>-n<span class="w"> </span>external-secrets<span class="w"> </span>create<span class="w"> </span>secret<span class="w"> </span>generic<span class="w"> </span>conjur-creds<span class="w"> </span>--from-literal<span class="o">=</span><span class="nv">hostid</span><span class="o">=</span>MYCONJURHOSTID<span class="w"> </span>--from-literal<span class="o">=</span><span class="nv">apikey</span><span class="o">=</span>MYAPIKEY
  1259. <span class="c1"># Example:</span>
  1260. <span class="c1"># kubectl -n external-secrets create secret generic conjur-creds --from-literal=hostid=host/data/app1/host001 --from-literal=apikey=321blahblah</span>
  1261. </code></pre></div>
  1262. <h3 id="external-secret-store-with-jwt-authentication">External Secret Store with JWT Authentication</h3>
  1263. <p>This method uses JWT tokens to authenticate with Conjur. The following methods for retrieving the JWT token for authentication are supported:</p>
  1264. <ul>
  1265. <li>JWT token from a referenced Kubernetes Service Account</li>
  1266. <li>JWT token stored in a Kubernetes secret</li>
  1267. </ul>
  1268. <h4 id="create-external-secret-store-definition_1">Create External Secret Store Definition</h4>
  1269. <p>When using JWT authentication the following must be specified in the <code>SecretStore</code>:</p>
  1270. <ul>
  1271. <li><code>account</code> - The name of the Conjur account</li>
  1272. <li><code>serviceId</code> - The ID of the JWT Authenticator <code>WebService</code> configured in Conjur that will be used to authenticate the JWT token</li>
  1273. </ul>
  1274. <p>You can then choose to either retrieve the JWT token using a Service Account reference or from a Kubernetes Secret.</p>
  1275. <p>To use a JWT token from a referenced Kubernetes Service Account, the following secret store definition can be used:</p>
  1276. <div class="highlight"><pre><span></span><code><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">external-secrets.io/v1beta1</span>
  1277. <span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">SecretStore</span>
  1278. <span class="nt">metadata</span><span class="p">:</span>
  1279. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1280. <span class="nt">spec</span><span class="p">:</span>
  1281. <span class="w"> </span><span class="nt">provider</span><span class="p">:</span>
  1282. <span class="w"> </span><span class="nt">conjur</span><span class="p">:</span>
  1283. <span class="w"> </span><span class="c1"># Service URL</span>
  1284. <span class="w"> </span><span class="nt">url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://myapi.conjur.org</span>
  1285. <span class="w"> </span><span class="c1"># [OPTIONAL] base64 encoded string of certificate</span>
  1286. <span class="w"> </span><span class="nt">caBundle</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">OPTIONALxFIELDxxxBase64xCertxString==</span>
  1287. <span class="w"> </span><span class="nt">auth</span><span class="p">:</span>
  1288. <span class="w"> </span><span class="nt">jwt</span><span class="p">:</span>
  1289. <span class="w"> </span><span class="c1"># conjur account</span>
  1290. <span class="w"> </span><span class="nt">account</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1291. <span class="w"> </span><span class="nt">serviceID</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-jwt-auth-service</span><span class="w"> </span><span class="c1"># The authn-jwt service ID</span>
  1292. <span class="w"> </span><span class="nt">serviceAccountRef</span><span class="p">:</span><span class="w"> </span><span class="c1"># Service account to retrieve JWT token for</span>
  1293. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-service-account</span>
  1294. <span class="w"> </span><span class="nt">audiences</span><span class="p">:</span><span class="w"> </span><span class="c1"># [OPTIONAL] audiences to include in JWT token</span>
  1295. <span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://conjur.company.com</span>
  1296. </code></pre></div>
  1297. <p>This is only supported in Kubernetes 1.22 and above as it uses the <a href="https://kubernetes.io/docs/reference/kubernetes-api/authentication-resources/token-request-v1/">TokenRequest API</a> to get the JWT token from the referenced service account. Audiences can be set as required by the <a href="https://docs.conjur.org/Latest/en/Content/Integrations/k8s-ocp/k8s-jwt-authn.htm">Conjur JWT authenticator</a>.</p>
  1298. <p>Alternatively, a secret containing a valid JWT token can be referenced as follows:</p>
  1299. <div class="highlight"><pre><span></span><code><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">external-secrets.io/v1beta1</span>
  1300. <span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">SecretStore</span>
  1301. <span class="nt">metadata</span><span class="p">:</span>
  1302. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1303. <span class="nt">spec</span><span class="p">:</span>
  1304. <span class="w"> </span><span class="nt">provider</span><span class="p">:</span>
  1305. <span class="w"> </span><span class="nt">conjur</span><span class="p">:</span>
  1306. <span class="w"> </span><span class="c1"># Service URL</span>
  1307. <span class="w"> </span><span class="nt">url</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://myapi.conjur.org</span>
  1308. <span class="w"> </span><span class="c1"># [OPTIONAL] base64 encoded string of certificate</span>
  1309. <span class="w"> </span><span class="nt">caBundle</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">OPTIONALxFIELDxxxBase64xCertxString==</span>
  1310. <span class="w"> </span><span class="nt">auth</span><span class="p">:</span>
  1311. <span class="w"> </span><span class="nt">jwt</span><span class="p">:</span>
  1312. <span class="w"> </span><span class="c1"># conjur account</span>
  1313. <span class="w"> </span><span class="nt">account</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1314. <span class="w"> </span><span class="nt">serviceID</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-jwt-auth-service</span><span class="w"> </span><span class="c1"># The authn-jwt service ID</span>
  1315. <span class="w"> </span><span class="nt">secretRef</span><span class="p">:</span><span class="w"> </span><span class="c1"># Secret containing a valid JWT token</span>
  1316. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my-jwt-secret</span>
  1317. <span class="w"> </span><span class="nt">key</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">token</span>
  1318. </code></pre></div>
  1319. <p>This secret must contain a JWT token that identifies your Conjur host. The secret must contain a JWT token consumable by a configured Conjur JWT authenticator and must satisfy all <a href="https://docs.conjur.org/Latest/en/Content/Operations/Services/cjr-authn-jwt-guidelines.htm#Best">Conjur JWT guidelines</a>. This can be a JWT created by an external JWT issuer or the Kubernetes api server itself. Such a with Kubernetes Service Account token can be created using the below command:</p>
  1320. <div class="highlight"><pre><span></span><code>kubectl<span class="w"> </span>create<span class="w"> </span>token<span class="w"> </span>my-service-account<span class="w"> </span>--audience<span class="o">=</span><span class="s1">&#39;https://conjur.company.com&#39;</span><span class="w"> </span>--duration<span class="o">=</span>3600s
  1321. </code></pre></div>
  1322. <p>Save the <code>SecretStore</code> definition as filename <code>conjur-secret-store.yaml</code> as referenced in later steps.</p>
  1323. <h3 id="create-external-secret-definition">Create External Secret Definition</h3>
  1324. <p>Important note: <strong>Creds must live in the same namespace as a SecretStore - the secret store may only reference secrets from the same namespace.</strong> When using a ClusterSecretStore this limitation is lifted and the creds can live in any namespace.</p>
  1325. <p>Recommend to save as filename: <code>conjur-external-secret.yaml</code></p>
  1326. <div class="highlight"><pre><span></span><code><span class="nt">apiVersion</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">external-secrets.io/v1beta1</span>
  1327. <span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">ExternalSecret</span>
  1328. <span class="nt">metadata</span><span class="p">:</span>
  1329. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1330. <span class="nt">spec</span><span class="p">:</span>
  1331. <span class="w"> </span><span class="nt">refreshInterval</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">10s</span>
  1332. <span class="w"> </span><span class="nt">secretStoreRef</span><span class="p">:</span>
  1333. <span class="w"> </span><span class="c1"># This name must match the metadata.name in the `SecretStore`</span>
  1334. <span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">conjur</span>
  1335. <span class="w"> </span><span class="nt">kind</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">SecretStore</span>
  1336. <span class="w"> </span><span class="nt">data</span><span class="p">:</span>
  1337. <span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">secretKey</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">secret00</span>
  1338. <span class="w"> </span><span class="nt">remoteRef</span><span class="p">:</span>
  1339. <span class="w"> </span><span class="nt">key</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">data/app1/secret00</span>
  1340. </code></pre></div>
  1341. <h3 id="create-the-external-secrets-store">Create the External Secrets Store</h3>
  1342. <div class="highlight"><pre><span></span><code><span class="c1"># WARNING: this will create the store configuration in the &quot;external-secrets&quot; namespace, adjust this to your own situation</span>
  1343. <span class="c1">#</span>
  1344. kubectl<span class="w"> </span>apply<span class="w"> </span>-n<span class="w"> </span>external-secrets<span class="w"> </span>-f<span class="w"> </span>conjur-secret-store.yaml
  1345. <span class="c1"># WARNING: running the delete command will delete the secret store configuration</span>
  1346. <span class="c1">#</span>
  1347. <span class="c1"># If there is a need to delete the external secretstore</span>
  1348. <span class="c1"># kubectl delete secretstore -n external-secrets conjur</span>
  1349. </code></pre></div>
  1350. <h3 id="create-the-external-secret">Create the External Secret</h3>
  1351. <div class="highlight"><pre><span></span><code><span class="c1"># WARNING: this will create the external-secret configuration in the &quot;external-secrets&quot; namespace, adjust this to your own situation</span>
  1352. <span class="c1">#</span>
  1353. kubectl<span class="w"> </span>apply<span class="w"> </span>-n<span class="w"> </span>external-secrets<span class="w"> </span>-f<span class="w"> </span>conjur-external-secret.yaml
  1354. <span class="c1"># WARNING: running the delete command will delete the external-secrets configuration</span>
  1355. <span class="c1">#</span>
  1356. <span class="c1"># If there is a need to delete the external secret</span>
  1357. <span class="c1"># kubectl delete externalsecret -n external-secrets conjur</span>
  1358. </code></pre></div>
  1359. <h3 id="getting-the-k8s-secret">Getting the K8S Secret</h3>
  1360. <ul>
  1361. <li>Login to your Conjur server and verify that your secret exists</li>
  1362. <li>Review the value of your Kubernetes secret to see that it contains the same value from Conjur</li>
  1363. </ul>
  1364. <div class="highlight"><pre><span></span><code><span class="c1"># WARNING: this command will reveal the stored secret in plain text</span>
  1365. <span class="c1">#</span>
  1366. <span class="c1"># Assuming the secret name is &quot;secret00&quot;, this will show the value</span>
  1367. kubectl<span class="w"> </span>get<span class="w"> </span>secret<span class="w"> </span>-n<span class="w"> </span>external-secrets<span class="w"> </span>conjur<span class="w"> </span>-o<span class="w"> </span><span class="nv">jsonpath</span><span class="o">=</span><span class="s2">&quot;{.data.secret00}&quot;</span><span class="w"> </span><span class="p">|</span><span class="w"> </span>base64<span class="w"> </span>--decode<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="nb">echo</span>
  1368. </code></pre></div>
  1369. <h3 id="support">Support</h3>
  1370. <p>Copyright (c) 2023 CyberArk Software Ltd. All rights reserved.</p>
  1371. <p>Licensed under the Apache License, Version 2.0 (the "License");
  1372. you may not use this file except in compliance with the License.
  1373. You may obtain a copy of the License at</p>
  1374. <p><a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a></p>
  1375. <p>Unless required by applicable law or agreed to in writing, software
  1376. distributed under the License is distributed on an "AS IS" BASIS,
  1377. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  1378. See the License for the specific language governing permissions and
  1379. limitations under the License.</p>
  1380. </article>
  1381. </div>
  1382. <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
  1383. </div>
  1384. </main>
  1385. <footer class="md-footer">
  1386. <div class="md-footer-meta md-typeset">
  1387. <div class="md-footer-meta__inner md-grid">
  1388. <div class="md-copyright">
  1389. <div class="md-copyright__highlight">
  1390. &copy; 2023 The external-secrets Authors.<br/>
  1391. &copy; 2023 The Linux Foundation. All rights reserved.<br/><br/>
  1392. The Linux Foundation has registered trademarks and uses trademarks.<br/>
  1393. For a list of trademarks of The Linux Foundation, please see our <a href="https://www.linuxfoundation.org/trademark-usage/">Trademark Usage page</a>.
  1394. </div>
  1395. Made with
  1396. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  1397. Material for MkDocs
  1398. </a>
  1399. </div>
  1400. </div>
  1401. </div>
  1402. </footer>
  1403. </div>
  1404. <div class="md-dialog" data-md-component="dialog">
  1405. <div class="md-dialog__inner md-typeset"></div>
  1406. </div>
  1407. <script id="__config" type="application/json">{"base": "../..", "features": ["navigation.tabs", "navigation.indexes", "navigation.expand"], "search": "../../assets/javascripts/workers/search.b8dbb3d2.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
  1408. <script src="../../assets/javascripts/bundle.8fd75fb4.min.js"></script>
  1409. </body>
  1410. </html>