Automatisation du déploiement Business-to-Consumer
Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.
En plus d’adopter des pratiques exemplaires en matière de gestion des changements et d’assurance qualité, les clients qui réussissent intégreront aussi la gestion des ressources Auth0 à un processus de déploiement automatisé. Comme il est indiqué dans la section Architecture, sous SDLC support, vous voudrez vous assurer de configurer des tenants Auth0 distincts pour les environnements de développement, de test et de production, et que cette configuration soit presque identique d’un tenant à l’autre. L’automatisation du déploiement aide à garantir cette cohérence, de sorte que le tenant de chaque environnement soit configuré de la même façon et que les bogues causés par des écarts de configuration entre les environnements soient moins susceptibles de se produire.
Quelle que soit la façon dont vous configurez l’automatisation du déploiement, nous vous recommandons d’effectuer des tests unitaires de vos Rules, custom DB scripts et Hooks avant le déploiement, puis d’exécuter également des tests d’intégration sur votre tenant après le déploiement. Pour en savoir plus à ce sujet, consultez les directives d’Assurance qualité.
Auth0 prend en charge différentes approches d’automatisation du déploiement, et chacune peut être utilisée conjointement avec l’autre au besoin :
Les outils Auth0 Deploy CLI fournissent un script facile à utiliser qui peut vous aider à vous intégrer à votre pipeline existant d’intégration continue et de déploiement continu (CI/CD).
Si vous ne pouvez pas vous intégrer directement à un pipeline CI/CD, ou si pour une raison quelconque vous n’en avez pas, les Source Control Extensions d’Auth0 peuvent fournir un processus d’automatisation de base facile à configurer et nécessitant très peu d’entretien.
Le Deploy CLI Tool et les source control extensions peuvent entraîner des changements destructifs; les modifications manuelles effectuées directement dans le Dashboard entre des déploiements automatisés pourraient être perdues ! Pour cette raison, si l’un ou l’autre est utilisé, toutes les modifications devraient être déployées à partir du sous-système de contrôle de code source référencé par les outils, et non effectuées manuellement.
Chaque environnement peut aussi nécessiter une configuration propre à cet environnement — les et les seront différents d’un tenant Auth0 à l’autre, par exemple — vous voudrez donc disposer d’un moyen d’y faire référence de manière dynamique plutôt que d’utiliser des valeurs codées en dur. Auth0 prend en charge la gestion des renseignements de configuration propres à l’environnement au moyen de l’une des deux approches suivantes :
Auth0 vous permet de configurer des variables accessibles depuis l’extensibilité personnalisée; on peut les considérer comme des variables d’environnement pour votre tenant Auth0. Au lieu d’encoder en dur des références qui changent lorsque le code passe d’un environnement de développement, de test ou de production à un autre, vous pouvez utiliser un nom de variable configuré dans le tenant et référencé par le code d’extensibilité personnalisée. Il est ainsi plus facile d’utiliser le même code personnalisé, sans modification, dans différents tenants, puisque le code peut référencer des variables qui seront remplies avec des valeurs propres au tenant au moment de l’exécution :
Pour utiliser des variables dans Actions, consultez Write Your First Action pour apprendre à configurer des secrets dans l’éditeur
Nous recommandons d’utiliser des variables pour stocker les valeurs propres au tenant, ainsi que tout secret sensible qui ne devrait pas être exposé dans votre code personnalisé. Si votre code personnalisé est déployé sur GitHub/GitLab/Bitbucket/VSTS, l’utilisation d’une variable propre au tenant permet d’éviter l’exposition de valeurs sensibles dans votre dépôt.
Nous offrons un guide de planification au format PDF que vous pouvez télécharger et consulter pour en savoir plus sur les stratégies que nous recommandons.Guide de planification de projet B2C IAM
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Auth0 Docs","description":"Auth0 documentation","colors":{"primary":"#9921FE","light":"#BC6DFF","dark":"#343434"},"logo":{"light":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/light.svg","dark":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/dark.svg","href":"https://auth0.com/docs/"},"favicon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/favicon.svg","api":{"params":{"post":["x-release-lifecycle"]},"playground":{"proxy":false},"url":"full"},"background":{"decoration":"gradient"},"footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"Developers","items":[{"label":"Developer Hub","href":"https://developer.auth0.com"},{"label":"Code Samples \u0026 Guides","href":"https://developer.auth0.com/resources"},{"label":"Zero Index Newsletter","href":"https://auth0.com/blog/newsletter"},{"label":"Blog","href":"https://auth0.com/blog"},{"label":"Changelog","href":"https://auth0.com/changelog"}]},{"header":"Docs","items":[{"label":"Documentation","href":"https://auth0.com/docs"},{"label":"Quickstarts","href":"https://auth0.com/docs/quickstarts"},{"label":"APIs","href":"https://auth0.com/docs/api"},{"label":"SDK Libraries","href":"https://auth0.com/docs/libraries"},{"label":"Learn","href":"https://auth0.com/learn"},{"label":"Intro to IAM (CIAM)","href":"https://auth0.com/intro-to-iam"},{"label":"Reports","href":"https://auth0.com/resources/whitepapers"},{"label":"Webinars","href":"https://auth0.com/resources/webinars"}]},{"header":"Support Center","items":[{"label":"Community","href":"https://community.auth0.com"},{"label":"Help","href":"https://support.auth0.com"},{"label":"FAQs","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"Company","items":[{"label":"Our Customers","href":"https://auth0.com/customers"},{"label":"Compliance","href":"https://auth0.com/security"},{"label":"Partners","href":"https://auth0.com/partners"},{"label":"Careers","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"About us","href":"https://auth0.com/about"}]}]},"seo":{"metatags":{"canonical":"https://auth0.com","og:image":"docs/images/share-image.png"}},"fonts":{"body":{"family":"Inter","source":"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900\u0026display=swap","format":"woff2"}},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"adobe":{"launchUrl":"https://assets.adobedtm.com/6bb3f7663515/7006851c9849/launch-af624fe9e34f.min.js"},"gtm":{"tagId":"GTM-W7FRLJ"},"heap":{"appId":"1279799279"},"onetrust":{"domainScript":"96e22fd8-d619-4cdd-a3c6-d51529d21faf","categoryId":"C0002","scriptSource":"https://cdn.cookielaw.org/scripttemplates/otSDKStub.js"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"languages":[{"language":"en","href":"docs"},{"language":"fr","href":"docs/fr-ca"},{"language":"ja","href":"docs/ja-jp"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"docs-staging","hasAudioNarration":false,"actualSubdomain":"docs-staging","customDomains":["docs-staging.auth0-mintlify.app"],"gitSource":{"type":"github","owner":"atko-cic","repo":"docs","deployBranch":"staging","contentDirectory":"main","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ace95d40456156b29823175","collectionId":"833e092c-b52e-4501-b98a-01804fd1aef4","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ace95d40456156b29823175"},"feedback":{"thumbs":true,"contextualFeedback":{"textInputOnly":true}},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ace95d40456156b29823175","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"en","tag":"Dev Tools","count":1030},{"language":"fr","tag":"Dev Tools","count":1026},{"language":"ja","tag":"Dev Tools","count":1026},{"language":"en","tag":"APIs","count":605},{"language":"fr","tag":"APIs","count":601},{"language":"ja","tag":"APIs","count":601},{"language":"en","tag":"Management API","count":481},{"language":"fr","tag":"Management API","count":481},{"language":"ja","tag":"Management API","count":481},{"language":"en","tag":"Get Started","count":277},{"language":"fr","tag":"Get Started","count":274},{"language":"ja","tag":"Get Started","count":274},{"language":"en","tag":"Customize","count":269},{"language":"fr","tag":"Customize","count":269},{"language":"ja","tag":"Customize","count":269},{"language":"en","tag":"Manage Users","count":206},{"language":"fr","tag":"Manage Users","count":206},{"language":"ja","tag":"Manage Users","count":206},{"language":"en","tag":"SDKs","count":202},{"language":"fr","tag":"SDKs","count":202},{"language":"ja","tag":"SDKs","count":202},{"language":"en","tag":"Authenticate","count":185},{"language":"fr","tag":"Authenticate","count":185},{"language":"ja","tag":"Authenticate","count":185},{"language":"en","tag":"Tenant Log Catalog","count":170},{"language":"fr","tag":"Tenant Log Catalog","count":170},{"language":"ja","tag":"Tenant Log Catalog","count":170},{"language":"en","tag":"Secure","count":159},{"language":"fr","tag":"Secure","count":159},{"language":"ja","tag":"Secure","count":159},{"language":"default","tag":"Dev Tools","count":1},{"language":"default","tag":"APIs","count":1},{"language":"default","tag":"Authentication API","count":1},{"language":"default","tag":"On-Behalf-Of Token Exchange","count":1}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"skip-index-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"ui/css/recipe.css","content":"#content-area:has(.recipe-container){overflow:visible!important}.recipe-content .recipe-section:first-of-type{margin-top:1rem}.active-section{opacity:1!important}"},{"filePath":"ui/css/styles.css","content":"@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}@font-face{font-family:\"Inter Fallback\";src:local(\"Arial\");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}body{font-feature-settings:\"kern\",\"liga\",\"clig\",\"calt\",\"rvrn\";font-family:\"Inter\",\"Inter Fallback\",system-ui,-apple-system,sans-serif}.mdx-content{line-height:1.625}#page-title{font-size:var(--text-3xl);line-height:1.15}.mdx-content .link{font-weight:inherit;border:0;text-decoration:underline;text-underline-offset:2px;transition:opacity .15s ease-out}.mdx-content .link:hover{color:rgb(var(--tw-prose-links))}.dark .mdx-content .link:hover,.mdx-content .link,.nav-tabs-item:hover,.nav-tabs-item[data-active]{color:rgb(var(--primary))}.mdx-content table{border-radius:12px;border:0;box-shadow:0 0 0 1px rgb(from var(--border-muted) r g b/50%);overflow:hidden}img.icon.inline{margin:0}#navbar{padding-bottom:.5rem;box-shadow:0 0 0 1px oklch(from var(--border) l c h/.1),0 1px 1px -1px oklch(from var(--shadow) l c h/.06),0 2px 2px -2px oklch(from var(--shadow) l c h/.06),0 2px 4px -2px oklch(from var(--shadow) l c h/.06)}.nav-tabs{column-gap:0}.nav-tabs-item{padding:.25rem .75rem;text-shadow:none}.dark .nav-tabs-item[data-active]{color:rgb(var(--primary-light))}.nav-tabs-item:hover{background-color:rgb(var(--primary)/.1);transition:all .15s ease-out;border-radius:.75rem}#sidebar-content{border-color:transparent}.card{transition:all .15s ease}.libraries_card{border:1px solid var(--border-muted)}.api_card_wrapper .card{background-color:transparent;color:var(--foreground-card);border-radius:0;border-bottom:3px solid currentColor!important;margin-bottom:1rem}[data-component-part=field-meta-post]{background-color:lab(91.896% .077188 -6.94053);color:lab(36.091% 25.9241 -68.0384)}.dark [data-component-part=field-meta-post]{background-color:lab(16.0426% 6.71726 -27.2409);color:lab(72.6029% 4.08953 -41.9669)}.custom-grid-container{margin-top:2rem}.custom-grid-search-container{margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.custom-grid-search-filter-wrapper{display:flex;gap:1rem;align-items:center;width:100%;flex-wrap:wrap;justify-content:space-between}.custom-grid-search-input-wrapper{position:relative;width:320px;flex-shrink:0}.custom-grid-search-input{width:100%;padding:.35rem .5rem .35rem 2.5rem;border:1px solid var(--border-input);border-radius:16px;height:2.5rem;color:var(--foreground);font-size:.875rem;outline:0;transition:all .2s ease;box-sizing:border-box;box-shadow:inset 0 1px 2px rgb(0 0 0/5%)}.custom-grid-search-input:focus{border-color:rgb(var(--primary));background-color:var(--card);box-shadow:inset 0 1px 2px rgb(0 0 0/5%),0 0 0 3px rgb(var(--primary)/.1)}.custom-grid-search-input:not(:focus){border-color:var(--border-input);background-color:var(--page);box-shadow:inset 0 1px 2px rgb(0 0 0/5%)}.custom-grid-search-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:var(--foreground);pointer-events:none}.custom-grid-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;border:2px dashed var(--border-muted);border-radius:8px}.custom-grid-no-results-icon{margin-bottom:1rem;padding:2rem;border-radius:1.5rem;box-shadow:inset 0 -1px 1px -1px rgb(0 0 0/6%),inset 0 -2px 4px -1px rgb(0 0 0/8%),0 0 0 .5px rgb(0 0 0/6%),0 1px 1px -1px rgb(0 0 0/8%),0 1px 2px -1px rgb(0 0 0/8%),0 2px 2px -1px rgb(0 0 0/8%),0 2px 4px -1px rgb(0 0 0/8%)}.custom-grid-no-results-title{margin:0 0 .5rem;color:var(--foreground-bold);font-size:1.25rem}.custom-grid-no-results-text{color:var(--foreground);margin:0;font-size:.875rem}.custom-grid-filter-buttons{display:flex;gap:1px;flex-wrap:wrap;height:2.5rem;background-color:rgb(from var(--border) r g b/50%);border-radius:16px;padding:1px;border:1px solid var(--border);position:relative}.custom-grid-filter-button{padding:.35rem .875rem;border-radius:14px;color:var(--foreground);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease-out;outline:0;border:0;background:0 0;position:relative;z-index:1}.custom-grid-filter-button.active,.custom-grid-filter-button:hover{color:var(--foreground-bold)}.custom-grid-filter-buttons-indicator{position:absolute;top:2px;left:2px;height:calc(100% - 4px);background-color:#fff;transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);border-radius:14px;z-index:0;pointer-events:none;opacity:0;box-shadow:inset 0 -1px 1px -1px rgb(0 0 0/6%),inset 0 -2px 4px -1px rgb(0 0 0/8%),0 0 0 .5px rgb(0 0 0/6%),0 1px 1px -1px rgb(0 0 0/8%),0 1px 2px -1px rgb(0 0 0/8%),0 2px 2px -1px rgb(0 0 0/8%),0 2px 4px -1px rgb(0 0 0/8%)}.dark .custom-grid-filter-buttons-indicator{background-color:var(--card)}.custom-card{display:flex;flex-direction:column;height:100%;min-height:200px}.custom-card-header{display:flex;align-items:center;margin-bottom:.75rem}.custom-card-icon{font-size:1.5rem;margin-right:.75rem}.custom-card-description.coming-soon,.custom-card-icon.coming-soon,.custom-card-title.coming-soon,.custom-card-type-tag.coming-soon{opacity:.6}.custom-card-icon img{width:1em;height:1em;vertical-align:middle}.custom-card-title{margin:0;font-size:1.25rem}.custom-card-description{margin:0;font-size:.875rem;line-height:1.5;flex:1}.custom-card-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.custom-card-type-tag{font-size:.875rem;line-height:1.25;padding:.125rem .375rem;background-color:rgb(var(--primary)/.15);border-radius:.5rem;font-weight:500;color:rgb(var(--primary));display:inline-block}.custom-card-coming-soon{font-size:.875rem;font-style:italic}.download-button-container{display:inline-block;margin-bottom:1rem}.download-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.125rem .5rem 1rem;border-radius:.75rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;color:var(--foreground-inverse);background-color:var(--button-primary);box-shadow:0 0 0 1px oklch(from var(--button-primary) l c h/.12),0 1px 1px -1px oklch(from var(--button-primary) l c h/.06),0 2px 2px -2px oklch(from var(--button-primary) l c h/.06),0 2px 4px -2px oklch(from var(--button-primary) l c h/.06),0 4px 6px -4px oklch(from var(--button-primary) l c h/.06),0 6px 8px -6px oklch(from var(--button-primary) l c h/.06),0 -1px 2px 0 oklch(from var(--button-primary) l c h/.2) inset}.download-button:hover:not(:disabled){background-color:oklch(from var(--button-primary) l c h/.8);box-shadow:0 0 0 4px oklch(from var(--button-primary) l c h/.06),0 1px 1px -1px oklch(from var(--button-primary) l c h/.06),0 2px 2px -2px oklch(from var(--button-primary) l c h/.06),0 2px 4px -2px oklch(from var(--button-primary) l c h/.06),0 4px 6px -4px oklch(from var(--button-primary) l c h/.06),0 6px 8px -6px oklch(from var(--button-primary) l c h/.06),0 -1px 2px 0 oklch(from var(--button-primary) l c h/.2) inset}.download-button:disabled{opacity:.6;cursor:not-allowed}.download-button.downloading{pointer-events:none}.download-spinner{animation:spin 1s linear infinite}"},{"filePath":"ui/css/apiExplorer.css","content":".api-section-heading-subtitle,.array-param-field,.object-param-field,.primitive-param-field{font-size:.875rem}"},{"filePath":"ui/auth0-docs-ui-1.10.0.css","content":"/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */\n@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:host,:root{--adu-font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--adu-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--adu-color-blue-500:oklch(62.3% .214 259.815);--adu-color-white:#fff;--adu-spacing:.25rem;--adu-text-xs--line-height:calc(1/.75);--adu-text-sm--line-height:calc(1.25/.875);--adu-text-base--line-height:1.5;--adu-text-lg--line-height:calc(1.75/1.125);--adu-text-xl--line-height:calc(1.75/1.25);--adu-text-2xl--line-height:calc(2/1.5);--adu-text-3xl--line-height:1.2;--adu-tracking-widest:.1em;--adu-ease-in-out:cubic-bezier(.4,0,.2,1);--adu-animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--adu-default-transition-duration:.15s;--adu-default-transition-timing-function:cubic-bezier(.4,0,.2,1);--adu-default-font-family:var(--adu-font-sans);--adu-default-mono-font-family:var(--adu-font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0;margin-inline-end:4px}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--adu-default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--adu-default-font-feature-settings,normal);font-variation-settings:var(--adu-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--adu-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--adu-default-mono-font-feature-settings,normal);font-variation-settings:var(--adu-default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--color-border);outline-color:var(--color-ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in srgb,var(--color-ring)50%,transparent)}}body{background-color:var(--color-background);color:var(--color-foreground);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:style;font-feature-settings:\"kern\",\"liga\",\"clig\",\"calt\",\"rvrn\"}}@layer components;@layer utilities{.adu\\:\\@container\\/card-header{container:card-header/inline-size}.adu\\:pointer-events-none{pointer-events:none}.adu\\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.adu\\:absolute,.adu\\:sr-only{position:absolute}.adu\\:fixed{position:fixed}.adu\\:relative{position:relative}.adu\\:static{position:static}.adu\\:top-0{top:calc(var(--adu-spacing)*0)}.adu\\:right-0{right:calc(var(--adu-spacing)*0)}.adu\\:left-0{left:calc(var(--adu-spacing)*0)}.adu\\:left-2{left:calc(var(--adu-spacing)*2)}.adu\\:left-73{left:calc(var(--adu-spacing)*73)}.adu\\:z-0{z-index:0}.adu\\:z-30{z-index:30}.adu\\:z-50{z-index:50}.adu\\:z-\\[39\\]{z-index:39}.adu\\:col-start-2{grid-column-start:2}.adu\\:row-span-2{grid-row:span 2/span 2}.adu\\:row-start-1{grid-row-start:1}.adu\\:-mx-1{margin-inline:calc(var(--adu-spacing)*-1)}.adu\\:my-1{margin-block:calc(var(--adu-spacing)*1)}.adu\\:mr-2{margin-right:calc(var(--adu-spacing)*2)}.adu\\:-ml-8{margin-left:calc(var(--adu-spacing)*-8)}.adu\\:ml-2{margin-left:calc(var(--adu-spacing)*2)}.adu\\:ml-auto{margin-left:auto}.adu\\:flex{display:flex}.adu\\:grid{display:grid}.adu\\:hidden{display:none}.adu\\:inline-block{display:inline-block}.adu\\:inline-flex{display:inline-flex}.adu\\:aspect-square{aspect-ratio:1}.adu\\:size-2{width:calc(var(--adu-spacing)*2);height:calc(var(--adu-spacing)*2)}.adu\\:size-3\\.5{width:calc(var(--adu-spacing)*3.5);height:calc(var(--adu-spacing)*3.5)}.adu\\:size-4{width:calc(var(--adu-spacing)*4);height:calc(var(--adu-spacing)*4)}.adu\\:size-8{width:calc(var(--adu-spacing)*8);height:calc(var(--adu-spacing)*8)}.adu\\:size-9{width:calc(var(--adu-spacing)*9);height:calc(var(--adu-spacing)*9)}.adu\\:size-full{width:100%;height:100%}.adu\\:h-4{height:calc(var(--adu-spacing)*4)}.adu\\:h-8{height:calc(var(--adu-spacing)*8)}.adu\\:h-9{height:calc(var(--adu-spacing)*9)}.adu\\:h-10{height:calc(var(--adu-spacing)*10)}.adu\\:h-14{height:calc(var(--adu-spacing)*14)}.adu\\:h-\\[18px\\]{height:18px}.adu\\:h-px{height:1px}.adu\\:max-h-\\(--radix-dropdown-menu-content-available-height\\){max-height:var(--radix-dropdown-menu-content-available-height)}.adu\\:max-h-72\\.5{max-height:calc(var(--adu-spacing)*72.5)}.adu\\:max-h-\\[calc\\(100\\%\\+2px\\)\\]{max-height:calc(100% + 2px)}.adu\\:w-4{width:calc(var(--adu-spacing)*4)}.adu\\:w-8{width:calc(var(--adu-spacing)*8)}.adu\\:w-9{width:calc(var(--adu-spacing)*9)}.adu\\:w-48{width:calc(var(--adu-spacing)*48)}.adu\\:w-73{width:calc(var(--adu-spacing)*73)}.adu\\:w-\\[24px\\]{width:24px}.adu\\:w-full{width:100%}.adu\\:min-w-\\[8rem\\]{min-width:8rem}.adu\\:flex-1{flex:1}.adu\\:shrink-0{flex-shrink:0}.adu\\:origin-\\(--radix-dropdown-menu-content-transform-origin\\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.adu\\:animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.adu\\:animate-out{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.adu\\:animate-pulse{animation:var(--adu-animate-pulse)}.adu\\:cursor-default{cursor:default}.adu\\:auto-rows-min{grid-auto-rows:min-content}.adu\\:grid-rows-\\[auto_auto\\]{grid-template-rows:auto auto}.adu\\:flex-col{flex-direction:column}.adu\\:flex-wrap{flex-wrap:wrap}.adu\\:items-center{align-items:center}.adu\\:items-start{align-items:flex-start}.adu\\:justify-center{justify-content:center}.adu\\:gap-0{gap:calc(var(--adu-spacing)*0)}.adu\\:gap-1{gap:calc(var(--adu-spacing)*1)}.adu\\:gap-1\\.5{gap:calc(var(--adu-spacing)*1.5)}.adu\\:gap-2{gap:calc(var(--adu-spacing)*2)}.adu\\:gap-3{gap:calc(var(--adu-spacing)*3)}.adu\\:gap-4{gap:calc(var(--adu-spacing)*4)}.adu\\:gap-6{gap:calc(var(--adu-spacing)*6)}.adu\\:gap-8{gap:calc(var(--adu-spacing)*8)}.adu\\:self-start{align-self:flex-start}.adu\\:self-stretch{align-self:stretch}.adu\\:justify-self-end{justify-self:flex-end}.adu\\:overflow-auto{overflow:auto}.adu\\:overflow-hidden{overflow:hidden}.adu\\:overflow-x-hidden{overflow-x:hidden}.adu\\:overflow-y-auto{overflow-y:auto}.adu\\:rounded{border-radius:.25rem}.adu\\:rounded-full{border-radius:9999px}.adu\\:rounded-md{border-radius:.5rem}.adu\\:rounded-none{border-radius:0}.adu\\:rounded-sm{border-radius:.375rem}.adu\\:rounded-xl{border-radius:.875rem}.adu\\:border{border-style:var(--tw-border-style);border-width:1px}.adu\\:border\\!{border-style:var(--tw-border-style)!important;border-width:1px!important}.adu\\:border-border-input{border-color:var(--border-input)}.adu\\:border-border-muted{border-color:var(--border-muted)}.adu\\:bg-\\[\\#232220\\]{background-color:#232220}.adu\\:bg-blue-500{background-color:var(--adu-color-blue-500)}.adu\\:bg-border-input{background-color:var(--border-input)}.adu\\:bg-button-primary{background-color:var(--button-primary)}.adu\\:bg-card{background-color:var(--card)}.adu\\:bg-destructive{background-color:var(--destructive)}.adu\\:bg-input{background-color:var(--input)}.adu\\:bg-page{background-color:var(--page)}.adu\\:bg-popover{background-color:var(--popover)}.adu\\:bg-surface-muted{background-color:var(--surface-muted)}.adu\\:bg-surface-selected{background-color:var(--surface-selected)}.adu\\:fill-current{fill:currentColor}.adu\\:p-0{padding:calc(var(--adu-spacing)*0)}.adu\\:p-1{padding:calc(var(--adu-spacing)*1)}.adu\\:p-2\\.5{padding:calc(var(--adu-spacing)*2.5)}.adu\\:p-4{padding:calc(var(--adu-spacing)*4)}.adu\\:px-1{padding-inline:calc(var(--adu-spacing)*1)}.adu\\:px-2{padding-inline:calc(var(--adu-spacing)*2)}.adu\\:px-3{padding-inline:calc(var(--adu-spacing)*3)}.adu\\:px-4{padding-inline:calc(var(--adu-spacing)*4)}.adu\\:px-6{padding-inline:calc(var(--adu-spacing)*6)}.adu\\:py-1\\.5{padding-block:calc(var(--adu-spacing)*1.5)}.adu\\:py-2{padding-block:calc(var(--adu-spacing)*2)}.adu\\:py-3{padding-block:calc(var(--adu-spacing)*3)}.adu\\:py-6{padding-block:calc(var(--adu-spacing)*6)}.adu\\:pt-3{padding-top:calc(var(--adu-spacing)*3)}.adu\\:pr-2{padding-right:calc(var(--adu-spacing)*2)}.adu\\:pl-8{padding-left:calc(var(--adu-spacing)*8)}.adu\\:text-center{text-align:center}.adu\\:font-aeonik{font-family:Aeonik,sans-serif}.adu\\:font-inter{font-family:Inter,Inter Fallback,system-ui,-apple-system,sans-serif}.adu\\:font-roboto-mono{font-family:Roboto Mono,sans-serif}.adu\\:text-2xl{font-size:2rem;line-height:var(--tw-leading,var(--adu-text-2xl--line-height))}.adu\\:text-3xl{font-size:2.5rem;line-height:var(--tw-leading,var(--adu-text-3xl--line-height))}.adu\\:text-base{font-size:1rem;line-height:var(--tw-leading,var(--adu-text-base--line-height))}.adu\\:text-lg{font-size:1.25rem;line-height:var(--tw-leading,var(--adu-text-lg--line-height))}.adu\\:text-sm{font-size:.875rem;line-height:var(--tw-leading,var(--adu-text-sm--line-height))}.adu\\:text-sm\\!{font-size:.875rem!important;line-height:var(--tw-leading,var(--adu-text-sm--line-height))!important}.adu\\:text-xl{font-size:1.5rem;line-height:var(--tw-leading,var(--adu-text-xl--line-height))}.adu\\:text-xs{font-size:.75rem;line-height:var(--tw-leading,var(--adu-text-xs--line-height))}.adu\\:leading-1\\.5{--tw-leading:calc(var(--adu-spacing)*1.5);line-height:calc(var(--adu-spacing)*1.5)}.adu\\:leading-1\\.15{--tw-leading:1.15;line-height:1.15}.adu\\:leading-1\\.20{--tw-leading:1.2;line-height:1.2}.adu\\:leading-1\\.25{--tw-leading:1.25;line-height:1.25}.adu\\:leading-1\\.30{--tw-leading:1.3;line-height:1.3}.adu\\:leading-1\\.33{--tw-leading:1.33;line-height:1.33}.adu\\:leading-1\\.40{--tw-leading:1.4;line-height:1.4}.adu\\:leading-1\\.45{--tw-leading:1.45;line-height:1.45}.adu\\:leading-1\\.65{--tw-leading:1.65;line-height:1.65}.adu\\:leading-none{--tw-leading:1;line-height:1}.adu\\:font-medium{--tw-font-weight:500;font-weight:500}.adu\\:font-normal{--tw-font-weight:400;font-weight:400}.adu\\:font-semibold{--tw-font-weight:600;font-weight:600}.adu\\:tracking-n-2xl{--tw-tracking:-.02em;letter-spacing:-.02em}.adu\\:tracking-n-3xl{--tw-tracking:-.02125em;letter-spacing:-.02125em}.adu\\:tracking-n-5xl{--tw-tracking:-.044em;letter-spacing:-.044em}.adu\\:tracking-n-6xl{--tw-tracking:-.05em;letter-spacing:-.05em}.adu\\:tracking-n-lg{--tw-tracking:-.011em;letter-spacing:-.011em}.adu\\:tracking-n-md{--tw-tracking:-.00625em;letter-spacing:-.00625em}.adu\\:tracking-n-sm{--tw-tracking:-.006em;letter-spacing:-.006em}.adu\\:tracking-n-xl{--tw-tracking:-.01125em;letter-spacing:-.01125em}.adu\\:tracking-n-xs{--tw-tracking:-.00525em;letter-spacing:-.00525em}.adu\\:tracking-p-2xl{--tw-tracking:.0375em;letter-spacing:.0375em}.adu\\:tracking-p-lg{--tw-tracking:.011em;letter-spacing:.011em}.adu\\:tracking-p-md{--tw-tracking:.01em;letter-spacing:.01em}.adu\\:tracking-p-sm{--tw-tracking:.005em;letter-spacing:.005em}.adu\\:tracking-p-xs{--tw-tracking:.0025em;letter-spacing:.0025em}.adu\\:tracking-widest{--tw-tracking:var(--adu-tracking-widest);letter-spacing:var(--adu-tracking-widest)}.adu\\:whitespace-nowrap{white-space:nowrap}.adu\\:text-\\[\\#f4f4f4\\]{color:#f4f4f4}.adu\\:text-\\[\\#f4f4f4\\]\\!{color:#f4f4f4!important}.adu\\:text-foreground{color:var(--foreground)}.adu\\:text-foreground-bold{color:var(--foreground-bold)}.adu\\:text-foreground-icon{color:var(--foreground-icon)}.adu\\:text-foreground-inverse{color:var(--foreground-inverse)}.adu\\:text-foreground-inverse\\!{color:var(--foreground-inverse)!important}.adu\\:text-white{color:var(--adu-color-white)}.adu\\:uppercase{text-transform:uppercase}.adu\\:underline{text-decoration-line:underline}.adu\\:underline-offset-4{text-underline-offset:4px}.adu\\:underline-offset-auto{text-underline-offset:auto}.adu\\:shadow-lg{--tw-shadow:0px 12px 12px -6px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-3))),0px 6px 6px -1.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-2))),0px 4px 4px 0px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)))}.adu\\:shadow-lg,.adu\\:shadow-md,.adu\\:shadow-sm{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:shadow-md{--tw-shadow:0px 6px 6px -3px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-2))),0px 4px 4px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)))}.adu\\:shadow-sm{--tw-shadow:0px 4px 4px -2px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)))}.adu\\:outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.adu\\:outline-hidden{outline-offset:2px;outline:2px solid #0000}}.adu\\:transition-\\[height\\],.adu\\:transition-all{transition-property:height;transition-timing-function:var(--tw-ease,var(--adu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--adu-default-transition-duration))}.adu\\:transition-all{transition-property:all}.adu\\:ease-in-out{--tw-ease:var(--adu-ease-in-out);transition-timing-function:var(--adu-ease-in-out)}.adu\\:fill-mode-both{--tw-animation-fill-mode:both;animation-fill-mode:both}.adu\\:outline-none{--tw-outline-style:none;outline-style:none}.adu\\:select-none{-webkit-user-select:none;user-select:none}.adu\\:fade-in{--tw-enter-opacity:0}.adu\\:fade-out{--tw-exit-opacity:0}.adu\\:slide-in-from-left{--tw-enter-translate-x:-100%}.adu\\:slide-in-from-right{--tw-enter-translate-x:100%}.adu\\:slide-out-to-left{--tw-exit-translate-x:-100%}.adu\\:slide-out-to-right{--tw-exit-translate-x:100%}@media (hover:hover){.adu\\:hover\\:bg-button-primary\\/90:hover{background-color:var(--button-primary)}@supports (color:color-mix(in lab,red,red)){.adu\\:hover\\:bg-button-primary\\/90:hover{background-color:color-mix(in oklab,var(--button-primary)90%,transparent)}}.adu\\:hover\\:bg-destructive\\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:hover\\:bg-destructive\\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.adu\\:hover\\:underline:hover{text-decoration-line:underline}}.adu\\:focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.adu\\:focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.adu\\:focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.adu\\:disabled\\:pointer-events-none:disabled{pointer-events:none}.adu\\:disabled\\:opacity-50:disabled{opacity:.5}.adu\\:has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.adu\\:has-\\[\\>svg\\]\\:px-2\\.5:has(>svg){padding-inline:calc(var(--adu-spacing)*2.5)}.adu\\:has-\\[\\>svg\\]\\:px-3:has(>svg){padding-inline:calc(var(--adu-spacing)*3)}.adu\\:has-\\[\\>svg\\]\\:px-4:has(>svg){padding-inline:calc(var(--adu-spacing)*4)}.adu\\:aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.adu\\:aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.adu\\:\\[\\\u0026_svg\\]\\:pointer-events-none svg,.adu\\:data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.adu\\:data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.adu\\:data-\\[inset\\]\\:pl-8[data-inset]{padding-left:calc(var(--adu-spacing)*8)}.adu\\:data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(var(--adu-spacing)*2*-1)}.adu\\:data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(var(--adu-spacing)*2)}.adu\\:data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(var(--adu-spacing)*2*-1)}.adu\\:data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(var(--adu-spacing)*2)}.adu\\:data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.adu\\:data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.adu\\:data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.adu\\:data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.adu\\:data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.adu\\:data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.adu\\:data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:var(--destructive)}.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@media (min-width:64rem){.adu\\:lg\\:block{display:block}.adu\\:lg\\:w-auto{width:auto}}.adu\\:dark\\:bg-destructive\\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:bg-destructive\\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.adu\\:dark\\:bg-input\\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.adu\\:dark\\:shadow-xs:is(.dark *){--tw-shadow:0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.adu\\:dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.adu\\:dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.adu\\:dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.adu\\:dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.adu\\:\\[\\\u0026_svg\\]\\:shrink-0 svg{flex-shrink:0}.adu\\:\\[\\\u0026_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--adu-spacing)*4);height:calc(var(--adu-spacing)*4)}.adu\\:\\[\\.border-b\\]\\:pb-6.border-b{padding-bottom:calc(var(--adu-spacing)*6)}.adu\\:\\[\\.border-t\\]\\:pt-6.border-t{padding-top:calc(var(--adu-spacing)*6)}:is(.adu\\:data-\\[variant\\=destructive\\]\\:\\*\\:\\[svg\\]\\:\\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}}@property --tw-animation-delay{syntax:\"*\";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:\"*\";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:\"*\";inherits:false}@property --tw-animation-fill-mode{syntax:\"*\";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:\"*\";inherits:false;initial-value:0}@font-face{font-family:Inter Fallback;src:local(Arial);size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}:root{--page:#fff;--card:#fff;--input:#fff;--destructive:#f3e2de;--popover:#fff;--layer:#fffc;--success:#abdfb9;--info:#b2c5fb;--caution:#ffe573;--warning:#ffbf9f;--button-subtle:#00000008;--surface-muted:#c2c2c2;--surface-selected:#efefef;--button-primary:#191919;--foreground:#767676;--foreground-inverse:#f4f4f4;--foreground-bold:#232220;--foreground-card:#232220;--foreground-destructive:#ba351d;--foreground-popover:#232220;--foreground-selected:#6742d5;--foreground-success:#008140;--foreground-info:#344ac5;--foreground-caution:#907600;--foreground-warning:#c45915;--foreground-icon:#1f1f1f;--border-boldest:#1f1f1f;--border-input:#e6e6e6;--border:#afadaa;--border-muted:#cecdca;--border-success:#008140;--border-info:#344ac5;--border-caution:#907600;--border-warning:#c45915;--code-layer:#f4f4f4;--code-content:#fffc;--code-string-key:#595959;--code-string-value:#149750;--code-boolean:#e27133;--code-delimiter:#afafaf;--code-number:#374ec9;--code-object:#6742d5;--color-shadow:0,0%,0%;--color-shadow-destructive:5,85%,37%;--transparency-level-1:.04;--transparency-level-2:.06;--transparency-level-3:.08;--transparency-level-4:.1;--transparency-level-5:.12;--transparency-level-6:.16;--transparency-level-7:.2;--transparency-level-8:.24;--transparency-level-9:.4}.dark{--page:#191919;--card:#21201f;--input:#0000000d;--destructive:#43140b;--popover:#21201f;--layer:#29272580;--success:#225835;--info:#2f428b;--caution:#433600;--warning:#63361f;--button-subtle:#ffffffe6;--surface-muted:#4a4a4a;--surface-selected:#282828;--button-primary:#fff;--foreground:#7b7b7b;--foreground-inverse:#191919;--foreground-bold:#efede9;--foreground-card:#efede9;--foreground-destructive:#ff9179;--foreground-popover:#efede9;--foreground-selected:#b3a7ff;--foreground-success:#61d287;--foreground-info:#94b2ff;--foreground-caution:#f8d523;--foreground-warning:#ff9f6e;--foreground-icon:#eee;--border-boldest:#eee;--border-input:#282828;--border:#63615e;--border-muted:#3f3d3a;--border-success:#61d287;--border-info:#94b2ff;--border-caution:#f8d523;--border-warning:#ff9f6e;--code-layer:#21201f;--code-content:#1a1918;--code-string-key:#b4b4b4;--code-string-value:#61d287;--code-boolean:#ff9f6e;--code-delimiter:#7b7b7b;--code-number:#94b2ff;--code-object:#b3a7ff;--color-shadow:0,0%,100%;--color-shadow-destructive:5,85%,37%;--transparency-level-1:.04;--transparency-level-2:.06;--transparency-level-3:.08;--transparency-level-4:.1;--transparency-level-5:.12;--transparency-level-6:.16;--transparency-level-7:.2;--transparency-level-8:.24;--transparency-level-9:.4}.adu-dropdown-menu-content,.adu-dropdown-menu-content:after,.adu-dropdown-menu-content:before{border-width:1px;border-color:var(--border-input)}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"\u003cpercentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"\u003cpercentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"\u003clength>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ease{syntax:\"*\";inherits:false}"},{"filePath":"ui/universal-components/universal-components-1.0.22.css","href":"/_mintlify/custom/docs-staging/8ce0b80bca908d91/ui/universal-components/universal-components-1.0.22.css"}],"page":{"pagePath":"docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment","slug":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment","pageMetadata":{"title":"Automatisation du déploiement Business-to-Consumer","sidebarTitle":"Automatisation du déploiement","description":"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Tip,Tooltip,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Tooltip)_missingMdxReference(`Tooltip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`En plus d’adopter des pratiques exemplaires en matière de gestion des changements et d’`,_jsx(_components.a,{href:`/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/quality-assurance`,children:`assurance qualité`}),`, les clients qui réussissent intégreront aussi la gestion des ressources Auth0 à un processus de déploiement automatisé. Comme il est indiqué dans la section Architecture, sous `,_jsx(_components.a,{href:`/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/architecture#sdlc-support`,children:`SDLC support`}),`, vous voudrez vous assurer de configurer des tenants Auth0 distincts pour les environnements de développement, de test et de production, et que cette configuration soit presque identique d’un tenant à l’autre. L’automatisation du déploiement aide à garantir cette cohérence, de sorte que le tenant de chaque environnement soit configuré de la même façon et que les bogues causés par des écarts de configuration entre les environnements soient moins susceptibles de se produire.`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Quelle que soit la façon dont vous configurez l’automatisation du déploiement, nous vous recommandons d’effectuer des tests unitaires de vos Rules, custom DB scripts et Hooks avant le déploiement, puis d’exécuter également des tests d’intégration sur votre tenant après le déploiement. Pour en savoir plus à ce sujet, consultez les directives d’`,_jsx(_components.a,{href:`/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/quality-assurance`,children:`Assurance qualité`}),`.`]})}),`\n`,_jsx(_components.p,{children:`Auth0 prend en charge différentes approches d’automatisation du déploiement, et chacune peut être utilisée conjointement avec l’autre au besoin\\xA0:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Les `,_jsx(_components.a,{href:`/docs/fr-ca/deploy-monitor/deploy-cli-tool`,children:`outils Auth0 Deploy CLI`}),` fournissent un script facile à utiliser qui peut vous aider à vous intégrer à votre pipeline existant d’intégration continue et de déploiement continu (CI/CD).`]}),`\n`,_jsxs(_components.li,{children:[`Si vous ne pouvez pas vous intégrer directement à un pipeline CI/CD, ou si pour une raison quelconque vous n’en avez pas, les `,_jsx(_components.a,{href:`/docs/fr-ca/customize/extensions`,children:`Source Control Extensions`}),` d’Auth0 peuvent fournir un processus d’automatisation de base facile à configurer et nécessitant très peu d’entretien.`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Le Deploy CLI Tool et les source control extensions peuvent entraîner des changements destructifs; les modifications manuelles effectuées directement dans le Dashboard entre des déploiements automatisés pourraient être perdues\\xA0! Pour cette raison, si l’un ou l’autre est utilisé, `,_jsx(_components.strong,{children:`toutes`}),` les modifications devraient être déployées à partir du sous-système de contrôle de code source référencé par les outils, et non effectuées manuellement.`]})}),`\n`,_jsxs(_components.p,{children:[`Chaque environnement peut aussi nécessiter une configuration propre à cet environnement — les `,_jsx(Tooltip,{tip:`Client ID\\xA0: valeur d’identification attribuée à votre ressource enregistrée par Auth0.`,cta:`Voir le glossaire`,href:`/docs/fr-ca/glossary?term=Client+ID`,children:`Client ID`}),` et les `,_jsx(Tooltip,{tip:`Client Secret\\xA0: Secret utilisé par un client (application) pour s’authentifier auprès de l’Authorization Server; il ne devrait être connu que du client et de l’Authorization Server et doit être suffisamment aléatoire pour ne pas pouvoir être deviné.`,cta:`Voir le glossaire`,href:`/docs/fr-ca/glossary?term=Client+Secrets`,children:`Client Secrets`}),` seront différents d’un tenant Auth0 à l’autre, par exemple — vous voudrez donc disposer d’un moyen d’y faire référence de manière dynamique plutôt que d’utiliser des valeurs codées en dur. Auth0 prend en charge la gestion des renseignements de configuration propres à l’environnement au moyen de l’une des deux approches suivantes\\xA0:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Utiliser les `,_jsx(_components.a,{href:`#tenant-specific-variables`,children:`Variables propres au tenant`})]}),`\n`,_jsx(_components.li,{children:`Utiliser le keyword replacement si vous utilisez l’outil Auth0 Deploy CLI`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`tenant-specific-variables`,children:`Variables propres au tenant`}),`\n`,_jsxs(_components.p,{children:[`Auth0 vous permet de configurer des variables accessibles depuis l’`,_jsx(_components.a,{href:`/docs/fr-ca/customize/extensions`,children:`extensibilité`}),` personnalisée; on peut les considérer comme des variables d’environnement pour votre tenant Auth0. Au lieu d’encoder en dur des références qui changent lorsque le code passe d’un environnement de développement, de test ou de production à un autre, vous pouvez utiliser un nom de variable configuré dans le tenant et référencé par le code d’extensibilité personnalisée. Il est ainsi plus facile d’utiliser le même code personnalisé, sans modification, dans différents tenants, puisque le code peut référencer des variables qui seront remplies avec des valeurs propres au tenant au moment de l’exécution :`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Pour utiliser des variables dans Actions, consultez `,_jsx(_components.a,{href:`/docs/fr-ca/customize/actions/write-your-first-action`,children:`Write Your First Action`}),` pour apprendre à configurer des secrets dans l’éditeur`]}),`\n`,_jsxs(_components.li,{children:[`Pour utiliser des variables dans Rules, voyez comment `,_jsx(_components.a,{href:`/docs/fr-ca/customize/rules/configuration`,children:`configurer des valeurs`})]}),`\n`,_jsxs(_components.li,{children:[`Pour utiliser des variables dans Hooks, voyez comment configurer des `,_jsx(_components.a,{href:`/docs/fr-ca/customize/hooks/hook-secrets`,children:`secrets`}),` dans l’éditeur`]}),`\n`,_jsxs(_components.li,{children:[`Pour utiliser des variables dans Custom DB Scripts, consultez les `,_jsx(_components.a,{href:`/docs/fr-ca/authenticate/database-connections/custom-db/create-db-connection#step-3-add-configuration-parameters`,children:`paramètres de configuration`})]}),`\n`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Nous recommandons d’utiliser des variables pour stocker les valeurs propres au tenant, ainsi que tout secret sensible qui ne devrait pas être exposé dans votre code personnalisé. Si votre code personnalisé est déployé sur GitHub/GitLab/Bitbucket/VSTS, l’utilisation d’une variable propre au tenant permet d’éviter l’exposition de valeurs sensibles dans votre dépôt.`})}),`\n`,_jsx(Heading,{level:`2`,id:`project-planning-guide`,children:`Guide de planification de projet`}),`\n`,_jsx(_components.p,{children:`Nous offrons un guide de planification au format PDF que vous pouvez télécharger et consulter pour en savoir plus sur les stratégies que nous recommandons.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.a,{href:`https://assets.ctfassets.net/cdy7uua7fh8z/3er1aEQ7Ul0q3c9leJWczR/b1f18b4c16abb7e78b01e4eb2b52bb8e/B2C_Project_Planning.pdf`,children:`Guide de planification de projet B2C IAM`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Automatisation du déploiement Business-to-Consumer","sidebarTitle":"Automatisation du déploiement","description":"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Variables propres au tenant","slug":"tenant-specific-variables","depth":2,"children":[]},{"title":"Guide de planification de projet","slug":"project-planning-guide","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/docs-staging/68ac07e0f912aad4/docs/scripts/navbar-controller.js","/_mintlify/custom/docs-staging/98c52e2a822716a4/docs/scripts/overscroll-disable.js","/_mintlify/custom/docs-staging/354202415d9984b3/ui/auth0-docs-ui-1.10.0.umd.js","/_mintlify/custom/docs-staging/9464ddebf19c31a9/ui/universal-components/universal-components-1.0.22.umd.js"],"subdomain":"docs-staging","siteName":"Auth0 Docs","title":"Automatisation du déploiement Business-to-Consumer - Auth0 Docs","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"manual"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/docs/get-started/architecture-scenarios/business-to-consumer/deployment","matchLevel":1},"fr":{"href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment","matchLevel":0},"ja":{"href":"/docs/ja-jp/get-started/architecture-scenarios/business-to-consumer/deployment","matchLevel":1}}},"lastModified":"2026-09-10T15:57:23.749Z","originalFileLocation":"docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment.mdx","locale":"fr"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Auth0 Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/svg+xml\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/svg+xml\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/favicon.svg\">\u003cmeta data-mint-head property=\"og:title\" content=\"Automatisation du déploiement Business-to-Consumer - Auth0 Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Auth0 Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs-staging.mintlify.app/docs/images/share-image.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Automatisation du déploiement Business-to-Consumer - Auth0 Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs-staging.mintlify.app/docs/images/share-image.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Auth0 Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9921FE\">\u003clink data-mint-head rel=\"canonical\" href=\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://auth0.com/docs/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://auth0.com/docs/ja-jp/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://auth0.com/docs/get-started/architecture-scenarios/business-to-consumer/deployment\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://auth0.com/#organization\",\"name\":\"Auth0 Docs\",\"url\":\"https://auth0.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/docs/images/logo/light.svg\"}},{\"@type\":\"WebSite\",\"@id\":\"https://auth0.com#website\",\"name\":\"Auth0 Docs\",\"url\":\"https://auth0.com\",\"publisher\":{\"@id\":\"https://auth0.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment#webpage\",\"url\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\",\"name\":\"Automatisation du déploiement Business-to-Consumer\",\"description\":\"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\",\"dateModified\":\"2026-09-10T15:57:23.749Z\",\"isPartOf\":{\"@id\":\"https://auth0.com#website\"},\"breadcrumb\":{\"@id\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Learn the Basics\",\"item\":\"https://auth0.com/docs/fr-ca/get-started/identity-fundamentals\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Architecture Scenarios\",\"item\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Business Use Case Planning Guides\",\"item\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/architecture\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Business to Consumer\",\"item\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Automatisation du déploiement Business-to-Consumer\",\"item\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment#article\",\"headline\":\"Automatisation du déploiement Business-to-Consumer\",\"name\":\"Automatisation du déploiement Business-to-Consumer\",\"description\":\"Automatisez le déploiement du tenant Auth0 pour une mise en œuvre B2C IAM à l’aide de Deploy CLI, du contrôle de code source et de fichiers de configuration propres à l’environnement.\",\"url\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment\",\"mainEntityOfPage\":{\"@id\":\"https://auth0.com/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment#webpage\"},\"image\":\"https://auth0.com/docs/images/share-image.png\",\"dateModified\":\"2026-09-10T15:57:23.749Z\",\"publisher\":{\"@id\":\"https://auth0.com/#organization\"},\"isPartOf\":{\"@id\":\"https://auth0.com#website\"}}]}\u003c/script>","siteName":"Auth0 Docs","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/docs/get-started/architecture-scenarios/business-to-consumer/deployment"}]},{"language":"fr","tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/docs/fr-ca"}]},{"tab":"Get Started","icon":"play","directory":"accordion","pages":[{"title":"Bien démarrer avec Auth0","sidebarTitle":"Bien démarrer","href":"/docs/fr-ca/get-started"},{"group":"Learn the Basics","root":{"title":"Notions fondamentales de l’identité","href":"/docs/fr-ca/get-started/identity-fundamentals"},"expanded":true,"pages":[{"title":"Introduction à Auth0","href":"/docs/fr-ca/get-started/identity-fundamentals/introduction-to-auth0"},{"title":"Introduction à la gestion des identités et des accès (IAM)","href":"/docs/fr-ca/get-started/identity-fundamentals/identity-and-access-management"},{"title":"Authentification vs. autorisation","href":"/docs/fr-ca/get-started/identity-fundamentals/authentication-and-authorization"},{"group":"Authentication and Authorization Flows","root":{"sidebarTitle":"Aperçu","title":"Flux d’authentification et d’autorisation","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow"},"pages":[{"title":"Quel flux OAuth 2.0 devrais-je utiliser ?","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/which-oauth-2-0-flow-should-i-use"},{"group":"Authorization Code Flow","pages":[{"sidebarTitle":"Aperçu","title":"Flux de code d’autorisation","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow"},{"title":"Ajouter la connexion au moyen du flux de code d’autorisation","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow/add-login-auth-code-flow"},{"title":"Appeler votre API à l’aide du flux de code d’autorisation","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow/call-your-api-using-the-authorization-code-flow"},{"title":"Flux du code d’autorisation avec Rich Authorization Requests (RAR)","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-rar"},{"title":"Flux de code d’autorisation avec des requêtes d’autorisation poussées (PAR)","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-par"},{"title":"Flux de code d’autorisation avec des requêtes d’autorisation sécurisées par JWT (JAR)","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-jar"}]},{"group":"Authorization Code Flow with Proof Key for Code Exchange","pages":[{"title":"Flux de code d’autorisation avec clé de preuve pour l’échange de code (PKCE)","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce"},{"title":"Ajouter la connexion à l’aide du flux du code d’autorisation avec PKCE","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce/add-login-using-the-authorization-code-flow-with-pkce"},{"title":"Appelez votre API à l’aide du flux de code d’autorisation avec PKCE","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce/call-your-api-using-the-authorization-code-flow-with-pkce"}]},{"group":"Client Credentials Flow","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Flux des identifiants client","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow"},{"title":"Appelez votre API à l’aide du flux Client Credentials","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow/call-your-api-using-the-client-credentials-flow"},{"title":"Personnaliser les jetons à l’aide de Hooks dans le Client Credentials Flow","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-flow/customize-tokens-using-hooks-with-client-credentials-flow"}]},{"group":"Client-Initiated Backchannel Authentication Flow","pages":[{"sidebarTitle":"Aperçu","title":"Flux Client-Initiated Backchannel Authentication","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-initiated-backchannel-authentication-flow"},{"title":"Notifications push mobiles avec CIBA","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-initiated-backchannel-authentication-flow/mobile-push-notifications-with-ciba"},{"title":"Notifications par courriel avec CIBA","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-initiated-backchannel-authentication-flow/email-notifications-with-ciba"},{"title":"Autorisation utilisateur avec CIBA","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-initiated-backchannel-authentication-flow/user-authorization-with-ciba"}]},{"group":"Custom Token Exchange Flow","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Flux d’échange de jeton personnalisé","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/token-exchange-flow"},{"sidebarTitle":"Appeler votre API à l’aide du flux d’échange de jeton personnalisé","title":"Appeler votre API à l’aide du flux d’échange de jeton personnalisé","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/token-exchange-flow/call-your-api-using-the-custom-token-exchange-flow"}]},{"group":"Device Authorization Flow","pages":[{"sidebarTitle":"Aperçu","title":"Flux d’autorisation de l’appareil","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/device-authorization-flow"},{"title":"Faire une requête à votre API au moyen du flux d’autorisation d’appareil","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/device-authorization-flow/call-your-api-using-the-device-authorization-flow"}]},{"group":"Implicit Flow with Form Post","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Flux implicite avec Form Post","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post"},{"title":"Atténuer les attaques par rejeu lors de l’utilisation de l’Implicit Flow","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post/mitigate-replay-attacks-when-using-the-implicit-flow"},{"title":"Ajouter la connexion avec le flux implicite avec Form Post","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/implicit-flow-with-form-post/add-login-using-the-implicit-flow-with-form-post"}]},{"group":"Hybrid Flow","pages":[{"sidebarTitle":"Aperçu","title":"Flux hybride","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/hybrid-flow"},{"title":"Appelez votre API à l’aide du Hybrid Flow","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/hybrid-flow/call-api-hybrid-flow"}]},{"group":"Resource Owner Password Flow","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Flux Resource Owner Password","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/resource-owner-password-flow"},{"title":"Effectuer une requête vers votre API à l’aide du flux Resource Owner Password","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/resource-owner-password-flow/call-your-api-using-resource-owner-password-flow"},{"title":"Éviter les problèmes courants liés au flux Resource Owner Password et à la protection contre les attaques","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/resource-owner-password-flow/avoid-common-issues-with-resource-owner-password-flow-and-attack-protection"}]},{"title":"S’authentifier avec Private Key JWT","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authenticate-with-private-key-jwt"},{"title":"S’authentifier avec mTLS","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/authenticate-with-mtls"},{"title":"Client Credentials Exchange","href":"/docs/fr-ca/get-started/authentication-and-authorization-flow/client-credentials-exchange"}]},{"group":"Architecture Scenarios","root":{"title":"Scénarios d’architecture","href":"/docs/fr-ca/get-started/architecture-scenarios"},"pages":[{"group":"Business Use Case Planning Guides","pages":[{"group":"Business to Consumer","root":{"title":"Scénarios d’architecture Business to Consumer","sidebarTitle":"Business to Consumer","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer"},"pages":[{"title":"Architecture Business-to-Consumer","sidebarTitle":"Architecture","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/architecture"},{"title":"Provisioning Business-to-Consumer","sidebarTitle":"Provisioning","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/provisioning"},{"title":"Authentification Business-to-Consumer","sidebarTitle":"Authentification","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/authentication"},{"title":"Image de marque Business-to-Consumer","sidebarTitle":"Image de marque","description":"Comment configurer les éléments Auth0 pour refléter votre image de marque et l'expérience utilisateur souhaitée.","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/branding"},{"title":"Automatisation du déploiement Business-to-Consumer","sidebarTitle":"Automatisation du déploiement","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/deployment"},{"title":"Assurance qualité Business-to-Consumer","sidebarTitle":"Assurance qualité","description":"Planifiez l’assurance qualité d’une mise en œuvre Auth0 B2C IAM en définissant les environnements de test ainsi que la couverture de régression et les étapes d’approbation que chaque version doit franchir.","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/quality-assurance"},{"title":"Gestion du profil Business-to-Consumer","sidebarTitle":"Gestion du profil","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/profile-management"},{"title":"Autorisation Business-to-Consumer","sidebarTitle":"Autorisation","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/authorization"},{"title":"Déconnexion Business-to-Consumer","sidebarTitle":"Déconnexion","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/logout"},{"title":"Opérations Business-to-Consumer","sidebarTitle":"Opérations","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/operations"},{"group":"Launch Preparation","root":{"title":"Préparation du lancement Business-to-Consumer","sidebarTitle":"Préparation du lancement","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch"},"pages":[{"title":"Vérification du tenant Business-to-Consumer","sidebarTitle":"Vérification du tenant","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/tenant-check"},{"title":"Tests Business-to-Consumer terminés","sidebarTitle":"Tests terminés","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/testing"},{"title":"Préparation opérationnelle Business-to-Consumer","sidebarTitle":"Préparation opérationnelle","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/operations-readiness"},{"title":"Préparation à la conformité Business-to-Consumer","sidebarTitle":"Préparation à la conformité","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/compliance-readiness"},{"title":"Préparation du soutien Business-to-Consumer","sidebarTitle":"Préparation du soutien","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/support-readiness"},{"title":"Préparation du lancement Business-to-Consumer","sidebarTitle":"Préparation du lancement","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-consumer/launch/launch-day"}]}]},{"group":"Business to Business","root":{"title":"Scénarios d’architecture Business to Business","sidebarTitle":"Business to Business","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business"},"pages":[{"title":"Architecture interentreprises","sidebarTitle":"Architecture","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/architecture"},{"title":"Provisionnement interentreprises","sidebarTitle":"Provisionnement","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/provisioning"},{"title":"Authentification Business-to-Business","sidebarTitle":"Authentification","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/authentication"},{"title":"Image de marque interentreprises","sidebarTitle":"Image de marque","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/branding"},{"title":"Automatisation du déploiement interentreprises","sidebarTitle":"Automatisation du déploiement","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/deployment"},{"title":"Assurance qualité interentreprises","sidebarTitle":"Assurance qualité","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/quality-assurance"},{"title":"Gestion du profil interentreprises","sidebarTitle":"Gestion du profil","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/profile-management"},{"title":"Autorisation interentreprises","sidebarTitle":"Autorisation","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/authorization"},{"title":"Déconnexion interentreprises","sidebarTitle":"Déconnexion","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/logout"},{"title":"Opérations interentreprises","sidebarTitle":"Opérations","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/operations"},{"group":"Launch Preparation (B2B)","root":{"title":"Préparation du lancement interentreprises","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch"},"pages":[{"title":"Vérification du tenant (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/tenant-check"},{"title":"Tests terminés (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/testing"},{"title":"Préparation opérationnelle (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/operations-readiness"},{"title":"Préparation à la conformité (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/compliance-readiness"},{"title":"Préparation du soutien (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/support-readiness"},{"title":"Préparation du jour du lancement (B2B)","href":"/docs/fr-ca/get-started/architecture-scenarios/business-to-business/launch/launch-day"}]}]},{"title":"Entreprise aux employés","href":"/docs/fr-ca/get-started/architecture-scenarios/b2e"}]},{"group":"Application Architecture","pages":[{"group":"Multiple Organization Architecture","root":{"title":"Architecture à organisations multiples","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture"},"pages":[{"group":"Single Identity Provider Organizations","root":{"sidebarTitle":"Aperçu","title":"Organizations à fournisseur d'identité unique","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations"},"pages":[{"title":"Single Identity Provider: Provisioning","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/provisioning"},{"title":"Fournisseur d’identité unique : Authentification","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/authentication"},{"title":"Fournisseur d’identité unique : Image de marque","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/branding"},{"title":"Single Identity Provider : Autorisation","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/authorization"},{"title":"Fournisseur d’identité unique : gestion du profil","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/profile-management"},{"title":"Single Identity Provider: Déconnexion","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/single-identity-provider-organizations/logout"}]},{"title":"Organisations à plusieurs fournisseurs d'identité","href":"/docs/fr-ca/get-started/architecture-scenarios/multiple-organization-architecture/multiple-idp-orgs"}]},{"group":"SSO for Regular Web Apps","root":{"title":"Applications Web régulières avec authentification unique","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps"},"pages":[{"title":"Aperçu de la solution (Applications web + SSO)","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps/part-1"},{"title":"Auth0 Configuration (Applications Web + SSO)","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps/part-2"},{"title":"Mise en œuvre de l’application (applications web + SSO)","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps/part-3"},{"title":"Mise en œuvre ASP.NET Core (Web Apps + SSO)","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps/implementation-aspnetcore"},{"title":"Conclusion (Applications Web + SSO)","href":"/docs/fr-ca/get-started/architecture-scenarios/sso-for-regular-web-apps/part-4"}]},{"group":"Server Application + API","root":{"title":"Applications serveur avec API","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api"},"pages":[{"title":"Aperçu de la solution (applications serveur + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/part-1"},{"title":"Auth0 Configuration (Applications serveur + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/part-2"},{"title":"Mise en œuvre de l’application (applications serveur + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/part-3"},{"title":"Applications serveur + API : mise en œuvre de l’API en Node.js","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/api-implementation-nodejs"},{"title":"Applications serveur + API : mise en œuvre Python pour la tâche cron","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/cron-implementation-python"},{"title":"Conclusion (applications serveur + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/server-application-api/part-4"}]},{"group":"SPA + API","root":{"title":"Applications monopages (SPA) avec API","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api"},"pages":[{"title":"Aperçu de la solution (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/part-1"},{"title":"Auth0 Configuration (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/part-2"},{"title":"Configuration de l’API et de la SPA (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/part-3"},{"title":"Mise en œuvre Angular 2 du SPA (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/spa-implementation-angular2"},{"title":"Mise en œuvre de l’API en Node.js (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/api-implementation-nodejs"},{"title":"Conclusion (SPAs + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/spa-api/part-4"}]},{"group":"Mobile + API","root":{"title":"Applications mobiles avec une API","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api"},"pages":[{"title":"Aperçu de la solution (applications mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/part-1"},{"title":"Auth0 Configuration (Apps mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/part-2"},{"title":"Configuration de l’API et du mobile (applications mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/part-3"},{"title":"Mise en œuvre de l’application mobile Android (Applications mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/mobile-implementation-android"},{"title":"Mise en œuvre de l’API en Node.js (applications mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/api-implementation-nodejs"},{"title":"Conclusion (Applications mobiles + API)","href":"/docs/fr-ca/get-started/architecture-scenarios/mobile-api/part-4"}]}]},{"group":"Implementation Help","pages":[{"title":"Listes de vérification pour la planification de la mise en œuvre","sidebarTitle":"Listes de vérification","href":"/docs/fr-ca/get-started/architecture-scenarios/checklists"},{"title":"Ressources de mise en œuvre","sidebarTitle":"Ressources","href":"/docs/fr-ca/get-started/architecture-scenarios/implementation-resources"}]}]}]},{"group":"Quickstarts","pages":[{"title":"Quickstarts d’Auth0","sidebarTitle":"Quickstarts","href":"/docs/fr-ca/quickstarts"},{"group":"Single Page App","pages":[{"title":"Ajouter la connexion à votre application React","sidebarTitle":"React","mode":"wide","href":"/docs/fr-ca/quickstart/spa/react"},{"title":"Ajouter la connexion à votre application Angular","sidebarTitle":"Angular","mode":"wide","href":"/docs/fr-ca/quickstart/spa/angular"},{"mode":"wide","sidebarTitle":"JavaScript","title":"Ajouter la connexion à votre application JavaScript","href":"/docs/fr-ca/quickstart/spa/vanillajs"},{"mode":"wide","sidebarTitle":"Cap'n Web","title":"Ajouter la connexion à votre application Cap'n Web","href":"/docs/fr-ca/quickstart/spa/capn-web"},{"title":"Ajouter la connexion à votre application Vue","sidebarTitle":"Vue","mode":"wide","href":"/docs/fr-ca/quickstart/spa/vuejs"},{"mode":"wide","sidebarTitle":"Flutter (Web)","title":"Ajouter la fonctionnalité de connexion à votre application Web Flutter","href":"/docs/fr-ca/quickstart/spa/flutter"},{"mode":"wide","sidebarTitle":"Svelte","title":"Ajouter la connexion à votre application Svelte","href":"/docs/fr-ca/quickstart/spa/svelte"}]},{"group":"Regular Web App","pages":[{"title":"Ajouter la connexion à votre application Next.js","sidebarTitle":"Next.js","mode":"wide","href":"/docs/fr-ca/quickstart/webapp/nextjs"},{"title":"Ajouter la connexion à votre application TanStack Start","sidebarTitle":"TanStack Start React","mode":"wide","href":"/docs/fr-ca/quickstart/webapp/tanstack-start"},{"title":"Ajoutez l’authentification à votre application Nuxt.js","sidebarTitle":"Nuxt.js","mode":"wide","href":"/docs/fr-ca/quickstart/webapp/nuxt"},{"mode":"wide","sidebarTitle":"Express","title":"Ajouter l’authentification à votre application Express","href":"/docs/fr-ca/quickstart/webapp/express"},{"mode":"wide","title":"Ajouter la fonctionnalité Login à votre application Express","sidebarTitle":"Express (Beta)","href":"/docs/fr-ca/quickstart/webapp/express-beta"},{"title":"Ajouter le login à votre application Fastify","sidebarTitle":"Fastify","mode":"wide","href":"/docs/fr-ca/quickstart/webapp/fastify"},{"mode":"wide","sidebarTitle":"Flask","title":"Ajouter la connexion à votre application Flask","href":"/docs/fr-ca/quickstart/webapp/python"},{"mode":"wide","sidebarTitle":"Django","title":"Ajoutez la connexion à votre application Django","href":"/docs/fr-ca/quickstart/webapp/django/interactive"},{"mode":"wide","sidebarTitle":"FastAPI","title":"Ajouter la connexion à votre application FastAPI","href":"/docs/fr-ca/quickstart/webapp/fastapi"},{"mode":"wide","sidebarTitle":"Go","title":"Ajouter la connexion à votre application Go","href":"/docs/fr-ca/quickstart/webapp/golang"},{"mode":"wide","sidebarTitle":"Java","title":"Ajouter la connexion à votre application Java Servlet","href":"/docs/fr-ca/quickstart/webapp/java"},{"mode":"wide","sidebarTitle":"Java EE","title":"Ajoutez la connexion à votre application Java EE","href":"/docs/fr-ca/quickstart/webapp/java-ee"},{"title":"Java Spring Boot","href":"/docs/fr-ca/quickstart/webapp/java-spring-boot"},{"mode":"wide","sidebarTitle":"Blazor Server","title":"Ajouter la fonctionnalité de connexion à votre application Blazor Server","href":"/docs/fr-ca/quickstart/webapp/aspnet-core-blazor-server"},{"mode":"wide","sidebarTitle":"ASP.NET Core MVC","title":"Ajouter la connexion à votre application ASP.NET MVC","href":"/docs/fr-ca/quickstart/webapp/aspnet-core"},{"title":"Ajouter la connexion à votre application Laravel","sidebarTitle":"Laravel","mode":"wide","href":"/docs/fr-ca/quickstart/webapp/laravel/interactive"},{"mode":"wide","sidebarTitle":"PHP","title":"Ajouter la connexion à votre application PHP","href":"/docs/fr-ca/quickstart/webapp/php/interactive"},{"mode":"wide","title":"NGINX Plus","href":"/docs/fr-ca/quickstart/webapp/nginx-plus/interactive"},{"mode":"wide","sidebarTitle":"Apache","title":"Ajouter la fonctionnalité de connexion à votre application Apache","href":"/docs/fr-ca/quickstart/webapp/apache/index"},{"mode":"wide","sidebarTitle":"Ruby on Rails","title":"Ajouter la connexion des utilisateurs à votre application Ruby on Rails","href":"/docs/fr-ca/quickstart/webapp/rails/interactive"},{"title":"Ajouter la connexion à votre application Hono","mode":"wide","sidebarTitle":"Hono","href":"/docs/fr-ca/quickstart/webapp/hono"},{"title":"Ajouter la fonctionnalité de connexion à votre application ASP.NET OWIN","sidebarTitle":"ASP.NET OWIN","href":"/docs/fr-ca/quickstart/webapp/aspnet-owin"}]},{"group":"Native/Mobile App","pages":[{"title":"Ajoutez la connexion à votre application iOS ou macOS avec le SDK Auth0.swift","sidebarTitle":"iOS / macOS","mode":"wide","href":"/docs/fr-ca/quickstart/native/ios-swift"},{"title":"Ajouter la fonctionnalité de connexion à votre application Android avec le SDK Auth0.Android","sidebarTitle":"Android","mode":"wide","href":"/docs/fr-ca/quickstart/native/android"},{"mode":"wide","sidebarTitle":"Facebook Login pour Android","title":"Ajouter Native Facebook Login à votre application Android","href":"/docs/fr-ca/quickstart/native/android-facebook-login"},{"mode":"wide","sidebarTitle":"Facebook Login pour iOS","title":"Ajouter Facebook Login natif à votre application iOS","href":"/docs/fr-ca/quickstart/native/ios-swift-facebook-login"},{"title":"Ajouter la connexion à votre application React Native","sidebarTitle":"React Native","mode":"wide","href":"/docs/fr-ca/quickstart/native/react-native"},{"title":"Ajouter la fonctionnalité de connexion à votre application Expo","sidebarTitle":"Expo","mode":"wide","href":"/docs/fr-ca/quickstart/native/react-native-expo"},{"title":"Ajouter la connexion à votre application Flutter","sidebarTitle":"Flutter","mode":"wide","href":"/docs/fr-ca/quickstart/native/flutter"},{"title":"Ajoutez la connexion à votre application Flutter pour Windows","sidebarTitle":"Flutter Windows","mode":"wide","href":"/docs/fr-ca/quickstart/native/flutter-windows"},{"title":"Ajouter la connexion à votre application Kotlin Multiplatform avec le SDK Auth0 Kotlin Multiplatform","sidebarTitle":"Kotlin Multiplatform","mode":"wide","href":"/docs/fr-ca/quickstart/native/kotlin-multiplatform"},{"mode":"wide","sidebarTitle":".NET Android et iOS","title":"Ajoutez la fonction de connexion à votre application .NET Android et iOS","href":"/docs/fr-ca/quickstart/native/net-android-ios/index"},{"title":"Ajouter la connexion à votre application .NET MAUI","sidebarTitle":"MAUI","mode":"wide","href":"/docs/fr-ca/quickstart/native/maui"},{"title":"Ajouter la connexion à votre application Ionic Angular avec Capacitor","sidebarTitle":"Ionic \u0026 Capacitor (Angular)","mode":"wide","href":"/docs/fr-ca/quickstart/native/ionic-angular"},{"title":"Ajouter le login à votre application Ionic React avec Capacitor","sidebarTitle":"Ionic et Capacitor (React)","mode":"wide","href":"/docs/fr-ca/quickstart/native/ionic-react"},{"title":"Ajouter la connexion à votre application Ionic Vue avec Capacitor","sidebarTitle":"Ionic et Capacitor (Vue)","mode":"wide","href":"/docs/fr-ca/quickstart/native/ionic-vue"},{"mode":"wide","sidebarTitle":"UWP","title":"Ajouter la connexion à votre application UWP","href":"/docs/fr-ca/quickstart/native/windows-uwp-csharp"},{"mode":"wide","title":"Device Authorization Flow","href":"/docs/fr-ca/quickstart/native/device/interactive"},{"mode":"wide","title":"Ajouter la connexion à votre application WPF ou WinForms","sidebarTitle":"WPF / WinForms","href":"/docs/fr-ca/quickstart/native/wpf-winforms"}]},{"group":"Backend/API","pages":[{"title":"Protégez votre API Express.js","sidebarTitle":"API Express","mode":"wide","href":"/docs/fr-ca/quickstart/backend/nodejs"},{"mode":"wide","title":"Protégez votre API Express.js","sidebarTitle":"API Express (bêta)","href":"/docs/fr-ca/quickstart/backend/express-api-beta"},{"mode":"wide","sidebarTitle":"API Fastify","title":"Protégez votre API Fastify","href":"/docs/fr-ca/quickstart/backend/fastify/index"},{"mode":"wide","sidebarTitle":"API Django","title":"Ajouter l’autorisation à votre application API Django","href":"/docs/fr-ca/quickstart/backend/django/interactive"},{"title":"API Flask","href":"/docs/fr-ca/quickstart/backend/python/index"},{"mode":"wide","sidebarTitle":"API FastAPI","title":"API FastAPI","href":"/docs/fr-ca/quickstart/backend/fastapi"},{"title":"API Java Spring Boot","href":"/docs/fr-ca/quickstart/backend/java-spring-security5/index"},{"title":"Protégez votre API Go","sidebarTitle":"API Go","mode":"wide","href":"/docs/fr-ca/quickstart/backend/golang"},{"mode":"wide","title":"ASP.NET Core Web API","href":"/docs/fr-ca/quickstart/backend/aspnet-core-webapi"},{"mode":"wide","title":"ASP.NET Web API (OWIN) : Autorisation","sidebarTitle":"ASP.NET Web API (OWIN)","href":"/docs/fr-ca/quickstart/backend/webapi-owin"},{"mode":"wide","sidebarTitle":"API Laravel","title":"Ajouter l’autorisation à votre application Laravel","href":"/docs/fr-ca/quickstart/backend/laravel/interactive"},{"mode":"wide","sidebarTitle":"API PHP","title":"Ajouter l’autorisation à votre application PHP","href":"/docs/fr-ca/quickstart/backend/php/interactive"},{"mode":"wide","sidebarTitle":"API Ruby on Rails","title":"Ajouter l’en-tête Authorization à votre API Ruby on Rails","href":"/docs/fr-ca/quickstart/backend/rails/interactive"}]}]},{"group":"AI Tools","root":{"title":"Outils d’IA","href":"/docs/fr-ca/get-started/ai-tools"},"expanded":true,"directory":"accordion","pages":[{"title":"Agent Skills pour Auth0","href":"/docs/fr-ca/quickstart/agent-skills"},{"group":"Auth0 Model Context Protocol (MCP) Server","pages":[{"title":"Premiers pas avec Auth0 Model Context Protocol (MCP) Server","sidebarTitle":"Premiers pas","href":"/docs/fr-ca/get-started/auth0-mcp-server/getting-started-with-auth0-mcp-server"},{"group":"Guides","root":{"sidebarTitle":"Overview","title":"Guides d’Auth0 Model Context Protocol (MCP) Server","href":"/docs/fr-ca/get-started/auth0-mcp-server/auth0-mcp-server-guides"},"pages":[{"title":"Simplifiez les flux d’autorisation d’API avec Auth0 Model Context Protocol (MCP) Server","sidebarTitle":"Simplifiez les flux d’autorisation d’API","href":"/docs/fr-ca/get-started/auth0-mcp-server/auth0-mcp-server-guides/streamline-api-authorization-flows-with-auth0-model-context-protocol-mcp"},{"title":"Mettre en place une surveillance avancée de la sécurité avec Auth0 Model Context Protocol (MCP) Server","sidebarTitle":"Mettre en place une surveillance avancée de la sécurité","href":"/docs/fr-ca/get-started/auth0-mcp-server/auth0-mcp-server-guides/implement-advanced-security-monitoring-with-auth0-model-context-protocol-mcp"},{"title":"Comprendre les scopes","href":"/docs/fr-ca/get-started/auth0-mcp-server/auth0-mcp-server-guides/understanding-scopes"}]},{"title":"Référence des outils pour Auth0 Model Context Protocol (MCP) Server","sidebarTitle":"Référence des outils","href":"/docs/fr-ca/get-started/auth0-mcp-server/auth0-mcp-tools-reference"}]},{"title":"Agent Experience Score d’Auth0","href":"/docs/fr-ca/get-started/auth0-agent-experience"},{"title":"Outils de documentation d’IA","href":"/docs/fr-ca/get-started/build-with-ai-tools"},{"title":"Auth0 Guide","href":"/docs/fr-ca/get-started/auth0-guide"}]},{"group":"Auth0 Overview","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Vue d’ensemble d’Auth0","href":"/docs/fr-ca/get-started/auth0-overview"},{"group":"Auth0 Dashboard","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Auth0 Dashboard","href":"/docs/fr-ca/get-started/auth0-overview/dashboard"},{"title":"Naviguer dans Auth0 Dashboard","sidebarTitle":"Naviguer dans Auth0 Dashboard","href":"/docs/fr-ca/get-started/auth0-overview/dashboard/use-dashboard-navigation"},{"title":"À propos de la page Activity","href":"/docs/fr-ca/get-started/auth0-overview/dashboard/activity"},{"title":"Fonctionnalités de recherche dans Auth0 Dashboard","href":"/docs/fr-ca/get-started/auth0-overview/dashboard/search-and-filter-auth0-dashboard"}]},{"group":"Create Tenants","pages":[{"sidebarTitle":"Aperçu","title":"Créer des tenants","href":"/docs/fr-ca/get-started/auth0-overview/create-tenants"},{"title":"Créer plusieurs tenants","href":"/docs/fr-ca/get-started/auth0-overview/create-tenants/create-multiple-tenants"},{"title":"Lier plusieurs tenants à un seul abonnement Auth0","href":"/docs/fr-ca/get-started/auth0-overview/create-tenants/child-tenants"},{"title":"Configurer plusieurs environnements","href":"/docs/fr-ca/get-started/auth0-overview/create-tenants/set-up-multiple-environments"},{"title":"Meilleures pratiques pour les applications multilocataires","href":"/docs/fr-ca/get-started/auth0-overview/create-tenants/multi-tenant-apps-best-practices"}]},{"title":"Enregistrer des API","href":"/docs/fr-ca/get-started/auth0-overview/set-up-apis"}]},{"group":"Configure Auth0","pages":[{"group":"Auth0 Teams","pages":[{"sidebarTitle":"Aperçu","title":"Auth0 Teams","href":"/docs/fr-ca/get-started/auth0-teams"},{"title":"Gestion du tenant","href":"/docs/fr-ca/get-started/auth0-teams/tenant-management"},{"title":"Gestion des membres de l’équipe","href":"/docs/fr-ca/get-started/auth0-teams/team-member-management"},{"title":"gestion des membres du tenant","href":"/docs/fr-ca/get-started/auth0-teams/tenant-member-management"},{"title":"Configurer les politiques de sécurité","href":"/docs/fr-ca/get-started/auth0-teams/configure-security-policies"},{"title":"Dépannage de Teams","href":"/docs/fr-ca/get-started/auth0-teams/troubleshoot-teams"},{"title":"Team Activity","href":"/docs/fr-ca/get-started/auth0-teams/team-activity"},{"title":"À propos du Quarterly Snapshot","href":"/docs/fr-ca/get-started/auth0-teams/quarterly-snapshot"}]},{"group":"Dashboard Profile","pages":[{"sidebarTitle":"Aperçu","title":"Profil du Dashboard","href":"/docs/fr-ca/get-started/dashboard-profile"},{"title":"Gestion des sessions de connexion à Auth0 Dashboard","href":"/docs/fr-ca/get-started/dashboard-profile/auth0-dashboard-login-session-management"},{"title":"Thèmes clair et sombre","href":"/docs/fr-ca/get-started/dashboard-profile/light-and-dark-themes"}]},{"group":"Tenant Settings","pages":[{"sidebarTitle":"Aperçu","title":"Paramètres du tenant","href":"/docs/fr-ca/get-started/tenant-settings"},{"group":"Signing Keys","pages":[{"title":"Clés de signature","sidebarTitle":"Aperçu","href":"/docs/fr-ca/get-started/tenant-settings/signing-keys"},{"title":"Rotation des clés de signature","href":"/docs/fr-ca/get-started/tenant-settings/signing-keys/rotate-signing-keys"},{"title":"Révoquer les clés de signature","href":"/docs/fr-ca/get-started/tenant-settings/signing-keys/revoke-signing-keys"},{"title":"Consulter les certificats de signature","href":"/docs/fr-ca/get-started/tenant-settings/signing-keys/view-signing-certificates"},{"title":"Clés publiques de signature fournies par le client","href":"/docs/fr-ca/get-started/tenant-settings/signing-keys/customer-signing-keys"}]},{"title":"Configurer les paramètres du code utilisateur pour l’appareil","href":"/docs/fr-ca/get-started/tenant-settings/configure-device-user-code-settings"},{"title":"Activer le Single Sign-On pour les tenants","href":"/docs/fr-ca/get-started/tenant-settings/enable-sso-for-legacy-tenants"},{"title":"Trouvez le nom de votre tenant ou son ID","href":"/docs/fr-ca/get-started/tenant-settings/find-your-tenant-name-or-tenant-id"}]},{"group":"APIs","pages":[{"title":"API","sidebarTitle":"Aperçu","href":"/docs/fr-ca/get-started/apis"},{"title":"Paramètres des API","href":"/docs/fr-ca/get-started/apis/api-settings"},{"title":"Politiques d’accès aux API pour les applications","href":"/docs/fr-ca/get-started/apis/api-access-policies-for-applications"},{"title":"Ajouter des permissions d’API","href":"/docs/fr-ca/get-started/apis/add-api-permissions"},{"title":"Supprimer des permissions d’API","href":"/docs/fr-ca/get-started/apis/delete-api-permissions"},{"group":"Scopes","pages":[{"sidebarTitle":"Vue d’ensemble","title":"Portées","href":"/docs/fr-ca/get-started/apis/scopes"},{"title":"scopes d’API","href":"/docs/fr-ca/get-started/apis/scopes/api-scopes"},{"title":"OpenID Connect Scopes","href":"/docs/fr-ca/get-started/apis/scopes/openid-connect-scopes"},{"title":"Exemples de cas d’utilisation : Portées and claims","href":"/docs/fr-ca/get-started/apis/scopes/sample-use-cases-scopes-and-claims"}]},{"title":"Configurer le profil de jeton d’accès","href":"/docs/fr-ca/get-started/apis/configure-access-token-profile"},{"title":"Configurer JSON Web Encryption (JWE)","href":"/docs/fr-ca/get-started/apis/configure-json-web-encryption"},{"title":"Configurer une API logique pour plusieurs API","href":"/docs/fr-ca/get-started/apis/set-logical-api"},{"title":"Configurer Rich Authorization Requests (RAR)","href":"/docs/fr-ca/get-started/apis/configure-rich-authorization-requests"},{"title":"Créer des applications machine à machine pour les tests","href":"/docs/fr-ca/get-started/apis/create-m2m-app-test"},{"title":"Activer le contrôle d’accès basé sur les rôles pour les API","href":"/docs/fr-ca/get-started/apis/enable-role-based-access-control-for-apis"}]},{"group":"Manage Dashboard Access","pages":[{"title":"Gérer l’accès à l’Auth0 Dashboard","sidebarTitle":"Aperçu","href":"/docs/fr-ca/get-started/manage-dashboard-access"},{"title":"Accès au Dashboard par rôle","href":"/docs/fr-ca/get-started/manage-dashboard-access/feature-access-by-role"},{"title":"Ajouter des membres du tenant","href":"/docs/fr-ca/get-started/manage-dashboard-access/add-dashboard-users"},{"title":"Modifier les membres du tenant","href":"/docs/fr-ca/get-started/manage-dashboard-access/edit-dashboard-users"},{"title":"Retirer des membres du tenant","href":"/docs/fr-ca/get-started/manage-dashboard-access/remove-dashboard-users"},{"title":"Mettre à jour les adresses courriel des utilisateurs du Dashboard","href":"/docs/fr-ca/get-started/manage-dashboard-access/update-dashboard-user-email"},{"group":"Multi-factor authentication for Dashboard users","pages":[{"title":"Authentification multifacteur pour les utilisateurs du Dashboard","href":"/docs/fr-ca/get-started/manage-dashboard-access/add-change-remove-mfa"},{"title":"Ajouter l’authentification multifacteur pour l’accès à Auth0 Dashboard","href":"/docs/fr-ca/get-started/manage-dashboard-access/add-change-remove-mfa/add-mfa"},{"title":"Supprimer ou modifier l’authentification multifacteur du Dashboard","href":"/docs/fr-ca/get-started/manage-dashboard-access/add-change-remove-mfa/remove-or-change-dashboard-multi-factor-authentication"}]},{"title":"Configurer l’authentification unique pour Auth0 Dashboard","href":"/docs/fr-ca/get-started/manage-dashboard-access/configure-single-sign-on-for-auth0-dashboard"}]}]},{"group":"Applications","pages":[{"group":"Application Types","root":{"title":"Types d’applications dans Auth0","href":"/docs/fr-ca/get-started/applications"},"pages":[{"title":"Applications confidentielles et publiques","sidebarTitle":"Confidentielles et publiques","href":"/docs/fr-ca/get-started/applications/confidential-and-public-applications"},{"title":"Applications de première partie et applications tierces","href":"/docs/fr-ca/get-started/applications/first-party-and-third-party-applications"}]},{"group":"Register Applications","root":{"title":"Créer des applications","href":"/docs/fr-ca/get-started/auth0-overview/create-applications"},"pages":[{"title":"Enregistrer des applications avec CIMD","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/register-applications-with-cimd"},{"title":"Enregistrer des applications natives","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/native-apps"},{"title":"Enregistrer des applications web monopages","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/single-page-web-apps"},{"title":"Enregistrer des applications Web classiques","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/regular-web-apps"},{"title":"Enregistrer des applications Machine to Machine","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/machine-to-machine-apps"},{"title":"Configurer un fournisseur d’identité dans Access Gateway","href":"/docs/fr-ca/get-started/auth0-overview/create-applications/configure-an-identity-provider-in-access-gateway"},{"title":"Enregistrement dynamique des clients","href":"/docs/fr-ca/get-started/applications/dynamic-client-registration"},{"title":"Supprimer des Applications","href":"/docs/fr-ca/get-started/applications/remove-applications"}]},{"group":"Configure Applications","pages":[{"title":"Paramètres de l’application","href":"/docs/fr-ca/get-started/applications/application-settings"},{"title":"Paramètres des informations d’identification","href":"/docs/fr-ca/get-started/applications/credentials"},{"title":"Espaces réservés pour les URL de sous-domaine","href":"/docs/fr-ca/get-started/applications/wildcards-for-subdomains"},{"title":"Configurer les métadonnées d’application","href":"/docs/fr-ca/get-started/applications/configure-application-metadata"},{"group":"Third-Party Applications","root":{"title":"Applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications"},"pages":[{"title":"Contrôles de sécurité pour les applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications/security-controls"},{"title":"Consentement de l’utilisateur et applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications/user-consent-and-third-party-applications"},{"title":"Configurer les applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications/configure-third-party-applications"},{"title":"Résoudre les problèmes des applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications/troubleshooting"},{"title":"Mode permissif pour les applications tierces","href":"/docs/fr-ca/get-started/applications/third-party-applications/permissive-mode"}]}]},{"group":"Connections and Grant Types","pages":[{"title":"Configurer des connexions de base de données","href":"/docs/fr-ca/get-started/applications/set-up-database-connections"},{"title":"Tester les connexions de base de données","href":"/docs/fr-ca/get-started/applications/test-database-connections"},{"title":"Mettre à jour les connexions de l’application","href":"/docs/fr-ca/get-started/applications/update-application-connections"},{"title":"Types d’octroi d’application","href":"/docs/fr-ca/get-started/applications/application-grant-types"},{"title":"Mettre à jour les types d’octroi","href":"/docs/fr-ca/get-started/applications/update-grant-types"},{"title":"Accès des applications aux API : autorisations client","href":"/docs/fr-ca/get-started/applications/application-access-to-apis-client-grants"},{"title":"Révoquer l’accès aux API à l’aide des octrois d’application","href":"/docs/fr-ca/get-started/applications/revoke-api-access"},{"title":"Activer les intégrations d’authentification unique pour les applications","href":"/docs/fr-ca/get-started/applications/enable-sso-for-applications"}]},{"group":"Security and Compliance","pages":[{"title":"Algorithmes de signature","href":"/docs/fr-ca/get-started/applications/signing-algorithms"},{"title":"Modifier les algorithmes de signature d’une application","href":"/docs/fr-ca/get-started/applications/change-application-signing-algorithms"},{"title":"Rotation des informations d’identification","href":"/docs/fr-ca/get-started/applications/rotate-credentials"},{"title":"Rotation des secrets clients","href":"/docs/fr-ca/get-started/applications/rotate-client-secret"},{"group":"Configure FAPI Compliance","root":{"title":"Configurer la conformité FAPI","href":"/docs/fr-ca/get-started/applications/configure-fapi-compliance"},"pages":[{"title":"Configurer Auth0 pour réussir les OpenID FAPI Conformance Tests","href":"/docs/fr-ca/get-started/applications/configure-fapi-compliance/configure-auth0-to-pass-openid-fapi-certification-tests"}]},{"title":"Configurer les requêtes d’autorisation poussées (PAR)","href":"/docs/fr-ca/get-started/applications/configure-par"},{"title":"Configurer les requêtes d’autorisation sécurisées par JWT (JAR)","href":"/docs/fr-ca/get-started/applications/configure-jar"},{"group":"Configure mTLS Authentication","root":{"title":"Configurer l’authentification mTLS","href":"/docs/fr-ca/get-started/applications/configure-mtls"},"pages":[{"title":"Configurer le Customer Edge","href":"/docs/fr-ca/get-started/applications/configure-mtls/set-up-the-customer-edge"},{"title":"Configurer l’authentification mTLS pour un tenant","href":"/docs/fr-ca/get-started/applications/configure-mtls/configure-mtls-for-a-tenant"},{"title":"Configurer l’authentification mTLS pour un client","href":"/docs/fr-ca/get-started/applications/configure-mtls/configure-mtls-for-a-client"}]},{"title":"Configurer l’authentification Private Key JWT","href":"/docs/fr-ca/get-started/applications/configure-private-key-jwt"},{"title":"Configure Client-Initiated Backchannel Authentication","href":"/docs/fr-ca/get-started/applications/configure-client-initiated-backchannel-authentication"}]},{"group":"Platform and Deployment","pages":[{"title":"Activer la prise en charge d’Android App Links","href":"/docs/fr-ca/get-started/applications/enable-android-app-links-support"},{"title":"Activer la prise en charge des liens universels dans Apple Xcode","href":"/docs/fr-ca/get-started/applications/enable-universal-links-support-in-apple-xcode"},{"title":"Configurer Cross-Origin Resource Sharing","href":"/docs/fr-ca/get-started/applications/set-up-cors"},{"title":"Configurer Applications avec la découverte OIDC","href":"/docs/fr-ca/get-started/applications/configure-applications-with-oidc-discovery"},{"title":"Configurer les applications WS-Fed","href":"/docs/fr-ca/get-started/applications/configure-ws-fed-applications"},{"title":"Tester les applications localement","href":"/docs/fr-ca/get-started/applications/work-with-auth0-locally"}]}]}]},{"tab":"Authenticate","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/authenticate.svg","pages":[{"title":"Authenticate","href":"/docs/fr-ca/authenticate"}]},{"tab":"Manage Users","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/manage-users.svg","pages":[{"title":"Manage Users","href":"/docs/fr-ca/manage-users"}]},{"tab":"Customize","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/customize.svg","pages":[{"title":"Customize","href":"/docs/fr-ca/customize"}]},{"tab":"Secure","icon":"shield-check","pages":[{"title":"Secure","href":"/docs/fr-ca/secure"}]},{"tab":"Deploy \u0026 Monitor","icon":"chart-simple","pages":[{"title":"Deploy \u0026 Monitor","href":"/docs/fr-ca/deploy-monitor"}]},{"tab":"AI Agents \u0026 MCP","icon":"robot","menu":[{"item":"Agents as Principal","icon":"user-tag","pages":[{"title":"Agents as Principal","href":"/docs/fr-ca/ai-agents-mcp/agents-as-principal"}]},{"item":"Cross App Access (XAA)","icon":"arrows-cross","pages":[{"title":"Cross App Access (XAA)","href":"/docs/fr-ca/ai-agents-mcp/cross-app-access"}]}],"pages":[{"title":"AI Agents \u0026 MCP","href":"/docs/fr-ca/ai-agents-mcp/agents-as-principal"}]},{"tab":"Platform","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/platform.svg","pages":[{"title":"Platform","href":"/docs/fr-ca/troubleshoot"}]},{"tab":"Dev Tools","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/dev-tools.svg","menu":[{"item":"APIs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/apis.svg","pages":[{"title":"APIs","href":"/docs/fr-ca/api"}]},{"item":"SDKs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/sdks.svg","pages":[{"title":"SDKs","href":"/docs/fr-ca/libraries"}]},{"item":"Events Catalog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/events-catalog.svg","pages":[{"title":"Events Catalog","href":"/docs/fr-ca/events"}]},{"item":"Actions Reference","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/actions-reference.svg","pages":[{"title":"Actions Reference","href":"/docs/fr-ca/actions/reference"}]},{"item":"Tenant Log Catalog","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/tenant-logs.svg","pages":[{"title":"Tenant Log Catalog","href":"/docs/fr-ca/tenant-logs"}]},{"item":"Universal Components","icon":"https://mintlify.s3.us-west-1.amazonaws.com/docs-staging/icons/universal-components.svg","pages":[{"title":"Universal Components","href":"/docs/fr-ca/get-started/universal-components/universal-components-overview"}]}],"pages":[{"title":"Dev Tools","href":"/docs/fr-ca/api"}]}]},{"language":"ja","pages":[{"title":"ja","href":"/docs/ja-jp/get-started/architecture-scenarios/business-to-consumer/deployment"}]}]},"title":"Automatisation du déploiement Business-to-Consumer - Auth0 Docs","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":[],"chunks":[]}