<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to</id>
    <title>Logto docs Blog</title>
    <updated>2026-04-17T08:48:21.514Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to"/>
    <subtitle>Logto docs Blog</subtitle>
    <icon>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/img/favicon.ico</icon>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with .NET Core (Razor Pages)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://learn.microsoft.com/aspnet/core/razor-pages" target="_blank" rel="noopener">.NET Core (Razor Pages)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://learn.microsoft.com/aspnet/core/razor-pages" target="_blank" rel="noopener">.NET Core (Razor Pages)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->.NET Core (Razor Pages)<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate .NET Core (Razor Pages) with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate .NET Core (Razor Pages) with Logto" title="Lien direct vers Integrate .NET Core (Razor Pages) with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built on .NET Core 8.0. The SDK is compatible with .NET 6.0 or higher.</li>
<li class="">The .NET Core sample projects are available in the <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/csharp" target="_blank" rel="noopener noreferrer" class="link_hf7f">GitHub repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Add the NuGet package to your project:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> package Logto.AspNetCore.Authentication</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-logto-authentication">Add Logto authentication<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#add-logto-authentication" class="hash-link" aria-label="Lien direct vers Add Logto authentication" title="Lien direct vers Add Logto authentication" translate="no">​</a></h3>
<p>Open <code>Startup.cs</code> (or <code>Program.cs</code>) and add the following code to register Logto authentication services:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Logto</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Authentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> builder </span><span class="token operator">=</span><span class="token plain"> WebApplication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">CreateBuilder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">args</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Endpoint </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:Endpoint"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppId </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppId"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppSecret </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppSecret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>The <code>AddLogtoAuthentication</code> method will do the following things:</p>
<ul>
<li class="">Set the default authentication scheme to <code>LogtoDefaults.CookieScheme</code>.</li>
<li class="">Set the default challenge scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Set the default sign-out scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Add cookie and OpenID Connect authentication handlers to the authentication scheme.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="sign-in-and-sign-out-flows">Sign-in and sign-out flows<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#sign-in-and-sign-out-flows" class="hash-link" aria-label="Lien direct vers Sign-in and sign-out flows" title="Lien direct vers Sign-in and sign-out flows" translate="no">​</a></h3>
<p>Before we proceed, there are two confusing terms in the .NET Core authentication middleware that we need to clarify:</p>
<ol>
<li class=""><strong>CallbackPath</strong>: The URI that Logto will redirect the user back to after the user has signed in (the "redirect URI" in Logto)</li>
<li class=""><strong>RedirectUri</strong>: The URI that will be redirected to after necessary actions have been taken in the Logto authentication middleware.</li>
</ol>
<p>The sign-in process can be illustrated as follows:</p>
<!-- -->
<br>
<p>Similarly, .NET Core also has <strong>SignedOutCallbackPath</strong> and <strong>RedirectUri</strong> for the sign-out flow.</p>
<p>For the sake of clarity, we'll refer them as follows:</p>
<table><thead><tr><th>Term we use</th><th>.NET Core term</th></tr></thead><tbody><tr><td>Logto redirect URI</td><td>CallbackPath</td></tr><tr><td>Logto post sign-out redirect URI</td><td>SignedOutCallbackPath</td></tr><tr><td>Application redirect URI</td><td>RedirectUri</td></tr></tbody></table>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<p>First, let's configure the <strong>Logto redirect URI</strong>. Add the following URI to the "Redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/Callback</span><br></span></code></pre></div></div>
<p>To configure the <strong>Logto post sign-out redirect URI</strong>, add the following URI to the "Post sign-out redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/SignedOutCallback</span><br></span></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="change-the-default-paths">Change the default paths<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#change-the-default-paths" class="hash-link" aria-label="Lien direct vers Change the default paths" title="Lien direct vers Change the default paths" translate="no">​</a></h4>
<p>The <strong>Logto redirect URI</strong> has a default path of <code>/Callback</code>, and the <strong>Logto post sign-out redirect URI</strong> has a default path of <code>/SignedOutCallback</code>.</p>
<p>You can leave them as are if there's no special requirement. If you want to change it, you can set the <code>CallbackPath</code> and <code>SignedOutCallbackPath</code> property for <code>LogtoOptions</code>:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Other configurations...</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">CallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Foo"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">SignedOutCallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Bar"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Remember to update the value in the Logto application details page accordingly.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-insign-out-buttons">Implement sign-in/sign-out buttons<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#implement-sign-insign-out-buttons" class="hash-link" aria-label="Lien direct vers Implement sign-in/sign-out buttons" title="Lien direct vers Implement sign-in/sign-out buttons" translate="no">​</a></h3>
<p>First, add the handler methods to your <code>PageModel</code>, for example:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Pages/Index.cshtml.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">IndexModel</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token type-list class-name">PageModel</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">OnPostSignInAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> HttpContext</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">ChallengeAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">OnPostSignOutAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> HttpContext</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignOutAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Then, add the buttons to your Razor page:</p>
<div class="language-cshtml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Pages/Index.cshtml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-cshtml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Is authenticated: </span><span class="token value variable keyword" style="color:rgb(189, 147, 249);font-style:italic">@</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">User</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">Identity</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">?.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">IsAuthenticated</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">form</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">method</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">post</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token block keyword" style="color:rgb(189, 147, 249);font-style:italic">@if</span><span class="token block"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp">User</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp">Identity</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token block csharp language-csharp">IsAuthenticated </span><span class="token block csharp language-csharp operator">==</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp boolean">true</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">type</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">submit</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-page-handler</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignOut</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign out</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">  </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">type</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">submit</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-page-handler</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignIn</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign in</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">  </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">form</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<p>It will show the "Sign in" button if the user is not authenticated, and show the "Sign out" button if the user is authenticated.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->.NET Core (Razor Pages)<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->.NET Core (Razor Pages)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-razor-pages-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="dotnet-core-razor-pages" term="dotnet-core-razor-pages"/>
        <category label="c#" term="c#"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Expo (React Native)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://expo.dev/" target="_blank" rel="noopener">Expo (React Native)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://expo.dev/" target="_blank" rel="noopener">Expo (React Native)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Native app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Native app<!-- -->" section or filter all the available "<!-- -->Native app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Expo<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Expo with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Expo with Logto" title="Lien direct vers Integrate Expo with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built on Expo ~50.0.6.</li>
<li class="">The sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/react-native/tree/master/packages/rn-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Install Logto SDK and peer dependencies via your favorite package manager:</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">Yarn</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">npm</span><span class="token plain"> i @logto/rn</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">npm</span><span class="token plain"> i expo-crypto expo-secure-store expo-web-browser @react-native-async-storage/async-storage</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/rn</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> expo-crypto expo-secure-store expo-web-browser @react-native-async-storage/async-storage</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">pnpm</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/rn</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">pnpm</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> expo-crypto expo-secure-store expo-web-browser @react-native-async-storage/async-storage</span><br></span></code></pre></div></div></div></div></div>
<p>The <code>@logto/rn</code> package is the SDK for Logto. The remaining packages are its peer dependencies. They couldn't be listed as direct dependencies because the Expo CLI requires that all dependencies for native modules be installed directly within the root project's <code>package.json</code>.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>If you're installing this in a <span class="linkWrapper_B4Bt"><a href="https://docs.expo.dev/bare/overview" target="_blank" rel="noopener noreferrer" class="link_hf7f">bare React Native app<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, you should also follow these <span class="linkWrapper_B4Bt"><a href="https://docs.expo.dev/bare/installing-expo-modules/" target="_blank" rel="noopener noreferrer" class="link_hf7f">additional installation instructions<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logto-provider">Init Logto provider<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#init-logto-provider" class="hash-link" aria-label="Lien direct vers Init Logto provider" title="Lien direct vers Init Logto provider" translate="no">​</a></h3>
<p>Import and use <code>LogtoProvider</code> to provide a Logto context:</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">App.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">LogtoProvider</span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token imports"> </span><span class="token imports maybe-class-name">LogtoConfig</span><span class="token imports"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/rn'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> config</span><span class="token operator">:</span><span class="token plain"> </span><span class="token maybe-class-name">LogtoConfig</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">App</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">LogtoProvider</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">config</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">config</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">YourAppContent</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">LogtoProvider</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<p>Switch to the application details page of Logto Console. Add a native redirect URI (for example, <code>io.logto://callback</code>), then click "Save".</p>
<ul>
<li class="">
<p>For iOS, the redirect URI scheme does not really matter since the <code>ASWebAuthenticationSession</code> class will listen to the redirect URI regardless of if it's registered.</p>
</li>
<li class="">
<p>For Android, the redirect URI scheme must be filled in Expo's <code>app.json</code> file, for example:</p>
<div class="language-json codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">app.json</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-json codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property">"expo"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token property">"scheme"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"io.logto"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
</li>
</ul>
<p>Now back to your app, you can use <code>useLogto</code> hook to sign in and sign out:</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">App.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> useLogto </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/rn'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">Button</span><span class="token imports"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'react-native'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">Content</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> isAuthenticated </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">useLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">div</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">isAuthenticated </span><span class="token operator">?</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">Button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">title</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">Sign out</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onPress</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript arrow operator" style="color:rgb(255, 121, 198)">=&gt;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript function" style="color:rgb(80, 250, 123)">signOut</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token comment" style="color:rgb(98, 114, 164)">// Replace the redirect URI with your own</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">Button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">title</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">Sign in</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onPress</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript arrow operator" style="color:rgb(255, 121, 198)">=&gt;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript function" style="color:rgb(80, 250, 123)">signIn</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript string" style="color:rgb(255, 121, 198)">'io.logto://callback'</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">div</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Expo<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Expo (React Native)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-expo-react-native-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="expo-react-native" term="expo-react-native"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Express]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://expressjs.com/" target="_blank" rel="noopener">Express</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://expressjs.com/" target="_blank" rel="noopener">Express</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Express<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Express with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Express with Logto" title="Lien direct vers Integrate Express with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/js/tree/master/packages/express-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<!-- -->
<p>Install Logto SDK via your favorite package manager:</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">yarn</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><pre><code class="language-bash">npm i <!-- -->@logto/express cookie-parser express-session</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">pnpm add <!-- -->@logto/express cookie-parser express-session</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">yarn add <!-- -->@logto/express cookie-parser express-session</code></pre></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="integration">Integration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#integration" class="hash-link" aria-label="Lien direct vers Integration" title="Lien direct vers Integration" translate="no">​</a></h3>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="prepare-configs-and-required-middlewares">Prepare configs and required middlewares<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#prepare-configs-and-required-middlewares" class="hash-link" aria-label="Lien direct vers Prepare configs and required middlewares" title="Lien direct vers Prepare configs and required middlewares" translate="no">​</a></h3>
<p>Prepare configuration for the Logto client:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">app.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> LogtoExpressConfig </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/express'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> config</span><span class="token operator">:</span><span class="token plain"> LogtoExpressConfig </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appSecret</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-secret&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3001</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  baseUrl</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-express-app-base-url&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3000</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>The SDK requires <span class="linkWrapper_B4Bt"><a href="https://www.npmjs.com/package/express-session" target="_blank" rel="noopener noreferrer" class="link_hf7f">express-session<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to be configured in prior.</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">app.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> cookieParser </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'cookie-parser'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> session </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'express-session'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">use</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token function" style="color:rgb(80, 250, 123)">cookieParser</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">use</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token function" style="color:rgb(80, 250, 123)">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    secret</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'random_session_key'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Replace with your own secret</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    cookie</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> maxAge</span><span class="token operator">:</span><span class="token plain"> </span><span class="token number">14</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token number">24</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token number">60</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token number">60</span><span class="token plain"> </span><span class="token operator">*</span><span class="token plain"> </span><span class="token number">1000</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// In miliseconds</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="register-routes">Register routes<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#register-routes" class="hash-link" aria-label="Lien direct vers Register routes" title="Lien direct vers Register routes" translate="no">​</a></h3>
<p>The SDK provides a helper function <code>handleAuthRoutes</code> to register 3 routes:</p>
<ol>
<li class=""><code>/logto/sign-in</code>: Sign in with Logto.</li>
<li class=""><code>/logto/sign-in-callback</code>: Handle sign-in callback.</li>
<li class=""><code>/logto/sign-out</code>: Sign out with Logto.</li>
</ol>
<p>Add the following code to your app:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">app.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> handleAuthRoutes </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/express'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">use</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token function" style="color:rgb(80, 250, 123)">handleAuthRoutes</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">config</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>With the routes registered, now let's implement the sign-in and sign-out buttons in the home page. We need to redirect the user to the sign-in or sign-out route when needed. To help with this, use <code>withLogto</code> to inject authentication status to <code>req.user</code>.</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">app.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> withLogto </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/express'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">withLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">config</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">req</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> res</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  res</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">setHeader</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'content-type'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'text/html'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">req</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">user</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    res</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">end</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token template-string template-punctuation string" style="color:rgb(255, 121, 198)">`</span><span class="token template-string string" style="color:rgb(255, 121, 198)">&lt;div&gt;Hello </span><span class="token template-string interpolation interpolation-punctuation punctuation" style="color:rgb(248, 248, 242)">${</span><span class="token template-string interpolation">req</span><span class="token template-string interpolation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token template-string interpolation">user</span><span class="token template-string interpolation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token template-string interpolation">claims</span><span class="token template-string interpolation operator">?.</span><span class="token template-string interpolation">sub</span><span class="token template-string interpolation interpolation-punctuation punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token template-string string" style="color:rgb(255, 121, 198)">, &lt;a href="/logto/sign-out"&gt;Sign Out&lt;/a&gt;&lt;/div&gt;</span><span class="token template-string template-punctuation string" style="color:rgb(255, 121, 198)">`</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    res</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">end</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;div&gt;&lt;a href="/logto/sign-in"&gt;Sign In&lt;/a&gt;&lt;/div&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Express<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Express<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-express-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="express" term="express"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Flutter]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://flutter.dev/" target="_blank" rel="noopener">Flutter</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://flutter.dev/" target="_blank" rel="noopener">Flutter</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Native app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Native app<!-- -->" section or filter all the available "<!-- -->Native app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Flutter<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Flutter with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Flutter with Logto" title="Lien direct vers Integrate Flutter with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The SDK package is available on <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/logto_dart_sdk" target="_blank" rel="noopener noreferrer" class="link_hf7f">pub.dev<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and Logto <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/dart" target="_blank" rel="noopener noreferrer" class="link_hf7f">GitHub repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The sample project is built using <span class="linkWrapper_B4Bt"><a href="https://flutter.dev/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Flutter material<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. You can find it on <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/logto_dart_sdk/example" target="_blank" rel="noopener noreferrer" class="link_hf7f">pub.dev<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">This SDK is compatible with Flutter applications on iOS, Android, and Web platforms. Compatibility with other platforms has not been tested.</li>
</ul></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h2>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">pub.dev</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">GitHub</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><p>You can install the <code>logto_dart_sdk package</code> directly using the pub package manager.
Run the following command under your project root:</p><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">flutter pub </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> logto_dart_sdk</span><br></span></code></pre></div></div><p>Or add the following to your <code>pubspec.yaml</code> file:</p><div class="language-yaml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-yaml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token key atrule">dependencies</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token key atrule">logto_dart_sdk</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> ^3.0.0</span><br></span></code></pre></div></div><p>Then run:</p><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">flutter pub get</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><p>If you prefer to fork your own version of the SDK, you can clone the repository directly from GitHub.</p><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">git</span><span class="token plain"> clone https://github.com/logto-io/dart</span><br></span></code></pre></div></div></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="dependency-and-configurations">Dependency and configurations<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#dependency-and-configurations" class="hash-link" aria-label="Lien direct vers Dependency and configurations" title="Lien direct vers Dependency and configurations" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="sdk-version-compatibility">SDK version compatibility<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#sdk-version-compatibility" class="hash-link" aria-label="Lien direct vers SDK version compatibility" title="Lien direct vers SDK version compatibility" translate="no">​</a></h3>
<table><thead><tr><th>Logto SDK version</th><th>Dart SDK version</th><th>Dart 3.0 compatible</th></tr></thead><tbody><tr><td>&lt; 2.0.0</td><td>&gt;= 2.17.6 &lt; 3.0.0</td><td>false</td></tr><tr><td>&gt;= 2.0.0 &lt; 3.0.0</td><td>&gt;= 3.0.0</td><td>true</td></tr><tr><td>&gt;= 3.0.0</td><td>&gt;= 3.6.0</td><td>true</td></tr></tbody></table>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="flutter_secure_storage-set-up">flutter_secure_storage set up<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#flutter_secure_storage-set-up" class="hash-link" aria-label="Lien direct vers flutter_secure_storage set up" title="Lien direct vers flutter_secure_storage set up" translate="no">​</a></h3>
<p>Under the hood, this SDK uses <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/flutter_secure_storage" target="_blank" rel="noopener noreferrer" class="link_hf7f">flutter_secure_storage<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to implement the cross-platform persistent secure token storage.</p>
<ul>
<li class="">Keychain is used for iOS</li>
<li class="">AES encryption is used for Android.</li>
</ul>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="config-android-version">Config Android version<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#config-android-version" class="hash-link" aria-label="Lien direct vers Config Android version" title="Lien direct vers Config Android version" translate="no">​</a></h4>
<p>Set the android<!-- -->:minSdkVersion<!-- --> to <code>&gt;= 18</code> in your project's <code>android/app/build.gradle</code> file.</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">build.gradle</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">  android </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token operator">..</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      defaultConfig </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token operator">..</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          minSdkVersion </span><span class="token number">18</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token operator">..</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="disable-auto-backup-on-android">Disable auto backup on Android<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#disable-auto-backup-on-android" class="hash-link" aria-label="Lien direct vers Disable auto backup on Android" title="Lien direct vers Disable auto backup on Android" translate="no">​</a></h4>
<p>By default Android backups data on Google Drive. It can cause exception <code>java.security.InvalidKeyException:Failed</code> to unwrap key. To avoid this,</p>
<ol>
<li class="">
<p>To disable auto backup, go to your app manifest file and set the <code>android:allowBackup</code> and <code>android:fullBackupContent</code> attributes to <code>false</code>.</p>
<div class="language-xml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">AndroidManifest.xml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-xml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">...</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    ...</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">      </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">allowBackup</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">false</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">      </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">fullBackupContent</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">false</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">      </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">...</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        ...</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span></code></pre></div></div>
</li>
<li class="">
<p>Exclude <code>sharedprefs</code> from <code>FlutterSecureStorage</code>.</p>
<p>If you need to keep the <code>android:fullBackupContent</code> for your app rather than disabling it, you can exclude the <code>sharedprefs</code> directory from the backup.
See more details in the <span class="linkWrapper_B4Bt"><a href="https://developer.android.com/identity/data/autobackup#IncludingFiles" target="_blank" rel="noopener noreferrer" class="link_hf7f">Android documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<blockquote>
<p>In your AndroidManifest.xml file, add the android<!-- -->:fullBackupContent<!-- --> attribute to the <code>&lt;application&gt;</code> element, as shown in the following example. This attribute points to an XML file that contains backup rules.</p>
</blockquote>
<div class="language-xml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">AndroidManifest.xml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-xml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">...</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">  </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">fullBackupContent</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">@xml/backup_rules</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<blockquote>
<p>Create an XML file called <code>@xml/backup_rules</code> in the <code>res/xml/</code> directory. In this file, add rules with the <code>&lt;include&gt;</code> and <code>&lt;exclude&gt;</code> elements. The following sample backs up all shared preferences except device.xml:</p>
</blockquote>
<div class="language-xml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">@xml/backup_rules</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-xml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token prolog" style="color:rgb(189, 147, 249)">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">full-backup-content</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">exclude</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">domain</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">sharedpref</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">path</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">FlutterSecureStorage</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">full-backup-content</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
</li>
</ol>
<p>Please check <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/flutter_secure_storage#configure-android-version" target="_blank" rel="noopener noreferrer" class="link_hf7f">flutter_secure_storage<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> for more details.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="flutter_web_auth_2-set-up">flutter_web_auth_2 set up<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#flutter_web_auth_2-set-up" class="hash-link" aria-label="Lien direct vers flutter_web_auth_2 set up" title="Lien direct vers flutter_web_auth_2 set up" translate="no">​</a></h3>
<p>Behind the scenes, this SDK uses <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/flutter_web_auth_2" target="_blank" rel="noopener noreferrer" class="link_hf7f">flutter_web_auth_2<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to authenticate users with Logto. This package provides a simple way to authenticate users with Logto using the system webview or browser.</p>
<p>This plugin uses <code>ASWebAuthenticationSession</code> on iOS 12+ and macOS 10.15+, <code>SFAuthenticationSession</code> on iOS 11, <code>Chrome Custom Tabs</code> on Android and opens a new window on Web.</p>
<ul>
<li class="">
<p>iOS: No additional setup required</p>
</li>
<li class="">
<p>Android: Register the callback url on Android</p>
<p>In order to capture the callback url from Logto's sign-in web page, you will need to register your sign-in redirectUri to your <code>AndroidManifest.xml</code> file.</p>
<div class="language-xml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">AndroidManifest.xml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-xml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">activity</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">          </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">name</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">com.linusu.flutter_web_auth_2.CallbackActivity</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">          </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">exported</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">true</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">intent-filter</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">label</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">flutter_web_auth_2</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">action</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">name</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">android.intent.action.VIEW</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">category</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">name</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">android.intent.category.DEFAULT</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">category</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">name</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">android.intent.category.BROWSABLE</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">data</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">scheme</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">YOUR_CALLBACK_URL_SCHEME_HERE</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">intent-filter</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">activity</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">application</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
</li>
<li class="">
<p>Web browser: Create an endpoint to handle the callback URL</p>
<p>If you are using the web platform, you need to create an endpoint to handle the callback URL and send it back to the application using the <code>postMessage</code> API.</p>
<div class="language-html codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">callback.html</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-html codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token doctype punctuation" style="color:rgb(248, 248, 242)">&lt;!</span><span class="token doctype doctype-tag">doctype</span><span class="token doctype"> </span><span class="token doctype name">html</span><span class="token doctype punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">title</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Authentication complete</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">title</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Authentication is complete. If this does not happen automatically, please close the window.</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">  </span><span class="token script language-javascript keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token script language-javascript"> </span><span class="token script language-javascript function" style="color:rgb(80, 250, 123)">postAuthenticationMessage</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token script language-javascript"> message </span><span class="token script language-javascript operator">=</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript string-property property">'flutter-web-auth-2'</span><span class="token script language-javascript operator">:</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">location</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">href</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">opener</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">opener</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript method function property-access" style="color:rgb(80, 250, 123)">postMessage</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript">message</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">location</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">origin</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript method function property-access" style="color:rgb(80, 250, 123)">close</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token script language-javascript"> </span><span class="token script language-javascript keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token script language-javascript"> </span><span class="token script language-javascript keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">parent</span><span class="token script language-javascript"> </span><span class="token script language-javascript operator">&amp;&amp;</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">parent</span><span class="token script language-javascript"> </span><span class="token script language-javascript operator">!==</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">parent</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript method function property-access" style="color:rgb(80, 250, 123)">postMessage</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript">message</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">location</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">origin</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token script language-javascript"> </span><span class="token script language-javascript keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token script language-javascript"> </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">localStorage</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript method function property-access" style="color:rgb(80, 250, 123)">setItem</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript string" style="color:rgb(255, 121, 198)">'flutter-web-auth-2'</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token script language-javascript"> </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">location</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript property-access">href</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">      </span><span class="token script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token script language-javascript method function property-access" style="color:rgb(80, 250, 123)">close</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">    </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">  </span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">  </span><span class="token script language-javascript function" style="color:rgb(80, 250, 123)">postAuthenticationMessage</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
</li>
</ul>
<p>Please check the setup guide in the <span class="linkWrapper_B4Bt"><a href="https://pub.dev/packages/flutter_web_auth_2#setup" target="_blank" rel="noopener noreferrer" class="link_hf7f">flutter_web_auth_2<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> package for more details.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integration">Integration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#integration" class="hash-link" aria-label="Lien direct vers Integration" title="Lien direct vers Integration" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Import the <code>logto_dart_sdk</code> package and initialize the <code>LogtoClient</code> instance at the root of your application.</p>
<div class="language-dart codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">lib/main.dart</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-dart codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'package:logto_dart_sdk/logto_dart_sdk.dart'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'package:http/http.dart'</span><span class="token plain"> </span><span class="token operator">as</span><span class="token plain"> http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">WidgetsFlutterBinding</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">ensureInitialized</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token function" style="color:rgb(80, 250, 123)">runApp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">MyApp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">MyApp</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">StatelessWidget</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">MyApp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token class-name">Key</span><span class="token operator">?</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">super</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">Widget</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">build</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">BuildContext</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">MaterialApp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'Flutter Demo'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      home</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">MyHomePage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'Logto Demo Home Page'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">MyHomePage</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">StatefulWidget</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">MyHomePage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token class-name">Key</span><span class="token operator">?</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> required </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">this</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">super</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">final</span><span class="token plain"> </span><span class="token class-name">String</span><span class="token plain"> title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">State</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">MyHomePage</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">createState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">=</span><span class="token operator">&gt;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">_MyHomePageState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> _MyHomePageState </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">State</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">MyHomePage</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  late </span><span class="token class-name">LogtoClient</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">render</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// state change</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// LogtoConfig</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">final</span><span class="token plain"> logtoConfig </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">    endpoint</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"&lt;your-logto-endpoint&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">    appId</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"&lt;your-app-id&gt;"</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">_init</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">    logtoClient </span><span class="token operator">=</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">      config</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">      httpClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name namespace">http</span><span class="token class-name namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token class-name">Client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Optional http client</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token function" style="color:rgb(80, 250, 123)">render</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">initState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">super</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">initState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token function" style="color:rgb(80, 250, 123)">_init</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in">Implement sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#implement-sign-in" class="hash-link" aria-label="Lien direct vers Implement sign-in" title="Lien direct vers Implement sign-in" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<p>Before starting, you need to add a redirect URI in the Admin Console for your application.</p>
<p>Let's switch to the Application details page of Logto Console. Add a Redirect URI <code>io.logto://callback</code> and click "Save changes".</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/flutter-redirect-uri.png" width="600px">
<ul>
<li class="">For iOS, the redirect URI scheme does not really matter since the <code>ASWebAuthenticationSession</code> class will listen to the redirect URI regardless of if it's registered.</li>
<li class="">For Android, the redirect URI scheme must be registered in the <code>AndroidManifest.xml</code> file.</li>
</ul>
<p>After the redirect URI is configured, we add a sign-in button to your page, which will call <code>logtoClient.signIn</code> API to invoke the Logto sign-in flow:</p>
<div class="language-dart codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">lib/main.dart</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-dart codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> _MyHomePageState </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">State</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">MyHomePage</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">final</span><span class="token plain"> redirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'io.logto://callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">Widget</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">build</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">BuildContext</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token class-name">Widget</span><span class="token plain"> signInButton </span><span class="token operator">=</span><span class="token plain"> </span><span class="token class-name">TextButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      onPressed</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">redirectUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token function" style="color:rgb(80, 250, 123)">render</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      child</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">Text</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'Sign In'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token class-name">Scaffold</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      appBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">AppBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Text</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">widget</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      body</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        child</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Column</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          mainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">MainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          children</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">Widget</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token class-name">SelectableText</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'My Demo App'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-out">Implement sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#implement-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-out" title="Lien direct vers Implement sign-out" translate="no">​</a></h3>
<p></p><p>Let's switch to the Application details page of Logto Console. Add a Post Sign-out Redirect
URI <code>io.logto://callback</code> and click "Save changes".</p><p></p>
<img alt="Post Sign-out Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/flutter-post-sign-out-redirect-uri.png" width="600px">
<p><span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-rpinitiated-1_0.html#RPLogout" target="_blank" rel="noopener noreferrer" class="link_hf7f">Post Sign-outRedirect URI<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an OAuth 2.0 concept which implies the location should redirect after signing out.</p>
<p>Now let's add a sign-out button on the main page so users can sign out from your application.</p>
<div class="language-dart codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">lib/main.dart</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-dart codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> _MyHomePageState </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">State</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">MyHomePage</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">final</span><span class="token plain"> postSignOutRedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'io.logto//home'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">Widget</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">build</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">BuildContext</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token class-name">Widget</span><span class="token plain"> signOutButton </span><span class="token operator">=</span><span class="token plain"> </span><span class="token class-name">TextButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      onPressed</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">postSignOutRedirectUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token function" style="color:rgb(80, 250, 123)">render</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      child</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token class-name">Text</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'Sign Out'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token class-name">Scaffold</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      appBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">AppBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Text</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">widget</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      body</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        child</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Column</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          mainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">MainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          children</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">Widget</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token class-name">SelectableText</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'My Demo App'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            signOutButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-authentication-status">Handle authentication status<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#handle-authentication-status" class="hash-link" aria-label="Lien direct vers Handle authentication status" title="Lien direct vers Handle authentication status" translate="no">​</a></h3>
<p>Logto SDK provides an asynchronous method to check the authentication status. The method is <code>logtoClient.isAuthenticated</code>. The method returns a boolean value, <code>true</code> if the user is authenticated, otherwise <code>false</code>.</p>
<p>In the example we conditionally render the sign-in and sign-out buttons based on the authentication status. Now let's update the <code>render</code> method in our Widget to handle the state change:</p>
<div class="language-dart codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">lib/main.dart</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-dart codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> _MyHomePageState </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">extends</span><span class="token plain"> </span><span class="token class-name">State</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">MyHomePage</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  bool</span><span class="token operator">?</span><span class="token plain"> isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">render</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token function" style="color:rgb(80, 250, 123)">setState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">      isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token metadata function" style="color:rgb(80, 250, 123)">@override</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token class-name">Widget</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">build</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">BuildContext</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token class-name">Scaffold</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      appBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">AppBar</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Text</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">widget</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">title</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      body</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        child</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Column</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          mainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">MainAxisAlignment</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">center</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          children</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generics class-name">Widget</span><span class="token generics punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token class-name">SelectableText</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">'My Demo App'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            isAuthenticated </span><span class="token operator">==</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token plain"> </span><span class="token operator">?</span><span class="token plain"> signOutButton </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Flutter<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Flutter<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-flutter-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="flutter" term="flutter"/>
        <category label="dart" term="dart"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Go]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://go.dev/" target="_blank" rel="noopener">Go</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://go.dev/" target="_blank" rel="noopener">Go</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Go<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Go with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Go with Logto" title="Lien direct vers Integrate Go with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built upon the <span class="linkWrapper_B4Bt"><a href="https://gin-gonic.com/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Gin Web Framework<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. You may also integrate Logto into other frameworks by taking the same steps.</li>
<li class="">The Go sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/go/tree/v2/gin-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">Go SDK repo<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Execute in the project root directory:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># Install the core package for accessing predefined values and types</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">go get github.com/logto-io/go/v2/core</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># Install the client package for interacting with the Logto</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">go get github.com/logto-io/go/v2/client</span><br></span></code></pre></div></div>
<p>Add <code>github.com/logto-io/go/v2/core</code> and <code>github.com/logto-io/go/v2/client</code> packages to your application code:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">// main.go</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">package</span><span class="token plain"> main</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/gin-gonic/gin"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add dependency</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/logto-io/go/v2/core"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/logto-io/go/v2/client"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router </span><span class="token operator">:=</span><span class="token plain"> gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">c </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		c</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">String</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token number">200</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Hello Logto!"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Run</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">":3000"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="create-a-session-storage">Create a session storage<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#create-a-session-storage" class="hash-link" aria-label="Lien direct vers Create a session storage" title="Lien direct vers Create a session storage" translate="no">​</a></h3>
<p>In traditional web applications, the user authentication information will be stored in the user session.</p>
<p>Logto SDK provides a <code>Storage</code> interface, you can implement a <code>Storage</code> adapter based on your web framework so that the Logto SDK can store user authentication information in the session.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>We do NOT recommend using cookie-based sessions, as user authentication information stored by Logto may exceed the cookie size limit.
In this example, we use memory-based sessions. You can use Redis, MongoDB, and other technologies in production to store sessions as needed.</p></div></div></div>
<p>The <code>Storage</code> type in the Logto SDK is as follows:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">storage.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">package</span><span class="token plain"> client</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">type</span><span class="token plain"> Storage </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">interface</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token function" style="color:rgb(80, 250, 123)">GetItem</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token function" style="color:rgb(80, 250, 123)">SetItem</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> value </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>We use <span class="linkWrapper_B4Bt"><a href="https://github.com/gin-contrib/sessions" target="_blank" rel="noopener noreferrer" class="link_hf7f">github.com/gin-contrib/sessions<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> middleware as an example to demonstrate this process.</p>
<p>Apply the middleware to the application, so that we can get the user session by the user request context in the route handler:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">package</span><span class="token plain"> main</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/gin-contrib/sessions"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/gin-contrib/sessions/memstore"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/gin-gonic/gin"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/logto-io/go/v2/client"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router </span><span class="token operator">:=</span><span class="token plain"> gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// We use memory-based session in this example</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	store </span><span class="token operator">:=</span><span class="token plain"> memstore</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">NewStore</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token function" style="color:rgb(80, 250, 123)">byte</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"your session secret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Use</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"logto-session"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> store</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// Get user session</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">String</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token number">200</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Hello Logto!"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Run</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">":3000"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Create a <code>session_storage.go</code> file, define a <code>SessionStorage</code> and implement the Logto SDK's <code>Storage</code> interfaces:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">session_storage.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">package</span><span class="token plain"> main</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token string" style="color:rgb(255, 121, 198)">"github.com/gin-contrib/sessions"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">type</span><span class="token plain"> SessionStorage </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">struct</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	session sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Session</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">storage </span><span class="token operator">*</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">GetItem</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	value </span><span class="token operator">:=</span><span class="token plain"> storage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> value </span><span class="token operator">==</span><span class="token plain"> </span><span class="token boolean">nil</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">""</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> value</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">storage </span><span class="token operator">*</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">SetItem</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> value </span><span class="token builtin" style="color:rgb(189, 147, 249)">string</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	storage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Set</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> value</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	storage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Save</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Now, in the route handler, you can create a session storage for Logto:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">sessionStorage </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token operator">&amp;</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>First, create a Logto config:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	logtoConfig </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token operator">&amp;</span><span class="token plain">client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		Endpoint</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain">  </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;your-logto-endpoint&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3001</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		AppId</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain">     </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;your-application-id&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		AppSecret</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;your-application-secret&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>You can find and copy "App Secret" from application details page in Admin Console:</p><img alt="App Secret" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/app-secret.png" width="586px"></div></div></div>
<p>Then, you can create a <code>LogtoClient</code> for each user request with the Logto config above:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// Create LogtoClient</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		logtoClient </span><span class="token operator">:=</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">NewLogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token operator">&amp;</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// Use Logto to control the content of the home page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		authState </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"You are not logged in to this website. :("</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">IsAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			authState </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"You are logged in to this website! :)"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		homePage </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;h1&gt;Hello Logto&lt;/h1&gt;`</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;div&gt;"</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"> authState </span><span class="token operator">+</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;/div&gt;"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Data</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusOK</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"text/html; charset=utf-8"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token function" style="color:rgb(80, 250, 123)">byte</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">homePage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-route">Implement sign-in route<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#implement-sign-in-route" class="hash-link" aria-label="Lien direct vers Implement sign-in route" title="Lien direct vers Implement sign-in route" translate="no">​</a></h3>
<p>After the redirect URI is configured, we add a <code>sign-in</code> route to handle the sign-in request and also add an sign-in link on the home page:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a link to perform a sign-in request on the home page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		homePage </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;h1&gt;Hello Logto&lt;/h1&gt;`</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;div&gt;"</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"> authState </span><span class="token operator">+</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;/div&gt;"</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add link</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;div&gt;&lt;a href="/sign-in"&gt;Sign In&lt;/a&gt;&lt;/div&gt;`</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Data</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusOK</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"text/html; charset=utf-8"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token function" style="color:rgb(80, 250, 123)">byte</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">homePage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a route for handling sign-in requests</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/sign-in"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		logtoClient </span><span class="token operator">:=</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">NewLogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token operator">&amp;</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// The sign-in request is handled by Logto.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// The user will be redirected to the Redirect URI on signed in.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		signInUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> err </span><span class="token operator">:=</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"http://localhost:3000/callback"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> err </span><span class="token operator">!=</span><span class="token plain"> </span><span class="token boolean">nil</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">String</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusInternalServerError</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> err</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Error</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// Redirect the user to the Logto sign-in page.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusTemporaryRedirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signInUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Now, when your user visit <code>http://localhost:3000/sign-in</code>, the user will be redirected to the Logto sign-in page.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-the-callback-route">Implement the callback route<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#implement-the-callback-route" class="hash-link" aria-label="Lien direct vers Implement the callback route" title="Lien direct vers Implement the callback route" translate="no">​</a></h3>
<p>When the user signs in successfully on the Logto sign-in page, Logto will redirect the user to the Redirect URI.</p>
<p>Since the redirect URI is <code>http://localhost:3000/callback</code>, we add the <code>/callback</code> route to handle the callback after signing in.</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a route for handling sign-in callback requests</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/callback"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		logtoClient </span><span class="token operator">:=</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">NewLogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token operator">&amp;</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// The sign-in callback request is handled by Logto</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		err </span><span class="token operator">:=</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">HandleSignInCallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Request</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> err </span><span class="token operator">!=</span><span class="token plain"> </span><span class="token boolean">nil</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">String</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusInternalServerError</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> err</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Error</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// Jump to the page specified by the developer.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// This example takes the user back to the home page.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusTemporaryRedirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-out-route">Implement sign-out route<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#implement-sign-out-route" class="hash-link" aria-label="Lien direct vers Implement sign-out route" title="Lien direct vers Implement sign-out route" translate="no">​</a></h3>
<p>Similar to the sign-in flow, when the user signs out, Logto will redirect the user to the post sign-out redirect URI.</p>
<p>Now, let's add the <code>sign-out</code> route to handle the sign-out request and also add a sign-out link on the home page:</p>
<div class="language-go codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.go</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-go codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">main</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a link to perform a sign-out request on the home page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		homePage </span><span class="token operator">:=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;h1&gt;Hello Logto&lt;/h1&gt;`</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;div&gt;"</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"> authState </span><span class="token operator">+</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"&lt;/div&gt;"</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;div&gt;&lt;a href="/sign-in"&gt;Sign In&lt;/a&gt;&lt;/div&gt;`</span><span class="token plain"> </span><span class="token operator">+</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add link</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token string" style="color:rgb(255, 121, 198)">`&lt;div&gt;&lt;a href="/sign-out"&gt;Sign Out&lt;/a&gt;&lt;/div&gt;`</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Data</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusOK</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"text/html; charset=utf-8"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token function" style="color:rgb(80, 250, 123)">byte</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">homePage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a route for handling signing out requests</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	router</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">GET</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/sign-out"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">func</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx </span><span class="token operator">*</span><span class="token plain">gin</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		session </span><span class="token operator">:=</span><span class="token plain"> sessions</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Default</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		logtoClient </span><span class="token operator">:=</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">NewLogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token operator">&amp;</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// The sign-out request is handled by Logto.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token comment" style="color:rgb(98, 114, 164)">// The user will be redirected to the Post Sign-out Redirect URI on signed out.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		signOutUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOutErr </span><span class="token operator">:=</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"http://localhost:3000"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> signOutErr </span><span class="token operator">!=</span><span class="token plain"> </span><span class="token boolean">nil</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">String</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusOK</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOutErr</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Error</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">			</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">		ctx</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">http</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">StatusTemporaryRedirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOutUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">	</span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>After the user makes a signing-out request, Logto will clear all user authentication information in the session.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Go<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Go<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-go-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="go" term="go"/>
        <category label="go" term="go"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with iOS (Swift)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://developer.apple.com/ios" target="_blank" rel="noopener">iOS (Swift)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://developer.apple.com/ios" target="_blank" rel="noopener">iOS (Swift)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Native app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Native app<!-- -->" section or filter all the available "<!-- -->Native app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->iOS (Swift)<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate iOS (Swift) with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate iOS (Swift) with Logto" title="Lien direct vers Integrate iOS (Swift) with Logto" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-logto-sdk-as-a-dependency">Add Logto SDK as a dependency<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#add-logto-sdk-as-a-dependency" class="hash-link" aria-label="Lien direct vers Add Logto SDK as a dependency" title="Lien direct vers Add Logto SDK as a dependency" translate="no">​</a></h3>
<p>Use the following URL to add Logto SDK as a dependency in Swift Package Manager.</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">https://github.com/logto-io/swift.git</span><br></span></code></pre></div></div>
<p>Since Xcode 11, you can <span class="linkWrapper_B4Bt"><a href="https://developer.apple.com/documentation/swift_packages/adding_package_dependencies_to_your_app" target="_blank" rel="noopener noreferrer" class="link_hf7f">directly import a Swift package<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> w/o any additional tool.</p>
<p>We do not support <strong>Carthage</strong> and <strong>CocoaPods</strong> at the time due to some technical issues.</p>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="carthage">Carthage<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#carthage" class="hash-link" aria-label="Lien direct vers Carthage" title="Lien direct vers Carthage" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><p>Carthage <span class="linkWrapper_B4Bt"><a href="https://github.com/Carthage/Carthage/issues/1226#issuecomment-290931385" target="_blank" rel="noopener noreferrer" class="link_hf7f">needs a <code>xcodeproj</code> file to build<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, but <code>swift package generate-xcodeproj</code> will report a failure since we are using binary targets
for native social plugins. We will try to find a workaround later.</p></div></div></details>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="cocoapods">CocoaPods<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#cocoapods" class="hash-link" aria-label="Lien direct vers CocoaPods" title="Lien direct vers CocoaPods" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><p>CocoaPods <span class="linkWrapper_B4Bt"><a href="https://github.com/CocoaPods/CocoaPods/issues/3276" target="_blank" rel="noopener noreferrer" class="link_hf7f">does not support local dependency<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and monorepo, thus it's hard to create a <code>.podspec</code> for this repo.</p></div></div></details>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Initialize the client by creating a <code>LogtoClient</code> instance with a <code>LogtoConfig</code> object.</p>
<div class="language-swift codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">ContentView.swift</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-swift codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token class-name">Logto</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">let</span><span class="token plain"> config </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">try</span><span class="token operator">?</span><span class="token plain"> </span><span class="token class-name">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"&lt;your-logto-endpoint&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3001</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"&lt;your-app-id&gt;"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">let</span><span class="token plain"> client </span><span class="token operator">=</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">useConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> config</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">info<!-- -->:</span><p>By default, we store credentials like ID Token and Refresh Token in the Keychain. Thus the user doesn't need to sign in again when he returns.</p><p>To turn off this behavior, set <code>usingPersistStorage</code> to <code>false</code>:</p><div class="language-swift codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-swift codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">let</span><span class="token plain"> config </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">try</span><span class="token operator">?</span><span class="token plain"> </span><span class="token class-name">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  usingPersistStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="sign-in">Sign in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#sign-in" class="hash-link" aria-label="Lien direct vers Sign in" title="Lien direct vers Sign in" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configure redirect URI<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configure redirect URI" title="Lien direct vers Configure redirect URI" translate="no">​</a></h4>
<p>Let's switch to the Application details page of Logto Console. Add a Redirect URI <code>io.logto://callback</code> and click "Save changes".</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/ios-redirect-uri.png" width="600px">
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">info<!-- -->:</span><p>The Redirect URI in iOS SDK is only for internal use. There's <em>NO NEED</em> to add a <span class="linkWrapper_B4Bt"><a href="https://developer.apple.com/documentation/xcode/defining-a-custom-url-scheme-for-your-app" target="_blank" rel="noopener noreferrer" class="link_hf7f">Custom URL Scheme<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> until a connector asks.</p></div></div></div>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="sign-in-and-sign-out">Sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Sign-in and sign-out" title="Lien direct vers Sign-in and sign-out" translate="no">​</a></h4>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Before calling <code>.signInWithBrowser(redirectUri:)</code>, make sure you have correctly configured Redirect URI
in Admin Console.</p></div></div></div>
<p>You can use <code>client.signInWithBrowser(redirectUri:)</code> to sign in the user and <code>client.signOut()</code> to sign out the user.</p>
<p>For example, in a SwiftUI app:</p>
<div class="language-swift codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">ContentView.swift</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-swift codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">struct</span><span class="token plain"> </span><span class="token class-name">ContentView</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">View</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token attribute atrule">@State</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token class-name">Bool</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">init</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    isAuthenticated </span><span class="token operator">=</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> body</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">some</span><span class="token plain"> </span><span class="token class-name">View</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token class-name">VStack</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> isAuthenticated </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token class-name">Button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"Sign Out"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token class-name">Task</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">self</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token class-name">Button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal string" style="color:rgb(255, 121, 198)">"Sign In"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token class-name">Task</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">self</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">do</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">              </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">try</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signInWithBrowser</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">redirectUri</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> "$</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                props</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">redirectUris</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token number">0</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token operator">??</span><span class="token plain"> 'io</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">logto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token operator">//</span><span class="token plain">callback'</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">              </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain">"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">              isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">catch</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">let</span><span class="token plain"> error </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">as</span><span class="token plain"> </span><span class="token class-name">LogtoClientErrors</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token class-name">SignIn</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">              </span><span class="token comment" style="color:rgb(98, 114, 164)">// error occured during sign in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">catch</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">              </span><span class="token comment" style="color:rgb(98, 114, 164)">// other errors</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->iOS (Swift)<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->iOS (Swift)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-ios-swift-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="ios-swift" term="ios-swift"/>
        <category label="swift" term="swift"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Next.js (Pages Router)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://nextjs.org/" target="_blank" rel="noopener">Next.js (Pages Router)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://nextjs.org/" target="_blank" rel="noopener">Next.js (Pages Router)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Next.js<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Next.js with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Next.js with Logto" title="Lien direct vers Integrate Next.js with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/js/tree/master/packages/next-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The example is based on Next.js <span class="linkWrapper_B4Bt"><a href="https://nextjs.org/docs/pages" target="_blank" rel="noopener noreferrer" class="link_hf7f">Pages Router<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<!-- -->
<p>Install Logto SDK via your favorite package manager:</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">yarn</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><pre><code class="language-bash">npm i <!-- -->@logto/next</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">pnpm add <!-- -->@logto/next</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">yarn add <!-- -->@logto/next</code></pre></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="integration">Integration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#integration" class="hash-link" aria-label="Lien direct vers Integration" title="Lien direct vers Integration" translate="no">​</a></h3>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Import and initialize LogtoClient:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">libraries/logto.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> LogtoClient </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/next'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">export</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> logtoClient </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appSecret</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-app-secret-copied-from-console&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3001</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  baseUrl</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  cookieSecret</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'complex_password_at_least_32_characters_long'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  cookieSecure</span><span class="token operator">:</span><span class="token plain"> process</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">env</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token constant" style="color:rgb(189, 147, 249)">NODE_ENV</span><span class="token plain"> </span><span class="token operator">===</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'production'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure Redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure Redirect URIs" title="Lien direct vers Configure Redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/api/logto/sign-in-callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="prepare-api-routes">Prepare API routes<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#prepare-api-routes" class="hash-link" aria-label="Lien direct vers Prepare API routes" title="Lien direct vers Prepare API routes" translate="no">​</a></h3>
<p>Prepare <span class="linkWrapper_B4Bt"><a href="https://nextjs.org/docs/pages/building-your-application/routing/api-routes" target="_blank" rel="noopener noreferrer" class="link_hf7f">API routes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to connect with Logto.</p>
<p>Go back to your IDE/editor, use the following code to implement the API routes first:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">pages/api/logto/[action].ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> logtoClient </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'../../../libraries/logto'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">export</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">default</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">handleAuthRoutes</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>This will create 4 routes automatically:</p>
<ol>
<li class=""><code>/api/logto/sign-in</code>: Sign in with Logto.</li>
<li class=""><code>/api/logto/sign-in-callback</code>: Handle sign-in callback.</li>
<li class=""><code>/api/logto/sign-out</code>: Sign out with Logto.</li>
<li class=""><code>/api/logto/user</code>: Check if user is authenticated with Logto, if yes, return user info.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>We have prepared the API routes, now let's implement the sign-in and sign-out buttons in your home page. We need to redirect the user to the sign-in or sign-out route when needed. To help with this, use <code>useSWR</code> to fetch authentication status from <code>/api/logto/user</code>.</p>
<p>Check <span class="linkWrapper_B4Bt"><a href="https://swr.vercel.app/docs/getting-started" target="_blank" rel="noopener noreferrer" class="link_hf7f">this guide<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to learn more about <code>useSWR</code>.</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">/pages/index.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">type</span><span class="token plain"> </span><span class="token class-name">LogtoContext</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/next'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports">useSWR</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'swr'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">Home</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> data </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token generic-function function" style="color:rgb(80, 250, 123)">useSWR</span><span class="token generic-function generic class-name operator">&lt;</span><span class="token generic-function generic class-name">LogtoContext</span><span class="token generic-function generic class-name operator">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'/api/logto/user'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">nav</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">data</span><span class="token operator">?.</span><span class="token plain">isAuthenticated </span><span class="token operator">?</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">          Hello, </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain">data</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">claims</span><span class="token operator">?.</span><span class="token plain">sub</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain-text">,</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">            </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onClick</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript arrow operator" style="color:rgb(255, 121, 198)">=&gt;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">              </span><span class="token tag script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token tag script language-javascript property-access" style="color:rgb(255, 121, 198)">location</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token tag script language-javascript method function property-access" style="color:rgb(80, 250, 123)">assign</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript string" style="color:rgb(255, 121, 198)">'/api/logto/sign-out'</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">            </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">            Sign Out</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">            </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onClick</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript arrow operator" style="color:rgb(255, 121, 198)">=&gt;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">              </span><span class="token tag script language-javascript dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token tag script language-javascript property-access" style="color:rgb(255, 121, 198)">location</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token tag script language-javascript method function property-access" style="color:rgb(80, 250, 123)">assign</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript string" style="color:rgb(255, 121, 198)">'/api/logto/sign-in'</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">            </span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">            Sign In</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">          </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">nav</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">export</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">default</span><span class="token plain"> </span><span class="token maybe-class-name">Home</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Next.js<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Next.js (Pages Router)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-next-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="next" term="next"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with PHP]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://www.php.net/" target="_blank" rel="noopener">PHP</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://www.php.net/" target="_blank" rel="noopener">PHP</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Laravel<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Laravel with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Laravel with Logto" title="Lien direct vers Integrate Laravel with Logto" translate="no">​</a></h2>
<p>This guide will show you how to integrate Logto into your PHP web application.</p>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/php/blob/master/samples/index.php" target="_blank" rel="noopener noreferrer" class="link_hf7f">example<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> uses Laravel, but the concepts are the same for other frameworks.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">composer</span><span class="token plain"> require logto/sdk</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>First, create a Logto config:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">index.php</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">use</span><span class="token plain"> </span><span class="token package">Logto</span><span class="token package punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token package">Sdk</span><span class="token package punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token package">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">use</span><span class="token plain"> </span><span class="token package">Logto</span><span class="token package punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token package">Sdk</span><span class="token package punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token package">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token argument-name">endpoint</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string double-quoted-string" style="color:rgb(255, 121, 198)">"https://you-logto-endpoint.app"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token argument-name">appId</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string double-quoted-string" style="color:rgb(255, 121, 198)">"replace-with-your-app-id"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token argument-name">appSecret</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string double-quoted-string" style="color:rgb(255, 121, 198)">"replace-with-your-app-secret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>You can find and copy "App Secret" from application details page in Admin Console:</p><img alt="App Secret" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/app-secret.png" width="586px"></div></div></div>
<p>By default, the SDK uses the built-in PHP session to store the Logto data. If you want to use other storage, you can pass a custom storage object as the second parameter:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">index.php</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">YourCustomStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>See <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/php/blob/master/docs/api/classes/Logto/Sdk/Storage/Storage.md" target="_blank" rel="noopener noreferrer" class="link_hf7f">Storage<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> for more details.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-callback">Handle callback<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#handle-callback" class="hash-link" aria-label="Lien direct vers Handle callback" title="Lien direct vers Handle callback" translate="no">​</a></h3>
<p>After the user signs in, Logto will redirect the user to the callback URL you set in the Logto Console. In this example, we use <code>/callback</code> as the callback URL:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token class-name static-context">Route</span><span class="token operator">::</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">try</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token operator">-&gt;</span><span class="token function" style="color:rgb(80, 250, 123)">handleSignInCallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Handle a lot of stuff</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">catch</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name class-name-fully-qualified punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token class-name class-name-fully-qualified">Throwable</span><span class="token plain"> </span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$exception</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$exception</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Change this to your error handling logic</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Redirect the user to the home page after a successful sign-in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-route">Implement sign-in route<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#implement-sign-in-route" class="hash-link" aria-label="Lien direct vers Implement sign-in route" title="Lien direct vers Implement sign-in route" translate="no">​</a></h3>
<p>In your web application, add a route to properly handle the sign-in request from users. For example:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token class-name static-context">Route</span><span class="token operator">::</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/sign-in'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token operator">-&gt;</span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Replace <code>http://localhost:3000/callback</code> with the callback URL you set in your Logto Console for this application.</p>
<p>If you want to show the sign-up page on the first screen, you can set <code>interactionMode</code> to <code>signUp</code>:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token class-name static-context">Route</span><span class="token operator">::</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/sign-in'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token operator">-&gt;</span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token class-name static-context">InteractionMode</span><span class="token operator">::</span><span class="token constant" style="color:rgb(189, 147, 249)">signUp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Now, whenever your users visit <code>http://localhost:3000/<!-- -->sign-in</code>, it will start a new sign-in attempt and redirect the user to the Logto sign-in page.</p>
<blockquote>
<p><strong>Note</strong>
Creating a sign-in route isn't the only way to start a sign-in attempt. You can always use the <code>signIn</code> method to get the sign-in URL and redirect the user to it.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-out-route">Implement sign-out route<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#implement-sign-out-route" class="hash-link" aria-label="Lien direct vers Implement sign-out route" title="Lien direct vers Implement sign-out route" translate="no">​</a></h3>
<p>After the user makes a signing-out request, Logto will clear all user authentication information in the session.</p>
<p>To clean up the PHP session and Logto session, a sign-out route can be implemented as follows:</p>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token class-name static-context">Route</span><span class="token operator">::</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/sign-out'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Redirect the user to the home page after a successful sign-out</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token operator">-&gt;</span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'http://localhost:3000/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p><code>postLogoutRedirectUri</code> is optional, and if not provided, the user will be redirected to a Logto default page after a successful sign-out (without redirecting back to your application).</p>
<blockquote>
<p><strong>Note</strong>
The name <code>postLogoutRedirectUri</code> is from the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-rpinitiated-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect RP-Initiated Logout<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> specification. Although Logto uses "sign-out" instead of "logout", the concept is the same.</p>
</blockquote>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-authentication-status">Handle authentication status<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#handle-authentication-status" class="hash-link" aria-label="Lien direct vers Handle authentication status" title="Lien direct vers Handle authentication status" translate="no">​</a></h3>
<p>In Logto SDK, we can use <code>$client-&gt;isAuthenticated()</code> to check the authentication status, if the user is signed in, the value will be true, otherwise, the value will be false.</p>
<p>We also need to implement a home page for demonstration:</p>
<ul>
<li class="">If the user is not signed in, show a sign-in button;</li>
<li class="">If the user is signed in, show a sign-out button.</li>
</ul>
<div class="language-php codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-php codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token class-name static-context">Route</span><span class="token operator">::</span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string single-quoted-string" style="color:rgb(255, 121, 198)">'/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">function</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token variable" style="color:rgb(189, 147, 249);font-style:italic">$client</span><span class="token operator">-&gt;</span><span class="token function" style="color:rgb(80, 250, 123)">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">===</span><span class="token plain"> </span><span class="token constant boolean" style="color:rgb(189, 147, 249)">false</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token string double-quoted-string" style="color:rgb(255, 121, 198)">"Not authenticated &lt;a href='/sign-in'&gt;Sign in&lt;/a&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token string double-quoted-string" style="color:rgb(255, 121, 198)">"&lt;a href='/sign-out'&gt;Sign out&lt;/a&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Laravel<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->PHP<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-php-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="php" term="php"/>
        <category label="php" term="php"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Python]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://www.python.org/" target="_blank" rel="noopener">Python</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://www.python.org/" target="_blank" rel="noopener">Python</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Flask<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Flask with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Flask with Logto" title="Lien direct vers Integrate Flask with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The example uses <span class="linkWrapper_B4Bt"><a href="https://flask.palletsprojects.com/en/2.3.x/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Flask<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, but the concepts are the same for other frameworks.</li>
<li class="">The Python sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/python/tree/master/samples" target="_blank" rel="noopener noreferrer" class="link_hf7f">Python SDK repo<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Logto SDK leverages coroutines, remember to use <code>await</code> when calling async functions.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Execute in the project root directory:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">pip </span><span class="token function" style="color:rgb(80, 250, 123)">install</span><span class="token plain"> logto </span><span class="token comment" style="color:rgb(98, 114, 164)"># or `poetry add logto` or whatever you use</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>First, create a Logto config:</p>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">client.py</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> logto </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> LogtoConfig</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">client </span><span class="token operator">=</span><span class="token plain"> LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        endpoint</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"https://you-logto-endpoint.app"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)"># Replace with your Logto endpoint</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        appId</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"replace-with-your-app-id"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        appSecret</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"replace-with-your-app-secret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>You can find and copy "App Secret" from application details page in Admin Console:</p><img alt="App Secret" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/app-secret.png" width="586px"></div></div></div>
<p>Also replace the default memory storage with a persistent storage, for example:</p>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">client.py</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> logto </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> Storage</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> flask </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> session</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> typing </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> Union</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">Storage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">self</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token builtin" style="color:rgb(189, 147, 249)">str</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">-</span><span class="token operator">&gt;</span><span class="token plain"> Union</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token builtin" style="color:rgb(189, 147, 249)">str</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">set</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">self</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token builtin" style="color:rgb(189, 147, 249)">str</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> value</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> Union</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token builtin" style="color:rgb(189, 147, 249)">str</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">-</span><span class="token operator">&gt;</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> value</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">delete</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">self</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token builtin" style="color:rgb(189, 147, 249)">str</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">-</span><span class="token operator">&gt;</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        session</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">pop</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">key</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token boolean">None</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">client </span><span class="token operator">=</span><span class="token plain"> LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    storage</span><span class="token operator">=</span><span class="token plain">SessionStorage</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<p>See <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/python/blob/master/logto/Storage.py" target="_blank" rel="noopener noreferrer" class="link_hf7f">Storage<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> for more details.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>In your web application, add a route to properly handle the sign-in request from users. Let's use <code>/sign-in</code> as an example:</p>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">flask.py</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">@app</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">route</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/sign-in"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">sign_in</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)"># Get the sign-in URL and redirect the user to it</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      redirectUri</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"http://localhost:3000/callback"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<p>Replace <code>http://localhost:3000/callback</code> with the callback URL you set in your Logto Console for this application.</p>
<p>If you want to show the sign-up page on the first screen, you can set <code>interactionMode</code> to <code>signUp</code>:</p>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">flask.py</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">@app</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">route</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/sign-in"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">sign_in</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      redirectUri</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"http://localhost:3000/callback"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      interactionMode</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"signUp"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)"># Show the sign-up page on the first screen</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<p>Now, whenever your users visit <code>http://localhost:3000/<!-- -->sign-in</code>, it will start a new sign-in attempt and redirect the user to the Logto sign-in page.</p>
<blockquote>
<p><strong>Note</strong>
Creating a sign-in route isn't the only way to start a sign-in attempt. You can always use the <code>signIn</code> method to get the sign-in URL and redirect the user to it.</p>
</blockquote>
<p>After the user makes a signing-out request, Logto will clear all user authentication information in the session.</p>
<p>To clean up the Python session and Logto session, a sign-out route can be implemented as follows:</p>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">flask.py</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">@app</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">route</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/sign-out"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">sign_out</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token comment" style="color:rgb(98, 114, 164)"># Redirect the user to the home page after a successful sign-out</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">postLogoutRedirectUri</span><span class="token operator">=</span><span class="token string" style="color:rgb(255, 121, 198)">"http://localhost:3000/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-authentication-status">Handle authentication status<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#handle-authentication-status" class="hash-link" aria-label="Lien direct vers Handle authentication status" title="Lien direct vers Handle authentication status" translate="no">​</a></h3>
<p>In Logto SDK, we can use <code>client.isAuthenticated()</code> to check the authentication status, if the user is signed in, the value will be true, otherwise, the value will be false.</p>
<p>Here we also implement a simple home page for demonstration:</p>
<ul>
<li class="">If the user is not signed in, show a sign-in button;</li>
<li class="">If the user is signed in, show a sign-out button.</li>
</ul>
<div class="language-python codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-python codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">@app</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token decorator annotation punctuation" style="color:rgb(248, 248, 242)">route</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">def</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">home</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> client</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">is</span><span class="token plain"> </span><span class="token boolean">False</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Not authenticated &lt;a href='/sign-in'&gt;Sign in&lt;/a&gt;"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Authenticated &lt;a href='/sign-out'&gt;Sign out&lt;/a&gt;"</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Flask<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Python<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-python-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="python" term="python"/>
        <category label="python" term="python"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with React]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://reactjs.org/" target="_blank" rel="noopener">React</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://reactjs.org/" target="_blank" rel="noopener">React</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Single page app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Single page app<!-- -->" section or filter all the available "<!-- -->Single page app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->React<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate React with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate React with Logto" title="Lien direct vers Integrate React with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/js/tree/master/packages/react-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The tutorial video is available on our <span class="linkWrapper_B4Bt"><a href="https://youtu.be/pvKYt8QFppE" target="_blank" rel="noopener noreferrer" class="link_hf7f">YouTube channel<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<!-- -->
<p>Install Logto SDK via your favorite package manager:</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">yarn</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><pre><code class="language-bash">npm i <!-- -->@logto/react</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">pnpm add <!-- -->@logto/react</code></pre></div><div role="tabpanel" class="tabItem_pED3" hidden=""><pre><code class="language-bash">yarn add <!-- -->@logto/react</code></pre></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Import and use <code>LogtoProvider</code> to provide a Logto context to your app:</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">App.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">LogtoProvider</span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token imports"> </span><span class="token imports maybe-class-name">LogtoConfig</span><span class="token imports"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/react'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> config</span><span class="token operator">:</span><span class="token plain"> </span><span class="token maybe-class-name">LogtoConfig</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// E.g. http://localhost:3001</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">App</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">LogtoProvider</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">config</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">config</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">YourAppContent</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain-text"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain-text">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">LogtoProvider</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-redirect">Handle redirect<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#handle-redirect" class="hash-link" aria-label="Lien direct vers Handle redirect" title="Lien direct vers Handle redirect" translate="no">​</a></h3>
<p>Since we use <code>http://localhost:3000/callback</code> as the redirect URI, now we need to handle it properly.</p>
<p>First let's create a callback page:</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">pages/Callback/index.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> useHandleSignInCallback </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/react'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">Callback</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> isLoading </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">useHandleSignInCallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// Do something when finished, e.g. redirect to home page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// When it's working in progress</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">isLoading</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">div</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text">Redirecting...</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">div</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">null</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Finally insert the code below to create a <code>/callback</code> route which does NOT require authentication:</p>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">App.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">// Assuming react-router</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag class-name" style="color:rgb(255, 121, 198)">Route</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">path</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">/callback</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">element</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag script language-javascript tag class-name" style="color:rgb(255, 121, 198)">Callback</span><span class="token tag script language-javascript tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>We provide two hooks <code>useHandleSignInCallback()</code> and <code>useLogto()</code> which can help you easily manage the authentication flow.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Before calling <code>.signIn()</code>, make sure you have correctly configured Redirect URI
in Admin Console.</p></div></div></div>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">pages/Home/index.tsx</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> useLogto </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/react'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">Home</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> isAuthenticated </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">useLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> isAuthenticated </span><span class="token operator">?</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onClick</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)">signOut</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text">Sign Out</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">onClick</span><span class="token tag script language-javascript script-punctuation punctuation" style="color:rgb(248, 248, 242)">=</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript arrow operator" style="color:rgb(255, 121, 198)">=&gt;</span><span class="token tag script language-javascript" style="color:rgb(255, 121, 198)"> </span><span class="token tag script language-javascript function" style="color:rgb(80, 250, 123)">signIn</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token tag script language-javascript string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token tag script language-javascript punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain-text">Sign In</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Calling <code>.signOut()</code> will clear all the Logto data in memory and localStorage if they exist.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->React<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->React<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-react-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="react" term="react"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Vanilla JS]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://en.wikipedia.org/wiki/ECMAScript" target="_blank" rel="noopener">Vanilla JS</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://en.wikipedia.org/wiki/ECMAScript" target="_blank" rel="noopener">Vanilla JS</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Single page app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Single page app<!-- -->" section or filter all the available "<!-- -->Single page app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Vanilla JS<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Vanilla JS with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Vanilla JS with Logto" title="Lien direct vers Integrate Vanilla JS with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The vanilla-js SDK is <span class="linkWrapper_B4Bt"><a href="https://stackoverflow.com/questions/64725017/what-does-it-mean-by-framework-agnostic" target="_blank" rel="noopener noreferrer" class="link_hf7f">framework-agnostic<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, you can use it in any frontend framework by writing a wrapper to fit it.</li>
<li class="">The sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/js/tree/master/packages/browser-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Choose your favorite package manager or use the CDN to install the Logto Browser SDK.</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">yarn</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">CDN</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">npm</span><span class="token plain"> i @logto/browser</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">pnpm</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/browser</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/browser</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-html codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-html codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- Special thanks to jsdelivr --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">type</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">module</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript">  </span><span class="token script language-javascript keyword module" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token script language-javascript"> </span><span class="token script language-javascript imports maybe-class-name">LogtoClient</span><span class="token script language-javascript"> </span><span class="token script language-javascript keyword module" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token script language-javascript"> </span><span class="token script language-javascript string" style="color:rgb(255, 121, 198)">'https://cdn.jsdelivr.net/npm/@logto/browser@2.2.13/+esm'</span><span class="token script language-javascript punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token script language-javascript"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token script language-javascript"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Import and init a <code>LogtoClient</code> instance by passing config:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">index.js</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> LogtoClient </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/browser'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> logtoClient </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token class-name">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>The <code>endpoint</code> and <code>appId</code> can be found in the application details page in Logto Console.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-a-sign-in-and-sign-out">Implement a sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#implement-a-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement a sign-in and sign-out" title="Lien direct vers Implement a sign-in and sign-out" translate="no">​</a></h3>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-redirect">Handle redirect<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#handle-redirect" class="hash-link" aria-label="Lien direct vers Handle redirect" title="Lien direct vers Handle redirect" translate="no">​</a></h3>
<p>There are still things to do after the user is redirected back to your application from Logto. Let's handle it properly.</p>
<div class="language-js codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">pages/Callback.js</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-js codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">callbackHandler</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token parameter">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">handleSignInCallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">location</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">href</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token operator">!</span><span class="token plain">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// Handle failed sign-in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token function" style="color:rgb(80, 250, 123)">alert</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'Failed to sign in'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Handle successful sign-in</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">window</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">location</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">assign</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p><code>logtoClient</code> provides <code>signIn</code> and <code>signOut</code> methods to help you easily manage the authentication flow.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Before calling <code>.signIn()</code>, make sure you have correctly configured Redirect URI
in Admin Console.</p></div></div></div>
<div class="language-js codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">pages/Home.js</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-js codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignIn</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignOut</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> button </span><span class="token operator">=</span><span class="token plain"> </span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">document</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">createElement</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'button'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">innerHTML</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> isAuthenticated </span><span class="token operator">?</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'Sign Out'</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'Sign In'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">addEventListener</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'click'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> isAuthenticated </span><span class="token operator">?</span><span class="token plain"> onClickSignOut </span><span class="token operator">:</span><span class="token plain"> onClickSignIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">document</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">body</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">appendChild</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Calling <code>.signOut()</code> will clear all the Logto data in memory and localStorage if they exist.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-authentication-status">Handle authentication status<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#handle-authentication-status" class="hash-link" aria-label="Lien direct vers Handle authentication status" title="Lien direct vers Handle authentication status" translate="no">​</a></h3>
<p>In Logto SDK, generally we can use <code>logtoClient.isAuthenticated</code> to check the authentication status, if the user is signed in, the value will be <code>true</code>, otherwise, the value will be <code>false</code>.</p>
<p>In your vanilla JS app, you can use the <code>isAuthenticated</code> status to programmatically show and hide the sign-in and sign-out buttons. Let's see how to do it.</p>
<div class="language-js codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-js codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> redirectUrl </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> baseUrl </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)">// Conditional rendering of sign-in and sign-out buttons</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">render</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token parameter">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> isAuthenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword control-flow" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> container </span><span class="token operator">=</span><span class="token plain"> </span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">document</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">querySelector</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'#container'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignIn</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">redirectUrl</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignOut</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">baseUrl</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> button </span><span class="token operator">=</span><span class="token plain"> </span><span class="token dom variable" style="color:rgb(189, 147, 249);font-style:italic">document</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">createElement</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'button'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token property-access">innerHTML</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> isAuthenticated </span><span class="token operator">?</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'Sign Out'</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'Sign In'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">addEventListener</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'click'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> isAuthenticated </span><span class="token operator">?</span><span class="token plain"> onClickSignOut </span><span class="token operator">:</span><span class="token plain"> onClickSignIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  container</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token method function property-access" style="color:rgb(80, 250, 123)">append</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Vanilla JS<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Vanilla JS<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vanilla-js-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="vanilla-js" term="vanilla-js"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Vue]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Single page app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Single page app<!-- -->" section or filter all the available "<!-- -->Single page app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Vue<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Vue with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Vue with Logto" title="Lien direct vers Integrate Vue with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">Logto Vue SDK is built with the composition API and leveraging the composables, therefore it is only compatible with Vue 3.</li>
<li class="">The tutorial video is available on our <span class="linkWrapper_B4Bt"><a href="https://youtu.be/cAfsQrsGQqA" target="_blank" rel="noopener noreferrer" class="link_hf7f">YouTube channel<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The full sample project is available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/js/tree/master/packages/vue-sample" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">npm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">pnpm</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">yarn</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">npm</span><span class="token plain"> i @logto/vue</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">pnpm</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/vue</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> @logto/vue</span><br></span></code></pre></div></div></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Import and use <code>createLogto</code> to install Logto plugin:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">main.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> createLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> LogtoConfig </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/vue'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> createApp </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'vue'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> App </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'./App.vue'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> config</span><span class="token operator">:</span><span class="token plain"> LogtoConfig </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  endpoint</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-endpoint&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  appId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-application-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> app </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">createApp</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">App</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">use</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">createLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> config</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">mount</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'#app'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="handle-redirect">Handle redirect<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#handle-redirect" class="hash-link" aria-label="Lien direct vers Handle redirect" title="Lien direct vers Handle redirect" translate="no">​</a></h3>
<p>There are still things to do after the user is redirected back to your application from Logto. Let's handle it properly.</p>
<p>First let's create a callback page:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">views/CallbackView.vue</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> useHandleSignInCallback </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/vue'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> router </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@/router'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> isLoading </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">useHandleSignInCallback</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Do something when finished, e.g. redirect to home page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<div class="language-html codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-html codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">template</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- When it's working in progress --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">v-if</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">isLoading</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Redirecting...</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">template</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<p>Insert the code below in your <code>/callback</code> route which does NOT require authentication:</p>
<div class="language-ts codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">router/index.ts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-ts codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">// Assuming vue-router</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> router </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">createRouter</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  routes</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      path</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">      component</span><span class="token operator">:</span><span class="token plain"> CallbackView</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<p>We provide two composables <code>useHandleSignInCallback()</code> and <code>useLogto()</code> which can help you easily manage the authentication flow.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Before calling <code>.signIn()</code>, make sure you have correctly configured Redirect URI
in Admin Console.</p></div></div></div>
<div class="language-tsx codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">views/HomeView.vue</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-tsx codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token imports"> useLogto </span><span class="token imports punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">from</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'@logto/vue'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> isAuthenticated </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">useLogto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignIn</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">const</span><span class="token plain"> </span><span class="token function-variable function" style="color:rgb(80, 250, 123)">onClickSignOut</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<div class="language-html codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-html codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">template</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">v-if</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">!isAuthenticated</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">@click</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">onClickSignIn</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Sign In</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">v-else</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">@click</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">onClickSignOut</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Sign Out</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">template</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<p>Calling <code>.signOut()</code> will clear all the Logto data in memory and localStorage if they exist.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Vue<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Vue<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-vue-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="vue" term="vue"/>
        <category label="js" term="js"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with WordPress plugin]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto"/>
        <updated>2026-04-17T08:48:21.514Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://wordpress.org/" target="_blank" rel="noopener">WordPress plugin</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://wordpress.org/" target="_blank" rel="noopener">WordPress plugin</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->WordPress<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate WordPress with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate WordPress with Logto" title="Lien direct vers Integrate WordPress with Logto" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="install-the-plugin">Install the plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#install-the-plugin" class="hash-link" aria-label="Lien direct vers Install the plugin" title="Lien direct vers Install the plugin" translate="no">​</a></h3>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">From WordPress admin panel</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">From upload</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><ol>
<li class="">Go to <strong>Plugins</strong> &gt; <strong>Add New</strong>.</li>
<li class="">Search for "Logto", or enter <span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">https://wordpress.org/plugins/logto/<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> in the search box.</li>
<li class="">Click <strong>Install Now</strong>.</li>
<li class="">Click <strong>Activate</strong>.</li>
</ol></div><div role="tabpanel" class="tabItem_pED3" hidden=""><ol>
<li class="">Download the Logto WordPress plugin from one of the following links:<!-- -->
<ul>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/wordpress/releases" target="_blank" rel="noopener noreferrer" class="link_hf7f">Latest release<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Download the file which name in the format of <code>logto-plugin-&lt;version&gt;.zip</code>.</li>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">WordPress plugin directory<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Download the file by clicking the <strong>Download</strong> button.</li>
</ul>
</li>
<li class="">Download the plugin ZIP file.</li>
<li class="">Go to <strong>Plugins</strong> &gt; <strong>Add New</strong> in your WordPress admin panel.</li>
<li class="">Click <strong>Upload Plugin</strong>.</li>
<li class="">Select the downloaded ZIP file and click <strong>Install Now</strong>.</li>
<li class="">Click <strong>Activate</strong>.</li>
</ol></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-the-plugin">Configure the plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-the-plugin" class="hash-link" aria-label="Lien direct vers Configure the plugin" title="Lien direct vers Configure the plugin" translate="no">​</a></h3>
<p>Now you should be able to see the Logto menu in your WordPress admin panel sidebar. Click <strong>Logto</strong> &gt; <strong>Settings</strong> to configure the plugin.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>You should have a <strong>traditional web</strong> application created in Logto Console before configuring the plugin. If you haven't created one, please refer to <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/integrate-logto/integrate-logto-into-your-application" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Integrate Logto into your application<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> for more information.</p></div></div></div>
<p>The minimum configuration to get started for the plugin is:</p>
<ul>
<li class="">Logto endpoint: The endpoint of your Logto tenant.</li>
<li class="">App ID: The app ID of your Logto application.</li>
<li class="">App secret: One of the valid app secrets of your Logto application.</li>
</ul>
<p>All values can be found on the application details page in Logto Console.</p>
<p>After filling in the values, click <strong>Save Changes</strong> (scroll down to the bottom of the page if you can't find the button).</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configure redirect URI<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configure redirect URI" title="Lien direct vers Configure redirect URI" translate="no">​</a></h3>
<p>The redirect URI is the URL to which Logto will redirect users after they have authenticated; and the post sign-out redirect URI is the URL to which Logto will redirect users after they have logged out.</p>
<p>Here's a non-normative sequence diagram to illustrate the sign-in flow:</p>
<!-- -->
<p>Here's how the sign-out flow looks like in a non-normative sequence diagram:</p>
<!-- -->
<p>To learn more about why redirect is needed, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p>In our case, we need to configure both redirect URIs in your Logto Console. To find the redirect URI, go to the <strong>Logto</strong> &gt; <strong>Settings</strong> page in your WordPress admin panel. You'll see the <strong>Redirect URI</strong> and <strong>Post sign-out redirect URI</strong> fields.</p>
<ol>
<li class="">Copy the <strong>Redirect URI</strong> and <strong>Post sign-out redirect URI</strong> values and paste them into the <strong>Redirect URIs</strong> and <strong>Post sign-out redirect URIs</strong> fields in your Logto Console.</li>
<li class="">Click <strong>Save changes</strong> in Logto Console.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-website">Checkpoint: Test your WordPress website<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#checkpoint-test-your-website" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your WordPress website" title="Lien direct vers Checkpoint: Test your WordPress website" translate="no">​</a></h3>
<p>Now you can test your Logto integration in your WordPress website:</p>
<ol>
<li class="">Open an incognito browser window if needed.</li>
<li class="">Visit your WordPress website and click the <strong>Log in</strong> link if applicable; or directly visit the login page (e.g., <code>https://example.com/wp-login.php</code>).</li>
<li class="">The page should redirect you to the Logto sign-in page.</li>
<li class="">Complete the sign-in or sign-up process.</li>
<li class="">After successful authentication, you should be redirected back to your WordPress website and logged in automatically.</li>
<li class="">Click the <strong>Log out</strong> link to log out of your WordPress website.</li>
<li class="">You should be redirected to the Logto sign-out page, then back to your WordPress website.</li>
<li class="">You should be logged out of your WordPress website.</li>
</ol>
<p>To learn more about the WordPress plugin settings, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/quick-starts/wordpress-plugin" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>WordPress quick start<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->WordPress<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->WordPress plugin<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="wordpress-plugin" term="wordpress-plugin"/>
        <category label="php" term="php"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with Android (Kotlin / Java)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto"/>
        <updated>2026-04-17T08:48:21.510Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://developer.android.com/" target="_blank" rel="noopener">Android (Kotlin / Java)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://developer.android.com/" target="_blank" rel="noopener">Android (Kotlin / Java)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Native app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Native app<!-- -->" section or filter all the available "<!-- -->Native app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->Android<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate Android with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate Android with Logto" title="Lien direct vers Integrate Android with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The example is based on <span class="linkWrapper_B4Bt"><a href="https://developer.android.com/reference/android/view/View" target="_blank" rel="noopener noreferrer" class="link_hf7f">View system<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://developer.android.com/topic/libraries/architecture/viewmodel" target="_blank" rel="noopener noreferrer" class="link_hf7f">View Model<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, but the concepts are the same when using <span class="linkWrapper_B4Bt"><a href="https://developer.android.com/jetpack/compose" target="_blank" rel="noopener noreferrer" class="link_hf7f">Jetpack Compose<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The example is written in Kotlin, but the concepts are the same for Java.</li>
<li class="">Both <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/kotlin/tree/master/android-sample-kotlin" target="_blank" rel="noopener noreferrer" class="link_hf7f">Kotlin<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/kotlin/tree/master/android-sample-java" target="_blank" rel="noopener noreferrer" class="link_hf7f">Java<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> sample projects are available on our <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/kotlin" target="_blank" rel="noopener noreferrer" class="link_hf7f">SDK repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The tutorial video is available on our <span class="linkWrapper_B4Bt"><a href="https://youtu.be/_GSiYqTLnak" target="_blank" rel="noopener noreferrer" class="link_hf7f">YouTube channel<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>The minimum supported Android API level of Logto Android SDK is level 24.</p></div></div></div>
<p>Before you install Logto Android SDK, ensure <code>mavenCentral()</code> is added to your repository configuration in the Gradle project build file:</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">settings.gradle.kts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dependencyResolutionManagement </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  repositories </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token function" style="color:rgb(80, 250, 123)">mavenCentral</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Add Logto Android SDK to your dependencies:</p>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">Kotlin</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">Groovy</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">build.gradle.kts</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dependencies </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token function" style="color:rgb(80, 250, 123)">implementation</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal singleline string" style="color:rgb(255, 121, 198)">"io.logto.sdk:android:1.1.3"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div></div><div role="tabpanel" class="tabItem_pED3" hidden=""><div class="language-groovy codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">build.gradle</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-groovy codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dependencies </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  implementation </span><span class="token string" style="color:rgb(255, 121, 198)">'io.logto.sdk:android:1.1.3'</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div></div></div></div>
<p>Since the SDK needs internet access, you need to add the following permission to your <code>AndroidManifest.xml</code> file:</p>
<div class="language-xml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">AndroidManifest.xml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-xml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token prolog" style="color:rgb(189, 147, 249)">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">xmlns:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">android</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">http://schemas.android.com/apk/res/android</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token tag" style="color:rgb(255, 121, 198)">  </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">xmlns:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">tools</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">http://schemas.android.com/tools</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- add internet permission --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">uses-permission</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name namespace" style="color:rgb(241, 250, 140)">android:</span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">name</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">android.permission.INTERNET</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">/&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- other configurations... --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">manifest</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="init-logtoclient">Init LogtoClient<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#init-logtoclient" class="hash-link" aria-label="Lien direct vers Init LogtoClient" title="Lien direct vers Init LogtoClient" translate="no">​</a></h3>
<p>Create a <code>LogtoViewModel.kt</code> and init <code>LogtoClient</code> in this view model:</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">LogtoViewModel.kt</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">//...with other imports</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> io</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">logto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">sdk</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">android</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">LogtoClient</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">import</span><span class="token plain"> io</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">logto</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">sdk</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">android</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">type</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">LogtoConfig</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">LogtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">application</span><span class="token operator">:</span><span class="token plain"> Application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">AndroidViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> logtoConfig </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">LogtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          endpoint </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string-literal singleline string" style="color:rgb(255, 121, 198)">"&lt;your-logto-endpoint&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          appId </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string-literal singleline string" style="color:rgb(255, 121, 198)">"&lt;your-app-id&gt;"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          scopes </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">null</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          resources </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">null</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">          usingPersistStorage </span><span class="token operator">=</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> logtoClient </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">LogtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">logtoConfig</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">companion</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">object</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> Factory</span><span class="token operator">:</span><span class="token plain"> ViewModelProvider</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Factory </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">object</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> ViewModelProvider</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Factory</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token annotation builtin" style="color:rgb(189, 147, 249)">@Suppress</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string-literal singleline string" style="color:rgb(255, 121, 198)">"UNCHECKED_CAST"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">override</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">fun</span><span class="token plain"> </span><span class="token operator">&lt;</span><span class="token plain">T </span><span class="token operator">:</span><span class="token plain"> ViewModel</span><span class="token operator">&gt;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">create</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                modelClass</span><span class="token operator">:</span><span class="token plain"> Class</span><span class="token operator">&lt;</span><span class="token plain">T</span><span class="token operator">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                extras</span><span class="token operator">:</span><span class="token plain"> CreationExtras</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token operator">:</span><span class="token plain"> T </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                </span><span class="token comment" style="color:rgb(98, 114, 164)">// Get the Application object from extras</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> application </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">checkNotNull</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">extras</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain">APPLICATION_KEY</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">LogtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">as</span><span class="token plain"> T</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>then, create a <code>LogtoViewModel</code> for your <code>MainActivity.kt</code>:</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">MainActivity.kt</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">//...with other imports</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> MainActivity </span><span class="token operator">:</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">AppCompatActivity</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> logtoViewModel</span><span class="token operator">:</span><span class="token plain"> LogtoViewModel </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">by</span><span class="token plain"> viewModels </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> LogtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Factory </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">//...other codes</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configure redirect URI<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configure redirect URI" title="Lien direct vers Configure redirect URI" translate="no">​</a></h3>
<p>Let's switch to the Application details page of Logto Console. Add a Redirect URI <code>io.logto.android://io.logto.sample/callback</code> and click "Save changes".</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/android-redirect-uri.png" width="600px">
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-in-and-sign-out">Implement sign-in and sign-out<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#implement-sign-in-and-sign-out" class="hash-link" aria-label="Lien direct vers Implement sign-in and sign-out" title="Lien direct vers Implement sign-in and sign-out" translate="no">​</a></h3>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Before calling <code>logtoClient.signIn</code>, make sure you have correctly configured Redirect URI
in Admin Console.</p></div></div></div>
<p>You can use <code>logtoClient.signIn</code> to sign in the user and <code>logtoClient.signOut</code> to sign out the user.</p>
<p>For example, in an Android app:</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">LogtoModelView.kt</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)">//...with other imports</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">LogtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">application</span><span class="token operator">:</span><span class="token plain"> Application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">AndroidViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">application</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// ...other codes</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// Add a live data to observe the authentication status</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> _authenticated </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">MutableLiveData</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> authenticated</span><span class="token operator">:</span><span class="token plain"> LiveData</span><span class="token operator">&lt;</span><span class="token plain">Boolean</span><span class="token operator">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> _authenticated</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">fun</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">context</span><span class="token operator">:</span><span class="token plain"> Activity</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string-literal singleline string" style="color:rgb(255, 121, 198)">"io.logto.android://io.logto.sample/callback"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> logtoException </span><span class="token operator">-&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            logtoException</span><span class="token operator">?</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">let</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">println</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">it</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token comment" style="color:rgb(98, 114, 164)">// Update the live data</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            _authenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">postValue</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">fun</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> logtoException </span><span class="token operator">-&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            logtoException</span><span class="token operator">?</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">let</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">println</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">it</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token comment" style="color:rgb(98, 114, 164)">// Update the live data</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            _authenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">postValue</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">logtoClient</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">isAuthenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Then call the <code>signIn</code> and <code>signOut</code> methods in your activity:</p>
<div class="language-kotlin codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">MainActivity.kt</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-kotlin codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> MainActivity </span><span class="token operator">:</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">AppCompatActivity</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">override</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">fun</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">onCreate</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">savedInstanceState</span><span class="token operator">:</span><span class="token plain"> Bundle</span><span class="token operator">?</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token comment" style="color:rgb(98, 114, 164)">//...other codes</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token comment" style="color:rgb(98, 114, 164)">// Assume you have a button with id "sign_in_button" in your layout</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> signInButton </span><span class="token operator">=</span><span class="token plain"> findViewById</span><span class="token operator">&lt;</span><span class="token plain">Button</span><span class="token operator">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">R</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">sign_in_button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">setOnClickListener</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            logtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">this</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token comment" style="color:rgb(98, 114, 164)">// Assume you have a button with id "sign_out_button" in your layout</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">val</span><span class="token plain"> signOutButton </span><span class="token operator">=</span><span class="token plain"> findViewById</span><span class="token operator">&lt;</span><span class="token plain">Button</span><span class="token operator">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">R</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">sign_out_button</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        signOutButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">setOnClickListener</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">logtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">authenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Check if the user is authenticated</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                logtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">signOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token comment" style="color:rgb(98, 114, 164)">// Observe the authentication status to update the UI</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        logtoViewModel</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">authenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">observe</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">this</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> authenticated </span><span class="token operator">-&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">authenticated</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                </span><span class="token comment" style="color:rgb(98, 114, 164)">// The user is authenticated</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">visibility </span><span class="token operator">=</span><span class="token plain"> View</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">GONE</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                signOutButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">visibility </span><span class="token operator">=</span><span class="token plain"> View</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">VISIBLE</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                </span><span class="token comment" style="color:rgb(98, 114, 164)">// The user is not authenticated</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                signInButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">visibility </span><span class="token operator">=</span><span class="token plain"> View</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">VISIBLE</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">                signOutButton</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">visibility </span><span class="token operator">=</span><span class="token plain"> View</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">GONE</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->Android<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->Android (Kotlin / Java)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-android-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="android" term="android"/>
        <category label="kotlin/java" term="kotlin/java"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with .NET Core (Blazor Server)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto"/>
        <updated>2026-04-17T08:48:21.510Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models?view=aspnetcore-9.0#blazor-server" target="_blank" rel="noopener">.NET Core (Blazor Server)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models?view=aspnetcore-9.0#blazor-server" target="_blank" rel="noopener">.NET Core (Blazor Server)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->.Net Core (Blazor Server)<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate .Net Core (Blazor Server) with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate .Net Core (Blazor Server) with Logto" title="Lien direct vers Integrate .Net Core (Blazor Server) with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built on .NET Core 8.0. The SDK is compatible with .NET 6.0 or higher.</li>
<li class="">The .NET Core sample projects are available in the <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/csharp" target="_blank" rel="noopener noreferrer" class="link_hf7f">GitHub repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Add the NuGet package to your project:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> package Logto.AspNetCore.Authentication</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-logto-authentication">Add Logto authentication<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#add-logto-authentication" class="hash-link" aria-label="Lien direct vers Add Logto authentication" title="Lien direct vers Add Logto authentication" translate="no">​</a></h3>
<p>Open <code>Startup.cs</code> (or <code>Program.cs</code>) and add the following code to register Logto authentication services:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Logto</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Authentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> builder </span><span class="token operator">=</span><span class="token plain"> WebApplication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">CreateBuilder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">args</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Endpoint </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:Endpoint"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppId </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppId"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppSecret </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppSecret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>The <code>AddLogtoAuthentication</code> method will do the following things:</p>
<ul>
<li class="">Set the default authentication scheme to <code>LogtoDefaults.CookieScheme</code>.</li>
<li class="">Set the default challenge scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Set the default sign-out scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Add cookie and OpenID Connect authentication handlers to the authentication scheme.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="sign-in-and-sign-out-flows">Sign-in and sign-out flows<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#sign-in-and-sign-out-flows" class="hash-link" aria-label="Lien direct vers Sign-in and sign-out flows" title="Lien direct vers Sign-in and sign-out flows" translate="no">​</a></h3>
<p>Before we proceed, there are two confusing terms in the .NET Core authentication middleware that we need to clarify:</p>
<ol>
<li class=""><strong>CallbackPath</strong>: The URI that Logto will redirect the user back to after the user has signed in (the "redirect URI" in Logto)</li>
<li class=""><strong>RedirectUri</strong>: The URI that will be redirected to after necessary actions have been taken in the Logto authentication middleware.</li>
</ol>
<p>The sign-in process can be illustrated as follows:</p>
<!-- -->
<br>
<p>Similarly, .NET Core also has <strong>SignedOutCallbackPath</strong> and <strong>RedirectUri</strong> for the sign-out flow.</p>
<p>For the sake of clarity, we'll refer them as follows:</p>
<table><thead><tr><th>Term we use</th><th>.NET Core term</th></tr></thead><tbody><tr><td>Logto redirect URI</td><td>CallbackPath</td></tr><tr><td>Logto post sign-out redirect URI</td><td>SignedOutCallbackPath</td></tr><tr><td>Application redirect URI</td><td>RedirectUri</td></tr></tbody></table>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<p>First, let's configure the <strong>Logto redirect URI</strong>. Add the following URI to the "Redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/Callback</span><br></span></code></pre></div></div>
<p>To configure the <strong>Logto post sign-out redirect URI</strong>, add the following URI to the "Post sign-out redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/SignedOutCallback</span><br></span></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="change-the-default-paths">Change the default paths<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#change-the-default-paths" class="hash-link" aria-label="Lien direct vers Change the default paths" title="Lien direct vers Change the default paths" translate="no">​</a></h4>
<p>The <strong>Logto redirect URI</strong> has a default path of <code>/Callback</code>, and the <strong>Logto post sign-out redirect URI</strong> has a default path of <code>/SignedOutCallback</code>.</p>
<p>You can leave them as are if there's no special requirement. If you want to change it, you can set the <code>CallbackPath</code> and <code>SignedOutCallbackPath</code> property for <code>LogtoOptions</code>:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Other configurations...</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">CallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Foo"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">SignedOutCallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Bar"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Remember to update the value in the Logto application details page accordingly.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-routes">Add routes<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#add-routes" class="hash-link" aria-label="Lien direct vers Add routes" title="Lien direct vers Add routes" translate="no">​</a></h3>
<p>Since Blazor Server uses SignalR to communicate between the server and the client, this means methods that directly manipulate the HTTP context (like issuing challenges or redirects) don't work as expected when called from a Blazor component.</p>
<p>To make it right, we need to explicitly add two endpoints for sign-in and sign-out redirects:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">MapGet</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/SignIn"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> context </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">User</span><span class="token punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token plain">Identity</span><span class="token punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token plain">IsAuthenticated </span><span class="token operator">??</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">ChallengeAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Response</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">app</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">MapGet</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/SignOut"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> context </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">if</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">User</span><span class="token punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token plain">Identity</span><span class="token punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token plain">IsAuthenticated </span><span class="token operator">??</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignOutAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        context</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Response</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Redirect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Now we can redirect to these endpoints to trigger sign-in and sign-out.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-insign-out-buttons">Implement sign-in/sign-out buttons<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#implement-sign-insign-out-buttons" class="hash-link" aria-label="Lien direct vers Implement sign-in/sign-out buttons" title="Lien direct vers Implement sign-in/sign-out buttons" translate="no">​</a></h3>
<p>In the Razor component, add the following code:</p>
<div class="language-cshtml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Components/Pages/Index.razor</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-cshtml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@using</span><span class="token directive"> </span><span class="token directive csharp language-csharp">Microsoft</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">AspNetCore</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Components</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Authorization</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@using</span><span class="token directive"> </span><span class="token directive csharp language-csharp">System</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Security</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Claims</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@inject</span><span class="token directive"> </span><span class="token directive csharp language-csharp">AuthenticationStateProvider AuthenticationStateProvider</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@inject</span><span class="token directive"> </span><span class="token directive csharp language-csharp">NavigationManager NavigationManager</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* ... *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Is authenticated: </span><span class="token value variable keyword" style="color:rgb(189, 147, 249);font-style:italic">@</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">User</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">Identity</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">?.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">IsAuthenticated</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token block keyword" style="color:rgb(189, 147, 249);font-style:italic">@if</span><span class="token block"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp">User</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp">Identity</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token block csharp language-csharp">IsAuthenticated </span><span class="token block csharp language-csharp operator">==</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp boolean">true</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">@onclick</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignOut</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign out</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">@onclick</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignIn</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign in</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">button</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* ... *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token block keyword" style="color:rgb(189, 147, 249);font-style:italic">@code</span><span class="token block"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp return-type class-name">ClaimsPrincipal</span><span class="token block csharp language-csharp return-type class-name punctuation" style="color:rgb(248, 248, 242)">?</span><span class="token block csharp language-csharp"> User </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">get</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">set</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">protected</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">override</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp return-type class-name">Task</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">OnInitializedAsync</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">        </span><span class="token block csharp language-csharp class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token block csharp language-csharp"> authState </span><span class="token block csharp language-csharp operator">=</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token block csharp language-csharp"> AuthenticationStateProvider</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">GetAuthenticationStateAsync</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">        User </span><span class="token block csharp language-csharp operator">=</span><span class="token block csharp language-csharp"> authState</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp">User</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp return-type class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">SignIn</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">        NavigationManager</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">NavigateTo</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp string" style="color:rgb(255, 121, 198)">"/SignIn"</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp named-parameter punctuation" style="color:rgb(248, 248, 242)">forceLoad</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp boolean">true</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp return-type class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">void</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">SignOut</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">        NavigationManager</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp function" style="color:rgb(80, 250, 123)">NavigateTo</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp string" style="color:rgb(255, 121, 198)">"/SignOut"</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp named-parameter punctuation" style="color:rgb(248, 248, 242)">forceLoad</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp boolean">true</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">    </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p><strong>Explanation</strong>:</p>
<ul>
<li class="">The injected <code>AuthenticationStateProvider</code> is used to get the current user's authentication state, and populate the <code>User</code> property.</li>
<li class="">The <code>SignIn</code> and <code>SignOut</code> methods are used to redirect the user to the sign-in and sign-out endpoints respectively. Since the nature of Blazor Server, we need to use <code>NavigationManager</code> with force load to trigger the redirection.</li>
</ul>
<p>The page will show the "Sign in" button if the user is not authenticated, and show the "Sign out" button if the user is authenticated.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="the-authorizeview--component">The <code>&lt;AuthorizeView /&gt;</code> component<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#the-authorizeview--component" class="hash-link" aria-label="Lien direct vers the-authorizeview--component" title="Lien direct vers the-authorizeview--component" translate="no">​</a></h3>
<p>Alternatively, you can use the <code>AuthorizeView</code> component to conditionally render content based on the user's authentication state. This component is useful when you want to show different content to authenticated and unauthenticated users.</p>
<p>In your Razor component, add the following code:</p>
<div class="language-cshtml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Components/Pages/Index.razor</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-cshtml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@using</span><span class="token directive"> </span><span class="token directive csharp language-csharp">Microsoft</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">AspNetCore</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Components</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Authorization</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* ... *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">AuthorizeView</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">Authorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Name: </span><span class="token value variable keyword" style="color:rgb(189, 147, 249);font-style:italic">@</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">User</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">?.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">Identity</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">?.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">Name</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* Content for authenticated users *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">Authorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">NotAuthorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* Content for unauthenticated users *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">NotAuthorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">AuthorizeView</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* ... *@</span><br></span></code></pre></div></div>
<p>The <code>AuthorizeView</code> component requires a cascading parameter of type <code>Task&lt;AuthenticationState&gt;</code>. A direct way to get this parameter is to add the <code>&lt;CascadingAuthenticationState&gt;</code> component. However, due to the nature of Blazor Server, we cannot simply add the component to the layout or the root component (it may not work as expected). Instead, we can add the following code to the builder (<code>Program.cs</code> or <code>Startup.cs</code>) to provide the cascading parameter:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddCascadingAuthenticationState</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Then you can use the <code>AuthorizeView</code> component in every component that needs it.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->.Net Core (Blazor Server)<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->.NET Core (Blazor Server)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-server-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="dotnet-core-blazor-server" term="dotnet-core-blazor-server"/>
        <category label="c#" term="c#"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with .NET Core (Blazor WebAssembly)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto"/>
        <updated>2026-04-17T08:48:21.510Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models#blazor-webassembly" target="_blank" rel="noopener">.NET Core (Blazor WebAssembly)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models#blazor-webassembly" target="_blank" rel="noopener">.NET Core (Blazor WebAssembly)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Single page app<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Single page app<!-- -->" section or filter all the available "<!-- -->Single page app<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->.NET Core (Blazor WebAssembly)<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate .NET Core (Blazor WebAssembly) with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate .NET Core (Blazor WebAssembly) with Logto" title="Lien direct vers Integrate .NET Core (Blazor WebAssembly) with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built on .NET Core 8.0 and <span class="linkWrapper_B4Bt"><a href="https://github.com/WildGums/Blorc.OpenIdConnect" target="_blank" rel="noopener noreferrer" class="link_hf7f">Blorc.OpenIdConnect<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">The .NET Core sample projects are available in the <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/csharp" target="_blank" rel="noopener noreferrer" class="link_hf7f">GitHub repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Add the NuGet package to your project:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> package Blorc.OpenIdConnect</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-script-references">Add script references<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#add-script-references" class="hash-link" aria-label="Lien direct vers Add script references" title="Lien direct vers Add script references" translate="no">​</a></h3>
<p>Include <code>Blorc.Core/injector.js</code> the <code>index.html</code> file:</p>
<div class="language-html codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">index.html</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-html codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">head</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- ... --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">src</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">_content/Blorc.Core/injector.js</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token script"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">script</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">&lt;!-- ... --&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">head</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="register-services">Register services<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#register-services" class="hash-link" aria-label="Lien direct vers Register services" title="Lien direct vers Register services" translate="no">​</a></h3>
<p>Add the following code to the <code>Program.cs</code> file:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Blorc</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">OpenIdConnect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Blorc</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddBlorcCore</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddAuthorizationCore</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddBlorcOpenIdConnect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Bind</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token string" style="color:rgb(255, 121, 198)">"IdentityServer"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> webAssemblyHost </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">Build</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> webAssemblyHost</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">ConfigureDocumentAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> documentService </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> documentService</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">InjectBlorcCoreJsAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> documentService</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">InjectOpenIdConnectAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> webAssemblyHost</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">RunAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">info<!-- -->:</span><p>There's no need to use the <code>Microsoft.AspNetCore.Components.WebAssembly.Authentication</code> package. The <code>Blorc.OpenIdConnect</code> package will take care of the authentication process.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<p>Before we dive into the details, here's a quick overview of the end-user experience. The sign-in process can be simplified as follows:</p>
<!-- -->
<ol>
<li class="">Your app invokes the sign-in method.</li>
<li class="">The user is redirected to the Logto sign-in page. For native apps, the system browser is opened.</li>
<li class="">The user signs in and is redirected back to your app (configured as the redirect URI).</li>
</ol>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<hr>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<!-- -->
<!-- -->
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h4>
<p>Switch to the application details page of Logto Console. Add a redirect URI <code>http://localhost:3000/callback</code>.</p>
<img alt="Redirect URI in Logto Console" src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/web-redirect-uri.png" width="600px">
<p>Just like signing in, users should be redirected to Logto for signing out of the shared session. Once finished, it would be great to redirect the user back to your website. For example, add <code>http://localhost:3000/</code> as the post sign-out redirect URI section.</p>
<p>Then click "Save" to save the changes.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-application">Configure application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#configure-application" class="hash-link" aria-label="Lien direct vers Configure application" title="Lien direct vers Configure application" translate="no">​</a></h3>
<p>Add the following code to the <code>appsettings.json</code> file:</p>
<div class="language-json5 codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">appsettings.json</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-json5 codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)">// ...</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token property unquoted">IdentityServer</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">Authority</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'https://&lt;your-logto-endpoint&gt;/oidc'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">ClientId</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'&lt;your-logto-app-id&gt;'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">PostLogoutRedirectUri</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000/'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">RedirectUri</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'http://localhost:3000/callback'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">ResponseType</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'code'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token property unquoted">Scope</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'openid profile'</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token comment" style="color:rgb(98, 114, 164)">// Add more scopes if needed</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Remember to add the <code>RedirectUri</code> and <code>PostLogoutRedirectUri</code> to the list of allowed redirect URIs in the Logto application settings. They are both the URL of your WASM application.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-authorizeview-component">Add <code>AuthorizeView</code> component<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#add-authorizeview-component" class="hash-link" aria-label="Lien direct vers add-authorizeview-component" title="Lien direct vers add-authorizeview-component" translate="no">​</a></h3>
<p>In the Razor pages that require authentication, add the <code>AuthorizeView</code> component. Let's assume it's the <code>Home.razor</code> page:</p>
<div class="language-cshtml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Pages/Home.razor</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-cshtml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@using</span><span class="token directive"> </span><span class="token directive csharp language-csharp">Microsoft</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">AspNetCore</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Components</span><span class="token directive csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token directive csharp language-csharp">Authorization</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token directive keyword" style="color:rgb(189, 147, 249);font-style:italic">@page</span><span class="token directive"> </span><span class="token directive csharp language-csharp string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">AuthorizeView</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">Authorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* Signed in view *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">@onclick</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">OnLogoutButtonClickAsync</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            Sign out</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">Authorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">NotAuthorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token razor-comment comment" style="color:rgb(98, 114, 164)">@* Unauthenticated view *@</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag" style="color:rgb(255, 121, 198)"> </span><span class="token tag attr-name" style="color:rgb(241, 250, 140)">@onclick</span><span class="token tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag attr-value" style="color:rgb(255, 121, 198)">OnLoginButtonClickAsync</span><span class="token tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">            Sign in</span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">button</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">NotAuthorized</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">AuthorizeView</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-authentication">Set up authentication<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#set-up-authentication" class="hash-link" aria-label="Lien direct vers Set up authentication" title="Lien direct vers Set up authentication" translate="no">​</a></h3>
<p>In the <code>Home.razor.cs</code> file (create it if it doesn't exist), add the following code:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Pages/Home.razor.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Microsoft</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Authorization</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Microsoft</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Components</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Microsoft</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Components</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Web</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Blorc</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">OpenIdConnect</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Microsoft</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Components</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Authorization</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token attribute class-name">Authorize</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">partial</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">Home</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token type-list class-name">ComponentBase</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token attribute class-name">Inject</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> required </span><span class="token return-type class-name">IUserManager</span><span class="token plain"> UserManager </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">set</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token return-type class-name">User</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token return-type class-name">Profile</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">?</span><span class="token plain"> User </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">set</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token attribute class-name">CascadingParameter</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">protected</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token return-type class-name">AuthenticationState</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token return-type class-name punctuation" style="color:rgb(248, 248, 242)">?</span><span class="token plain"> AuthenticationStateTask </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">get</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">set</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">protected</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">override</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">OnInitializedAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        User </span><span class="token operator">=</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> UserManager</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token generic-method function" style="color:rgb(80, 250, 123)">GetUserAsync</span><span class="token generic-method generic class-name punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generic-method generic class-name">User</span><span class="token generic-method generic class-name punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token generic-method generic class-name">Profile</span><span class="token generic-method generic class-name punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token generic-method generic class-name punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">AuthenticationStateTask</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">OnLoginButtonClickAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">MouseEventArgs</span><span class="token plain"> obj</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> UserManager</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignInRedirectAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">private</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">async</span><span class="token plain"> </span><span class="token return-type class-name">Task</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">OnLogoutButtonClickAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token class-name">MouseEventArgs</span><span class="token plain"> obj</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">        </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">await</span><span class="token plain"> UserManager</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">SignOutRedirectAsync</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Once the user is authenticated, the <code>User</code> property will be populated with the user information.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->.NET Core (Blazor WebAssembly)<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->.NET Core (Blazor WebAssembly)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-blazor-webassembly-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="dotnet-core-blazor-webassembly" term="dotnet-core-blazor-webassembly"/>
        <category label="c#" term="c#"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Okta enterprise SSO with .NET Core (MVC)]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto"/>
        <updated>2026-04-17T08:48:21.510Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">For our new friends<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> is an Auth0 alternative designed for modern apps and SaaS products. It
offers both <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
services to help you quickly launch your identity and management (IAM) system. Enjoy authentication,
authorization, and multi-tenant management <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">all in one<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>We recommend starting with a free development tenant on <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. This allows you to explore all the features easily.</p></div></div></div>
<p>In this article, we will go through the steps to quickly build the <!-- -->Okta enterprise SSO<!-- --> sign-in
experience (user authentication) with <a href="https://dotnet.microsoft.com/apps/aspnet/mvc" target="_blank" rel="noopener">.NET Core (MVC)</a> and <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prerequisites</strong></p>
<ul>
<li class="">A running Logto instance. Check out the <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">introduction page<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> to get started.</li>
<li class="">Basic knowledge of <a href="https://dotnet.microsoft.com/apps/aspnet/mvc" target="_blank" rel="noopener">.NET Core (MVC)</a>.</li>
<li class="">A usable <!-- -->Okta enterprise SSO<!-- --> account.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto is based on OpenID Connect (OIDC) authentication and OAuth 2.0 authorization. It supports federated identity management across multiple applications, commonly called Single Sign-On (SSO).</p>
<p>To create your <!-- -->Traditional web<!-- --> application, simply follow these steps:</p>
<ol>
<li class="">Open the <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. In the "Get started" section, click the "View all" link to open the application frameworks list. Alternatively, you can navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, and click the "Create application" button.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">In the opening modal, click the "<!-- -->Traditional web<!-- -->" section or filter all the available "<!-- -->Traditional web<!-- -->" frameworks using the quick filter checkboxes on the left. Click the "<!-- -->.NET Core (MVC)<!-- -->" framework card to start creating your application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Enter the application name, e.g., "Bookstore," and click "Create application".</li>
</ol>
<p>🎉 Ta-da! You just created your first application in Logto. You'll see a congrats page which includes a detailed integration guide. Follow the guide to see what the experience will be in your application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-with-logto">Integrate .NET Core (MVC) with Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#integrate-with-logto" class="hash-link" aria-label="Lien direct vers Integrate .NET Core (MVC) with Logto" title="Lien direct vers Integrate .NET Core (MVC) with Logto" translate="no">​</a></h2>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><ul>
<li class="">The following demonstration is built on .NET Core 8.0. The SDK is compatible with .NET 6.0 or higher.</li>
<li class="">The .NET Core sample projects are available in the <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/csharp" target="_blank" rel="noopener noreferrer" class="link_hf7f">GitHub repository<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ul></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="installation">Installation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#installation" class="hash-link" aria-label="Lien direct vers Installation" title="Lien direct vers Installation" translate="no">​</a></h3>
<p>Add the NuGet package to your project:</p>
<div class="language-bash codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-bash codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(80, 250, 123)">add</span><span class="token plain"> package Logto.AspNetCore.Authentication</span><br></span></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="add-logto-authentication">Add Logto authentication<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#add-logto-authentication" class="hash-link" aria-label="Lien direct vers Add Logto authentication" title="Lien direct vers Add Logto authentication" translate="no">​</a></h3>
<p>Open <code>Startup.cs</code> (or <code>Program.cs</code>) and add the following code to register Logto authentication services:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">using</span><span class="token plain"> </span><span class="token namespace">Logto</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">AspNetCore</span><span class="token namespace punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token namespace">Authentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token class-name keyword" style="color:rgb(189, 147, 249);font-style:italic">var</span><span class="token plain"> builder </span><span class="token operator">=</span><span class="token plain"> WebApplication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">CreateBuilder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">args</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Endpoint </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:Endpoint"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppId </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppId"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token operator">!</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">AppSecret </span><span class="token operator">=</span><span class="token plain"> builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Configuration</span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"Logto:AppSecret"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>The <code>AddLogtoAuthentication</code> method will do the following things:</p>
<ul>
<li class="">Set the default authentication scheme to <code>LogtoDefaults.CookieScheme</code>.</li>
<li class="">Set the default challenge scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Set the default sign-out scheme to <code>LogtoDefaults.AuthenticationScheme</code>.</li>
<li class="">Add cookie and OpenID Connect authentication handlers to the authentication scheme.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="sign-in-and-sign-out-flows">Sign-in and sign-out flows<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#sign-in-and-sign-out-flows" class="hash-link" aria-label="Lien direct vers Sign-in and sign-out flows" title="Lien direct vers Sign-in and sign-out flows" translate="no">​</a></h3>
<p>Before we proceed, there are two confusing terms in the .NET Core authentication middleware that we need to clarify:</p>
<ol>
<li class=""><strong>CallbackPath</strong>: The URI that Logto will redirect the user back to after the user has signed in (the "redirect URI" in Logto)</li>
<li class=""><strong>RedirectUri</strong>: The URI that will be redirected to after necessary actions have been taken in the Logto authentication middleware.</li>
</ol>
<p>The sign-in process can be illustrated as follows:</p>
<!-- -->
<br>
<p>Similarly, .NET Core also has <strong>SignedOutCallbackPath</strong> and <strong>RedirectUri</strong> for the sign-out flow.</p>
<p>For the sake of clarity, we'll refer them as follows:</p>
<table><thead><tr><th>Term we use</th><th>.NET Core term</th></tr></thead><tbody><tr><td>Logto redirect URI</td><td>CallbackPath</td></tr><tr><td>Logto post sign-out redirect URI</td><td>SignedOutCallbackPath</td></tr><tr><td>Application redirect URI</td><td>RedirectUri</td></tr></tbody></table>
<details class="details_ydV2 details_Jw1Q" data-collapsed="true"><summary><h3 class="anchor anchorTargetStickyNavbar_kxPF" id="regarding-redirect-based-sign-in">Regarding redirect-based sign-in<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#regarding-redirect-based-sign-in" class="hash-link" aria-label="Lien direct vers Regarding redirect-based sign-in" title="Lien direct vers Regarding redirect-based sign-in" translate="no">​</a></h3></summary><div><div class="collapsibleContent_JbGB"><ol>
<li class="">This authentication process follows the <span class="linkWrapper_B4Bt"><a href="https://openid.net/specs/openid-connect-core-1_0.html" target="_blank" rel="noopener noreferrer" class="link_hf7f">OpenID Connect (OIDC)<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> protocol, and Logto enforces strict security measures to protect user sign-in.</li>
<li class="">If you have multiple apps, you can use the same identity provider (Logto). Once the user signs in to one app, Logto will automatically complete the sign-in process when the user accesses another app.</li>
</ol><p>To learn more about the rationale and benefits of redirect-based sign-in, see <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Logto sign-in experience explained<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p></div></div></details>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uris">Configure redirect URIs<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#configure-redirect-uris" class="hash-link" aria-label="Lien direct vers Configure redirect URIs" title="Lien direct vers Configure redirect URIs" translate="no">​</a></h3>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>In the following code snippets, we assume your app is running on <code>http://localhost:3000/</code>.</p></div></div></div>
<p>First, let's configure the <strong>Logto redirect URI</strong>. Add the following URI to the "Redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/Callback</span><br></span></code></pre></div></div>
<p>To configure the <strong>Logto post sign-out redirect URI</strong>, add the following URI to the "Post sign-out redirect URIs" list in the Logto application details page:</p>
<div class="language-text codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-text codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">http://localhost:3000/SignedOutCallback</span><br></span></code></pre></div></div>
<h4 class="anchor anchorTargetStickyNavbar_kxPF" id="change-the-default-paths">Change the default paths<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#change-the-default-paths" class="hash-link" aria-label="Lien direct vers Change the default paths" title="Lien direct vers Change the default paths" translate="no">​</a></h4>
<p>The <strong>Logto redirect URI</strong> has a default path of <code>/Callback</code>, and the <strong>Logto post sign-out redirect URI</strong> has a default path of <code>/SignedOutCallback</code>.</p>
<p>You can leave them as are if there's no special requirement. If you want to change it, you can set the <code>CallbackPath</code> and <code>SignedOutCallbackPath</code> property for <code>LogtoOptions</code>:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Program.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token plain">builder</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">Services</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token function" style="color:rgb(80, 250, 123)">AddLogtoAuthentication</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token plain">options </span><span class="token operator">=&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Other configurations...</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">CallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Foo"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line theme-code-block-highlighted-line" style="color:#F8F8F2"><span class="token plain">  options</span><span class="token punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token plain">SignedOutCallbackPath </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/Bar"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><br></span></code></pre></div></div>
<p>Remember to update the value in the Logto application details page accordingly.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="implement-sign-insign-out-buttons">Implement sign-in/sign-out buttons<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#implement-sign-insign-out-buttons" class="hash-link" aria-label="Lien direct vers Implement sign-in/sign-out buttons" title="Lien direct vers Implement sign-in/sign-out buttons" translate="no">​</a></h3>
<p>First, add actions methods to your <code>Controller</code>, for example:</p>
<div class="language-csharp codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Controllers/HomeController.cs</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-csharp codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">class</span><span class="token plain"> </span><span class="token class-name">HomeController</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token type-list class-name">Controller</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token return-type class-name">IActionResult</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">SignIn</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// This will redirect the user to the Logto sign-in page.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">Challenge</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token comment" style="color:rgb(98, 114, 164)">// Use the `new` keyword to avoid conflict with the `ControllerBase.SignOut` method</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">public</span><span class="token plain"> </span><span class="token return-type class-name">IActionResult</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">SignOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// This will clear the authentication cookie and redirect the user to the Logto sign-out page</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token comment" style="color:rgb(98, 114, 164)">// to clear the Logto session as well.</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">    </span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">return</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">SignOut</span><span class="token punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token keyword" style="color:rgb(189, 147, 249);font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name">AuthenticationProperties</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"> RedirectUri </span><span class="token operator">=</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/"</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token punctuation" style="color:rgb(248, 248, 242)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">  </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>Then, add the links to your View:</p>
<div class="language-cshtml codeBlockContainer_DlGl theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockTitle_aDbb">Views/Home/Index.cshtml</div><div class="codeBlockContent_FuAU"><pre tabindex="0" class="prism-code language-cshtml codeBlock_pF9h thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_WtJL"><span class="token-line" style="color:#F8F8F2"><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain">Is authenticated: </span><span class="token value variable keyword" style="color:rgb(189, 147, 249);font-style:italic">@</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">User</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">Identity</span><span class="token value variable csharp language-csharp punctuation" style="color:rgb(248, 248, 242);font-style:italic">?.</span><span class="token value variable csharp language-csharp" style="color:rgb(189, 147, 249);font-style:italic">IsAuthenticated</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token tag" style="color:rgb(255, 121, 198)">p</span><span class="token tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token block keyword" style="color:rgb(189, 147, 249);font-style:italic">@if</span><span class="token block"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">(</span><span class="token block csharp language-csharp">User</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">.</span><span class="token block csharp language-csharp">Identity</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">?.</span><span class="token block csharp language-csharp">IsAuthenticated </span><span class="token block csharp language-csharp operator">==</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp boolean">true</span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">)</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">  </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">a</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-controller</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">Home</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-action</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignOut</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign out</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">a</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp keyword" style="color:rgb(189, 147, 249);font-style:italic">else</span><span class="token block csharp language-csharp"> </span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp">  </span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">a</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-controller</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">Home</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)"> </span><span class="token block csharp language-csharp html tag attr-name" style="color:rgb(241, 250, 140)">asp-action</span><span class="token block csharp language-csharp html tag attr-value punctuation attr-equals" style="color:rgb(248, 248, 242)">=</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag attr-value" style="color:rgb(255, 121, 198)">SignIn</span><span class="token block csharp language-csharp html tag attr-value punctuation" style="color:rgb(248, 248, 242)">"</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp html">Sign in</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&lt;/</span><span class="token block csharp language-csharp html tag" style="color:rgb(255, 121, 198)">a</span><span class="token block csharp language-csharp html tag punctuation" style="color:rgb(248, 248, 242)">&gt;</span><span class="token block csharp language-csharp"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token block csharp language-csharp"></span><span class="token block csharp language-csharp punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre></div></div>
<p>It will show the "Sign in" link if the user is not authenticated, and show the "Sign out" link if the user is authenticated.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-application">Checkpoint: Test your application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#checkpoint-test-your-application" class="hash-link" aria-label="Lien direct vers Checkpoint: Test your application" title="Lien direct vers Checkpoint: Test your application" translate="no">​</a></h3>
<p>Now, you can test your application:</p>
<ol>
<li class="">Run your application, you will see the sign-in button.</li>
<li class="">Click the sign-in button, the SDK will init the sign-in process and redirect you to the Logto sign-in page.</li>
<li class="">After you signed in, you will be redirected back to your application and see the sign-out button.</li>
<li class="">Click the sign-out button to clear token storage and sign out.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Okta enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Okta enterprise SSO connector" title="Lien direct vers Add Okta enterprise SSO connector" translate="no">​</a></h2>
<p>To simplify access management and gain enterprise-level safeguards for your big clients, connect with <!-- -->.NET Core (MVC)<!-- --> as a federated identity provider. The Logto enterprise SSO connector helps you establish this connection in minutes by allowing several parameter inputs.</p>
<p>To add an enterprise SSO connector, simply follow these steps:</p>
<ol>
<li class="">Navigate to <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="SSO page">
<ol start="2">
<li class="">Click "Add enterprise connector" button and choose your SSO provider type. Choose from prebuilt connectors for Microsoft Entra ID (Azure AD), Google Workspace, and Okta, or create a custom SSO connection using the standard OpenID Connect (OIDC) or SAML protocol.</li>
<li class="">Provide a unique name (e.g., SSO sign-in for Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Select your SSO provider">
<ol start="4">
<li class="">Configure the connection with your IdP in the "Connection" tab. Check the guides above for each connector types.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="SSO connection">
<ol start="5">
<li class="">Customize the SSO experience and enterprise’s <strong>email domain</strong> in the "Experience" tab. Users sign in with the SSO-enabled email domain will be redirected to SSO authentication.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="SSO experience">
<ol start="6">
<li class="">Save changes.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on Okta admin portal" title="Lien direct vers Set up OIDC application on Okta admin portal" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-okta-admin-portal">Step 1: Create an OIDC application on Okta admin portal<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-1-create-an-oidc-application-on-okta-admin-portal" class="hash-link" aria-label="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" title="Lien direct vers Step 1: Create an OIDC application on Okta admin portal" translate="no">​</a></h3>
<ul>
<li class="">Visit the Okta admin portal and sign in as an administrator.</li>
<li class="">Navigate to the <code>Applications</code>/<code>Applications</code> page using the side menu.</li>
<li class="">Click the <code>Create App Integration</code> button to create a new OIDC application.</li>
<li class="">Select the <code>OIDC - OpenID Connect</code> option as the <code>Sign-in method</code>.</li>
<li class="">Select the <code>Web Application</code> option as the <code>Application type</code>.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_create_application.webp" alt="Okta create application">
<p>Click the <code>Next</code> button to continue.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-the-application-settings">Step 2: Configure the application settings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-2-configure-the-application-settings" class="hash-link" aria-label="Lien direct vers Step 2: Configure the application settings" title="Lien direct vers Step 2: Configure the application settings" translate="no">​</a></h3>
<ol>
<li class="">Provide an <code>App integration name</code>. It will be used as the identifier of your OIDC application.</li>
<li class="">Add a new <code>Sign-in redirect URIs</code> using the Logto SSO connector's callback URL.</li>
</ol>
<p>This is the URI that the Okta will redirect the user's browser after successful authentication. After a user successfully authenticates with the IdP, the IdP redirects the user's browser back to this designated URI along with an authorization code. Logto will complete the authentication process based on the authorization code received from this URI.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_application_settings.webp" alt="Okta application settings">
<ol start="3">
<li class="">Assign users to the application.</li>
</ol>
<p>Based on the <code>Assignments</code> settings, you can choose to assign the application to all users or specific users/groups.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_assign_users.webp" alt="Okta assign users">
<p>Click the <code>Save</code> button to save the application settings.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-set-up-logto-connector-with-the-client-credentials">Step 3: Set up Logto connector with the client credentials<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-3-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Step 3: Set up Logto connector with the client credentials" title="Lien direct vers Step 3: Set up Logto connector with the client credentials" translate="no">​</a></h3>
<p>After successfully creating the OIDC application, you will be redirected to the application details page.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/okta_client_credentials.webp" alt="Okta client credentials">
<p>Copy the <code>client ID</code> and <code>client secret</code> and fill in the corresponding fields on the Logto SSO connector <code>Connection</code> tab.</p>
<p>Use your Okta domain as the <code>issuer</code>. Example: <code>https://dev-12345678.okta.com</code>. Once you have filled in all the fields, click the <code>Save</code> button to save the connector settings.</p>
<p>If the <code>issuer</code> link you provided is valid, you will see a parsed full list of Okta IdP configurations shown below the <code>issuer</code> field.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-additional-scopes-optional">Step 4: Additional scopes (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-4-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Step 4: Additional scopes (Optional)" title="Lien direct vers Step 4: Additional scopes (Optional)" translate="no">​</a></h3>
<p>Scopes define the permissions your app requests from users and control which data your app can access from their Okta accounts. Requesting additional Okta permissions requires configuration on both sides:</p>
<p><strong>In Okta admin console:</strong></p>
<ol>
<li class="">Navigate to <strong>Applications &gt; Applications</strong> and select your OIDC application.</li>
<li class="">Go to the <strong>Assignments</strong> tab to ensure your app has access to the required users and groups.</li>
<li class="">For custom scopes, navigate to <strong>Security &gt; API &gt; Authorization Servers</strong> and select your authorization server.</li>
<li class="">Add custom scopes if needed:<!-- -->
<ul>
<li class="">Click <strong>Scopes</strong> and then <strong>Add Scope</strong></li>
<li class="">Define scope names like <code>okta.users.read</code> or <code>okta.groups.read</code> for accessing Okta APIs</li>
<li class="">Configure consent requirements for each scope</li>
</ul>
</li>
</ol>
<p>For a complete list of available scopes and their descriptions, please refer to the <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/api/openapi/okta-oauth/guides/overview/#scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta OIDC documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>In Logto Okta connector:</strong></p>
<ol>
<li class="">Logto automatically includes <code>openid</code>, <code>profile</code>, and <code>email</code> scopes to retrieve basic user identity information. You can leave the <code>Scopes</code> field blank if you only need basic user information.</li>
<li class="">Add <code>offline_access</code> to the <code>Scopes</code> field if you plan to store tokens for persistent API access. This scope enables refresh tokens for long-lived API access.</li>
<li class="">Add additional scopes (separated by spaces) in the <code>Scopes</code> field to request more data from Okta. For example: <code>okta.users.read okta.groups.read</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>If your app requests these scopes to access Okta APIs and perform actions, make sure to enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. See the next section for details.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-store-tokens-to-access-okta-apis-optional">Step 5: Store tokens to access Okta APIs (Optional)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-5-store-tokens-to-access-okta-apis-optional" class="hash-link" aria-label="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" title="Lien direct vers Step 5: Store tokens to access Okta APIs (Optional)" translate="no">​</a></h3>
<p>If you want to access <span class="linkWrapper_B4Bt"><a href="https://developer.okta.com/docs/guides/request-user-consent/main/#enable-consent-for-scopes" target="_blank" rel="noopener noreferrer" class="link_hf7f">Okta scopes<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> and perform actions with user authorization, Logto needs to get specific scopes and store tokens.</p>
<ol>
<li class="">Add the required scopes in your Okta developer console API permissions configuration and Logto Okta connector.</li>
<li class="">Enable <strong>Store tokens for persistent API access</strong> in Logto Okta connector. Logto will securely store Okta access and refresh tokens in the Secret Vault.</li>
<li class="">To ensure refresh tokens are returned, add the <code>offline_access</code> scope to your Okta application permissions and include it in your Logto Okta connector scopes. This scope allows your application to maintain access to resources for extended periods.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-set-email-domains-and-enable-the-sso-connector">Step 6: Set email domains and enable the SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#step-6-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Step 6: Set email domains and enable the SSO connector" title="Lien direct vers Step 6: Set email domains and enable the SSO connector" translate="no">​</a></h3>
<p>Provide the <code>email domains</code> of your organization on Logto's connector <code>SSO experience</code> tab. This will enable the SSO connector as an authentication method for those users.</p>
<p>Users with email addresses in the specified domains will be redirected to use your SSO connector as their only authentication method.</p>
<p>For more details about creating OIDC integration with Okta, please check <span class="linkWrapper_B4Bt"><a href="https://help.okta.com/oie/en-us/content/topics/apps/apps_app_integration_wizard_oidc.htm" target="_blank" rel="noopener noreferrer" class="link_hf7f">Create OIDC App Integrations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Double check you have filled out necessary values in the Logto connector configuration area. Click
"Save and Done" (or "Save changes") and the <!-- -->Okta enterprise SSO<!-- --> connector should be available now.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Okta enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Okta enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>You don’t need to configure enterprise connectors individually, Logto simplifies SSO integration into your applications with just one click.</p>
<ol>
<li class="">Navigate to: <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Sign-in &amp; account &gt; Sign-up and sign-in<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Enable the "Enterprise SSO" toggle.</li>
<li class="">Save changes.</li>
</ol>
<p>Once enabled, a "Single Sign-On" button will appear on your sign-in page. Enterprise users with SSO-enabled email domains can access your services using their enterprise identity providers (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Auto detect SSO sign-in via email domain">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Navigate to SSO sign-in via manually click link button">
<p>To learn more about the SSO user experience, including SP-initiated SSO and IdP-initiated SSO, refer to User flows: <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Return to your <!-- -->.NET Core (MVC)<!-- --> app. You should now be able to sign in with <!-- -->Okta enterprise SSO<!-- -->. Enjoy!</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-okta-enterprise-sso-sign-in-with-dotnet-core-mvc-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">End-user flows<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Logto provides a out-of-the-box authentication flows including MFA and enterprise SSO, along with powerful APIs for flexible implementation of account settings, security verification, and multi-tenant experience.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Authorization<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Authorization defines the actions a user can do or resources they can access after being authenticated. Explore how to protect your API for native and single-page applications and implement Role-based Access Control (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organizations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>: Particularly effective in multi-tenant SaaS and B2B apps, the organization feature enable tenant creation, member management, organization-level RBAC, and just-in-time-provisioning.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Customer IAM series<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> Our serial blog posts about Customer (or Consumer) Identity and Access Management, from 101 to advanced topics and beyond.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="okta-enterprise-sso" term="okta-enterprise-sso"/>
        <category label="dotnet-core-mvc" term="dotnet-core-mvc"/>
        <category label="c#" term="c#"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Google Workspace enterprise SSO with Plugin WordPress]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto"/>
        <updated>2026-04-17T08:48:21.478Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">Pour nos nouveaux amis<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> est une alternative à Auth0 conçue pour les applications modernes et les produits SaaS. Il
offre des services à la fois <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
pour vous aider à lancer rapidement votre système de gestion des identités et des accès (IAM). Profitez de l'authentification,
de l'autorisation et de la gestion multi-locataires <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">tout-en-un<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>Nous recommandons de commencer avec un locataire de développement gratuit sur <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Cela vous permet d'explorer facilement toutes les fonctionnalités.</p></div></div></div>
<p>Dans cet article, nous allons parcourir les étapes pour construire rapidement l'expérience de connexion <!-- -->Google Workspace enterprise SSO<!-- --> (authentification utilisateur) avec <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a> et <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prérequis</strong></p>
<ul>
<li class="">Une instance Logto en cours d'exécution. Consultez la <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/fr/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">page d'introduction<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour commencer.</li>
<li class="">Connaissance de base de <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a>.</li>
<li class="">Un compte <!-- -->Google Workspace enterprise SSO<!-- --> utilisable.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto est basé sur l'authentification OpenID Connect (OIDC) et l'autorisation OAuth 2.0. Il prend en charge la gestion des identités fédérées à travers plusieurs applications, communément appelée authentification unique (SSO).</p>
<p>Pour créer votre application <!-- -->Traditional web<!-- -->, suivez simplement ces étapes :</p>
<ol>
<li class="">Ouvrez la <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Dans la section "Get started", cliquez sur le lien "View all" pour ouvrir la liste des frameworks d'application. Alternativement, vous pouvez naviguer vers <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, et cliquer sur le bouton "Create application".<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">Dans la fenêtre modale qui s'ouvre, cliquez sur la section "<!-- -->Traditional web<!-- -->" ou filtrez tous les frameworks "<!-- -->Traditional web<!-- -->" disponibles en utilisant les cases à cocher de filtre rapide à gauche. Cliquez sur la carte du framework "<!-- -->WordPress<!-- -->" pour commencer à créer votre application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Entrez le nom de l'application, par exemple, "Bookstore", et cliquez sur "Create application".</li>
</ol>
<p>🎉 Ta-da ! Vous venez de créer votre première application dans Logto. Vous verrez une page de félicitations qui inclut un guide d'intégration détaillé. Suivez le guide pour voir quelle sera l'expérience dans votre application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-framework-sdk">Integrate WordPress SDK<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#integrate-framework-sdk" class="hash-link" aria-label="Lien direct vers Integrate WordPress SDK" title="Lien direct vers Integrate WordPress SDK" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="install-the-plugin">Installer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#install-the-plugin" class="hash-link" aria-label="Lien direct vers Installer le plugin" title="Lien direct vers Installer le plugin" translate="no">​</a></h3>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">Depuis le panneau d'administration de WordPress</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">Depuis un téléchargement</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><ol>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong>.</li>
<li class="">Recherchez "Logto", ou entrez <span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">https://wordpress.org/plugins/logto/<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> dans la boîte de recherche.</li>
<li class="">Cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div><div role="tabpanel" class="tabItem_pED3" hidden=""><ol>
<li class="">Téléchargez le plugin WordPress Logto depuis l'un des liens suivants :<!-- -->
<ul>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/wordpress/releases" target="_blank" rel="noopener noreferrer" class="link_hf7f">Dernière version<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier dont le nom est au format <code>logto-plugin-&lt;version&gt;.zip</code>.</li>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Répertoire des plugins WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier en cliquant sur le bouton <strong>Télécharger</strong>.</li>
</ul>
</li>
<li class="">Téléchargez le fichier ZIP du plugin.</li>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong> dans votre panneau d'administration WordPress.</li>
<li class="">Cliquez sur <strong>Téléverser une extension</strong>.</li>
<li class="">Sélectionnez le fichier ZIP téléchargé et cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-the-plugin">Configurer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-the-plugin" class="hash-link" aria-label="Lien direct vers Configurer le plugin" title="Lien direct vers Configurer le plugin" translate="no">​</a></h3>
<p>Vous devriez maintenant voir le menu Logto dans la barre latérale de votre panneau d'administration WordPress. Cliquez sur <strong>Logto</strong> &gt; <strong>Paramètres</strong> pour configurer le plugin.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Vous devez avoir une application <strong>web traditionnelle</strong> créée dans Logto Console avant de configurer le plugin. Si vous n'en avez pas créé une, veuillez vous référer à <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/integrate-logto/integrate-logto-into-your-application" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Intégrer Logto dans votre application<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour plus d'informations.</p></div></div></div>
<p>La configuration minimale pour commencer avec le plugin est :</p>
<ul>
<li class="">Point de terminaison Logto : Le point de terminaison de votre locataire Logto.</li>
<li class="">ID de l'application : L'ID de votre application Logto.</li>
<li class="">Secret de l'application : Un des secrets valides de votre application Logto.</li>
</ul>
<p>Toutes les valeurs peuvent être trouvées sur la page des détails de l'application dans Logto Console.</p>
<p>Après avoir rempli les valeurs, cliquez sur <strong>Enregistrer les modifications</strong> (faites défiler vers le bas de la page si vous ne trouvez pas le bouton).</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configurer l'URI de redirection<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configurer l'URI de redirection" title="Lien direct vers Configurer l'URI de redirection" translate="no">​</a></h3>
<p>L'URI de redirection est l'URL vers laquelle Logto redirigera les utilisateurs après leur authentification ; et l'URI de redirection après déconnexion est l'URL vers laquelle Logto redirigera les utilisateurs après leur déconnexion.</p>
<p>Voici un diagramme de séquence non normatif pour illustrer le flux de connexion :</p>
<!-- -->
<p>Voici à quoi ressemble le flux de déconnexion dans un diagramme de séquence non normatif :</p>
<!-- -->
<p>Pour en savoir plus sur la nécessité de la redirection, voir <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Expérience de connexion expliquée<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p>Dans notre cas, nous devons configurer les deux URIs de redirection dans votre Logto Console. Pour trouver l'URI de redirection, allez à la page <strong>Logto</strong> &gt; <strong>Paramètres</strong> dans votre panneau d'administration WordPress. Vous verrez les champs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong>.</p>
<ol>
<li class="">Copiez les valeurs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong> et collez-les dans les champs <strong>URIs de redirection</strong> et <strong>URIs de redirection après déconnexion</strong> dans votre Logto Console.</li>
<li class="">Cliquez sur <strong>Enregistrer les modifications</strong> dans Logto Console.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-website">Point de contrôle : Testez votre site WordPress<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#checkpoint-test-your-website" class="hash-link" aria-label="Lien direct vers Point de contrôle : Testez votre site WordPress" title="Lien direct vers Point de contrôle : Testez votre site WordPress" translate="no">​</a></h3>
<p>Vous pouvez maintenant tester votre intégration Logto sur votre site WordPress :</p>
<ol>
<li class="">Ouvrez une fenêtre de navigation privée si nécessaire.</li>
<li class="">Visitez votre site WordPress et cliquez sur le lien <strong>Connexion</strong> si applicable ; ou visitez directement la page de connexion (par exemple, <code>https://example.com/wp-login.php</code>).</li>
<li class="">La page devrait vous rediriger vers la page de connexion Logto.</li>
<li class="">Complétez le processus de connexion ou d'inscription.</li>
<li class="">Après une authentification réussie, vous devriez être redirigé vers votre site WordPress et connecté automatiquement.</li>
<li class="">Cliquez sur le lien <strong>Déconnexion</strong> pour vous déconnecter de votre site WordPress.</li>
<li class="">Vous devriez être redirigé vers la page de déconnexion Logto, puis de retour sur votre site WordPress.</li>
<li class="">Vous devriez être déconnecté de votre site WordPress.</li>
</ol>
<p>Pour en savoir plus sur les paramètres du plugin WordPress, consultez <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/quick-starts/wordpress-plugin" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>le démarrage rapide de WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Google Workspace enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Google Workspace enterprise SSO connector" title="Lien direct vers Add Google Workspace enterprise SSO connector" translate="no">​</a></h2>
<p>Pour simplifier la gestion des accès et obtenir des garanties de niveau entreprise pour vos grands clients, connectez-vous avec <!-- -->WordPress<!-- --> en tant que fournisseur d'identité fédéré. Le connecteur SSO d’entreprise Logto vous aide à établir cette connexion en quelques minutes en permettant l'entrée de plusieurs paramètres.</p>
<p>Pour ajouter un connecteur SSO d’entreprise, suivez simplement ces étapes :</p>
<ol>
<li class="">Accédez à <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="Page SSO">
<ol start="2">
<li class="">Cliquez sur le bouton "Ajouter un connecteur d’entreprise" et choisissez votre type de fournisseur SSO. Choisissez parmi les connecteurs préconstruits pour Microsoft Entra ID (Azure AD), Google Workspace et Okta, ou créez une connexion SSO personnalisée en utilisant le protocole standard OpenID Connect (OIDC) ou SAML.</li>
<li class="">Fournissez un nom unique (par exemple, Connexion SSO pour Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Sélectionnez votre fournisseur SSO">
<ol start="4">
<li class="">Configurez la connexion avec votre IdP dans l'onglet "Connexion". Consultez les guides ci-dessus pour chaque type de connecteur.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="Connexion SSO">
<ol start="5">
<li class="">Personnalisez l'expérience SSO et le <strong>domaine de messagerie</strong> de l’entreprise dans l'onglet "Expérience". Les utilisateurs se connectant avec le domaine de messagerie activé pour le SSO seront redirigés vers l'authentification SSO.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="Expérience SSO">
<ol start="6">
<li class="">Enregistrez les modifications.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up Google Cloud Platform<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up Google Cloud Platform" title="Lien direct vers Set up Google Cloud Platform" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-a-new-project-on-google-cloud-platform">Étape 1 : Créer un nouveau projet sur Google Cloud Platform<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-1-create-a-new-project-on-google-cloud-platform" class="hash-link" aria-label="Lien direct vers Étape 1 : Créer un nouveau projet sur Google Cloud Platform" title="Lien direct vers Étape 1 : Créer un nouveau projet sur Google Cloud Platform" translate="no">​</a></h3>
<p>Avant de pouvoir utiliser Google Workspace comme fournisseur d'authentification, vous devez configurer un projet dans la <span class="linkWrapper_B4Bt"><a href="https://console.developers.google.com/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Google API Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour obtenir des identifiants OAuth 2.0. Si vous avez déjà un projet, vous pouvez passer cette étape. Sinon, créez un nouveau projet sous votre organisation Google.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-config-the-consent-screen-for-your-application">Étape 2 : Configurer l’écran de consentement pour votre application<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-2-config-the-consent-screen-for-your-application" class="hash-link" aria-label="Lien direct vers Étape 2 : Configurer l’écran de consentement pour votre application" title="Lien direct vers Étape 2 : Configurer l’écran de consentement pour votre application" translate="no">​</a></h3>
<p>Pour créer de nouvelles informations d'identification OIDC, vous devez configurer l'écran de consentement pour votre application.</p>
<ol>
<li class="">Accédez à la page de l'<span class="linkWrapper_B4Bt"><a href="https://console.cloud.google.com/apis/credentials/consent" target="_blank" rel="noopener noreferrer" class="link_hf7f">écran de consentement OAuth<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et sélectionnez le type d'utilisateur <code>Interne</code>. Cela rendra l'application OAuth disponible uniquement pour les utilisateurs au sein de votre organisation.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_consent_screen_user_type.webp" alt="Type d'utilisateur de l'écran de consentement Google Workspace">
<ol start="2">
<li class="">Remplissez les paramètres de l'<code>Écran de consentement</code> en suivant les instructions sur la page. Vous devez fournir les informations minimales suivantes :</li>
</ol>
<ul>
<li class=""><strong>Nom de l'application</strong> : Le nom de votre application. Il sera affiché sur l'écran de consentement.</li>
<li class=""><strong>Email de support</strong> : L'email de support de votre application. Il sera affiché sur l'écran de consentement.</li>
</ul>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_consent_screen_settings.webp" alt="Paramètres de l'écran de consentement Google Workspace">
<ol start="3">
<li class="">Définissez les <code>Portées</code> pour votre application. Afin de récupérer correctement les informations d'identité et l'adresse e-mail de l'utilisateur depuis le fournisseur d’identité (IdP), les connecteurs SSO de Logto doivent accorder les portées suivantes depuis le IdP :</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_consent_screen_scopes.webp" alt="Portées de l'écran de consentement Google Workspace">
<ul>
<li class=""><strong>openid</strong> : Cette portée est requise pour l'authentification OIDC. Elle est utilisée pour récupérer le jeton d’identifiant et accéder au point de terminaison userInfo du IdP.</li>
<li class=""><strong>profile</strong> : Cette portée est requise pour accéder aux informations de profil de base de l'utilisateur.</li>
<li class=""><strong>email</strong> : Cette portée est requise pour accéder à l'adresse e-mail de l'utilisateur.</li>
</ul>
<p>Cliquez sur le bouton <code>Enregistrer</code> pour sauvegarder les paramètres de l'écran de consentement.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-create-a-new-oauth-credential">Étape 3 : Créer de nouvelles informations d’identification OAuth<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-3-create-a-new-oauth-credential" class="hash-link" aria-label="Lien direct vers Étape 3 : Créer de nouvelles informations d’identification OAuth" title="Lien direct vers Étape 3 : Créer de nouvelles informations d’identification OAuth" translate="no">​</a></h3>
<p>Accédez à la page <span class="linkWrapper_B4Bt"><a href="https://console.cloud.google.com/apis/credentials" target="_blank" rel="noopener noreferrer" class="link_hf7f">Credentials<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et cliquez sur le bouton <code>Create Credentials</code>. Sélectionnez l'option <code>OAuth client ID</code> dans le menu déroulant pour créer une nouvelle référence OAuth pour votre application.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_create_credentials.webp" alt="Google Workspace create credentials">
<p>Continuez à configurer la référence OAuth en remplissant les informations suivantes :</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_credentials_config.webp" alt="Google Workspace credentials config">
<ol>
<li class="">Sélectionnez <code>Web application</code> comme type d'application.</li>
<li class="">Remplissez le <code>Name</code> de votre application cliente, par exemple <code>Logto SSO Connector</code>. Cela vous aidera à identifier les références à l'avenir.</li>
<li class="">Remplissez les <code>Authorized redirect URIs</code> avec l'URI de rappel Logto. C'est l'URI vers lequel Google redirigera le navigateur de l'utilisateur après une authentification réussie. Après qu'un utilisateur s'est authentifié avec succès auprès du fournisseur d’identité (IdP), l'IdP redirige le navigateur de l'utilisateur vers cet URI désigné avec un code d'autorisation. Logto complétera le processus d'authentification basé sur le code d'autorisation reçu de cet URI.</li>
<li class="">Remplissez les <code>Authorized JavaScript origins</code> avec l'origine de l'URI de rappel Logto. Cela garantit que seule votre application Logto peut envoyer des requêtes au serveur OAuth de Google.</li>
<li class="">Cliquez sur le bouton <code>Create</code> pour créer la référence OAuth.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-set-up-logto-connector-with-the-client-credentials">Étape 4 : Configurer le connecteur Logto avec les identifiants client<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-4-set-up-logto-connector-with-the-client-credentials" class="hash-link" aria-label="Lien direct vers Étape 4 : Configurer le connecteur Logto avec les identifiants client" title="Lien direct vers Étape 4 : Configurer le connecteur Logto avec les identifiants client" translate="no">​</a></h3>
<p>Après avoir créé avec succès l'identifiant OAuth, vous recevrez une fenêtre modale avec l'ID client et le secret client.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/google_workspace_create_credentials.webp" alt="Google Workspace create credentials">
<p>Copiez l'<code>ID client</code> et le <code>secret client</code> et remplissez les champs correspondants dans l'onglet <code>Connection</code> du connecteur SSO de Logto.</p>
<p>Vous avez maintenant configuré avec succès un connecteur SSO Google Workspace sur Logto.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-additional-scopes-optional">Étape 5 : Portées supplémentaires (Optionnel)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-5-additional-scopes-optional" class="hash-link" aria-label="Lien direct vers Étape 5 : Portées supplémentaires (Optionnel)" title="Lien direct vers Étape 5 : Portées supplémentaires (Optionnel)" translate="no">​</a></h3>
<p>Les portées (Scopes) définissent les permissions que votre application demande aux utilisateurs et contrôlent à quelles données votre application peut accéder dans leurs comptes Google Workspace. La demande de permissions Google nécessite une configuration des deux côtés :</p>
<p><strong>Dans la Google Cloud Console :</strong></p>
<ol>
<li class="">Accédez à <strong>APIs &amp; Services &gt; Écran de consentement OAuth &gt; Portées (Scopes)</strong>.</li>
<li class="">Cliquez sur <strong>Ajouter ou supprimer des portées</strong> et sélectionnez uniquement les portées dont votre application a besoin :<!-- -->
<ul>
<li class="">Authentification (obligatoire) :<!-- -->
<ul>
<li class=""><code>https://www.googleapis.com/auth/userinfo.email</code></li>
<li class=""><code>https://www.googleapis.com/auth/userinfo.profile</code></li>
<li class=""><code>openid</code></li>
</ul>
</li>
<li class="">Accès à l’API (optionnel) : Ajoutez toutes les portées supplémentaires nécessaires pour votre application (par exemple, Drive, Calendar, YouTube). Parcourez la <span class="linkWrapper_B4Bt"><a href="https://console.cloud.google.com/apis/library" target="_blank" rel="noopener noreferrer" class="link_hf7f">bibliothèque d’API Google<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour trouver les services disponibles. Si votre application a besoin d’accéder à des API Google au-delà des permissions de base, activez d’abord les API spécifiques que votre application utilisera (par exemple, Google Drive API, Gmail API, Calendar API) dans la bibliothèque d’API Google.</li>
</ul>
</li>
<li class="">Cliquez sur <strong>Mettre à jour</strong> pour confirmer la sélection.</li>
<li class="">Cliquez sur <strong>Enregistrer et continuer</strong> pour appliquer les modifications.</li>
</ol>
<p><strong>Dans le connecteur Logto Google Workspace :</strong></p>
<ol>
<li class="">Logto inclut automatiquement les portées <code>openid</code>, <code>profile</code> et <code>email</code> pour récupérer les informations d'identité de base de l'utilisateur. Vous pouvez laisser le champ <code>Scopes</code> vide si vous n'avez besoin que des informations de base sur l'utilisateur.</li>
<li class="">Ajoutez des portées supplémentaires (séparées par des espaces) dans le champ <code>Scopes</code> pour demander plus de données à Google. Utilisez les URLs complètes des portées, par exemple : <code>https://www.googleapis.com/auth/calendar.readonly</code></li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>Si votre application demande ces portées pour accéder à l’API Google et effectuer des actions, assurez-vous d’activer <strong>Stocker les jetons pour un accès API persistant</strong> dans le connecteur Logto Google. Voir la section suivante pour plus de détails.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-6-store-tokens-to-access-google-apis-optional">Étape 6 : Stocker les jetons pour accéder aux API Google (Optionnel)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-6-store-tokens-to-access-google-apis-optional" class="hash-link" aria-label="Lien direct vers Étape 6 : Stocker les jetons pour accéder aux API Google (Optionnel)" title="Lien direct vers Étape 6 : Stocker les jetons pour accéder aux API Google (Optionnel)" translate="no">​</a></h3>
<p>Si vous souhaitez accéder aux <span class="linkWrapper_B4Bt"><a href="https://console.cloud.google.com/apis/library" target="_blank" rel="noopener noreferrer" class="link_hf7f">API Google<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et effectuer des actions avec l'autorisation de l'utilisateur, Logto doit obtenir des portées API spécifiques et stocker les jetons.</p>
<ol>
<li class="">Ajoutez les portées requises dans la configuration de l'écran de consentement OAuth de votre Google Cloud Console et dans le connecteur Google de Logto.</li>
<li class="">Activez <strong>Stocker les jetons pour un accès API persistant</strong> dans le connecteur Google de Logto. Logto stockera de manière sécurisée les jetons d’accès Google et les jetons de rafraîchissement dans le Secret Vault.</li>
<li class="">Pour garantir que les jetons de rafraîchissement sont renvoyés, configurez votre connecteur Google Logto pour activer <strong>l’accès hors ligne</strong>.</li>
</ol>
<div class="theme-admonition theme-admonition-warning admonition_Gfwi alert alert--warning"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">attention<!-- -->:</span><p>Vous n'avez pas besoin d’ajouter <code>offline_access</code> dans le champ <code>Scope</code> de Logto — le faire peut entraîner une erreur. Google utilise automatiquement <code>access_type=offline</code> lorsque l’accès hors ligne est activé.</p></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-7-set-email-domains-and-enable-the-sso-connector">Étape 7 : Définir les domaines e-mail et activer le connecteur SSO<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-7-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Étape 7 : Définir les domaines e-mail et activer le connecteur SSO" title="Lien direct vers Étape 7 : Définir les domaines e-mail et activer le connecteur SSO" translate="no">​</a></h3>
<p>Fournissez les <code>domaines e-mail</code> de votre organisation dans l’onglet <code>Expérience SSO</code> du connecteur Logto. Cela activera le connecteur SSO comme méthode d’authentification pour ces utilisateurs.</p>
<p>Les utilisateurs ayant des adresses e-mail dans les domaines spécifiés seront redirigés pour utiliser votre connecteur SSO comme seule méthode d’authentification.</p>
<p>Pour plus d’informations sur le connecteur Google Workspace SSO, veuillez consulter <span class="linkWrapper_B4Bt"><a href="https://developers.google.com/identity/openid-connect/openid-connect" target="_blank" rel="noopener noreferrer" class="link_hf7f">Google OpenID Connector<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Vérifiez que vous avez rempli les valeurs nécessaires dans la zone de configuration du connecteur Logto. Cliquez sur "Enregistrer et terminer" (ou "Enregistrer les modifications") et le connecteur <!-- -->Google Workspace enterprise SSO<!-- --> devrait être disponible maintenant.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Google Workspace enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Google Workspace enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Google Workspace enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>Vous n'avez pas besoin de configurer individuellement les connecteurs d'entreprise, Logto simplifie l'intégration du SSO dans vos applications en un seul clic.</p>
<ol>
<li class="">Accédez à : <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Expérience de connexion &gt; Inscription et connexion<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Activez le bouton "SSO d’entreprise".</li>
<li class="">Enregistrez les modifications.</li>
</ol>
<p>Une fois activé, un bouton "Authentification unique (SSO)" apparaîtra sur votre page de connexion. Les utilisateurs d'entreprise avec des domaines de messagerie compatibles SSO peuvent accéder à vos services en utilisant leurs fournisseurs d’identité d’entreprise (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Détection automatique de la connexion SSO via le domaine de messagerie">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Naviguer vers la connexion SSO en cliquant manuellement sur le bouton de lien">
<p>Pour en savoir plus sur l'expérience utilisateur SSO, y compris le SSO initié par le SP et le SSO initié par l'IdP, consultez les flux utilisateur : <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>SSO d’entreprise<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Retournez à votre application <!-- -->Plugin WordPress<!-- -->. Vous devriez maintenant pouvoir vous connecter avec <!-- -->Google Workspace enterprise SSO<!-- -->. Profitez-en !</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-google-workspace-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">Flux des utilisateurs finaux<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Logto fournit des flux d'authentification prêts à l'emploi, y compris l'authentification multi-facteurs (MFA) et le SSO d’entreprise, ainsi que des API puissantes pour une mise en œuvre flexible des paramètres de compte, de la vérification de sécurité et de l'expérience multi-locataire.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Autorisation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : L'autorisation définit les actions qu'un utilisateur peut effectuer ou les ressources auxquelles il peut accéder après avoir été authentifié. Découvrez comment protéger votre API pour les applications natives et monopages et mettre en œuvre le contrôle d’accès basé sur les rôles (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organisations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Particulièrement efficace dans les applications SaaS multi-locataires et B2B, la fonctionnalité d'organisation permet la création de locataires, la gestion des membres, le RBAC au niveau de l'organisation et l'approvisionnement juste-à-temps.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Série IAM client<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Nos articles de blog en série sur la gestion des identités et des accès des clients (ou consommateurs), des sujets de base aux sujets avancés et au-delà.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="google-workspace-enterprise-sso" term="google-workspace-enterprise-sso"/>
        <category label="wordpress-plugin" term="wordpress-plugin"/>
        <category label="php" term="php"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build Microsoft Entra ID SAML enterprise SSO with Plugin WordPress]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto"/>
        <updated>2026-04-17T08:48:21.478Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">Pour nos nouveaux amis<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> est une alternative à Auth0 conçue pour les applications modernes et les produits SaaS. Il
offre des services à la fois <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
pour vous aider à lancer rapidement votre système de gestion des identités et des accès (IAM). Profitez de l'authentification,
de l'autorisation et de la gestion multi-locataires <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">tout-en-un<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>Nous recommandons de commencer avec un locataire de développement gratuit sur <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Cela vous permet d'explorer facilement toutes les fonctionnalités.</p></div></div></div>
<p>Dans cet article, nous allons parcourir les étapes pour construire rapidement l'expérience de connexion <!-- -->Microsoft Entra ID SAML enterprise SSO<!-- --> (authentification utilisateur) avec <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a> et <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prérequis</strong></p>
<ul>
<li class="">Une instance Logto en cours d'exécution. Consultez la <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/fr/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">page d'introduction<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour commencer.</li>
<li class="">Connaissance de base de <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a>.</li>
<li class="">Un compte <!-- -->Microsoft Entra ID SAML enterprise SSO<!-- --> utilisable.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto est basé sur l'authentification OpenID Connect (OIDC) et l'autorisation OAuth 2.0. Il prend en charge la gestion des identités fédérées à travers plusieurs applications, communément appelée authentification unique (SSO).</p>
<p>Pour créer votre application <!-- -->Traditional web<!-- -->, suivez simplement ces étapes :</p>
<ol>
<li class="">Ouvrez la <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Dans la section "Get started", cliquez sur le lien "View all" pour ouvrir la liste des frameworks d'application. Alternativement, vous pouvez naviguer vers <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, et cliquer sur le bouton "Create application".<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">Dans la fenêtre modale qui s'ouvre, cliquez sur la section "<!-- -->Traditional web<!-- -->" ou filtrez tous les frameworks "<!-- -->Traditional web<!-- -->" disponibles en utilisant les cases à cocher de filtre rapide à gauche. Cliquez sur la carte du framework "<!-- -->WordPress<!-- -->" pour commencer à créer votre application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Entrez le nom de l'application, par exemple, "Bookstore", et cliquez sur "Create application".</li>
</ol>
<p>🎉 Ta-da ! Vous venez de créer votre première application dans Logto. Vous verrez une page de félicitations qui inclut un guide d'intégration détaillé. Suivez le guide pour voir quelle sera l'expérience dans votre application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-framework-sdk">Integrate WordPress SDK<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#integrate-framework-sdk" class="hash-link" aria-label="Lien direct vers Integrate WordPress SDK" title="Lien direct vers Integrate WordPress SDK" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="install-the-plugin">Installer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#install-the-plugin" class="hash-link" aria-label="Lien direct vers Installer le plugin" title="Lien direct vers Installer le plugin" translate="no">​</a></h3>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">Depuis le panneau d'administration de WordPress</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">Depuis un téléchargement</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><ol>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong>.</li>
<li class="">Recherchez "Logto", ou entrez <span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">https://wordpress.org/plugins/logto/<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> dans la boîte de recherche.</li>
<li class="">Cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div><div role="tabpanel" class="tabItem_pED3" hidden=""><ol>
<li class="">Téléchargez le plugin WordPress Logto depuis l'un des liens suivants :<!-- -->
<ul>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/wordpress/releases" target="_blank" rel="noopener noreferrer" class="link_hf7f">Dernière version<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier dont le nom est au format <code>logto-plugin-&lt;version&gt;.zip</code>.</li>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Répertoire des plugins WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier en cliquant sur le bouton <strong>Télécharger</strong>.</li>
</ul>
</li>
<li class="">Téléchargez le fichier ZIP du plugin.</li>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong> dans votre panneau d'administration WordPress.</li>
<li class="">Cliquez sur <strong>Téléverser une extension</strong>.</li>
<li class="">Sélectionnez le fichier ZIP téléchargé et cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-the-plugin">Configurer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-the-plugin" class="hash-link" aria-label="Lien direct vers Configurer le plugin" title="Lien direct vers Configurer le plugin" translate="no">​</a></h3>
<p>Vous devriez maintenant voir le menu Logto dans la barre latérale de votre panneau d'administration WordPress. Cliquez sur <strong>Logto</strong> &gt; <strong>Paramètres</strong> pour configurer le plugin.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Vous devez avoir une application <strong>web traditionnelle</strong> créée dans Logto Console avant de configurer le plugin. Si vous n'en avez pas créé une, veuillez vous référer à <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/integrate-logto/integrate-logto-into-your-application" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Intégrer Logto dans votre application<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour plus d'informations.</p></div></div></div>
<p>La configuration minimale pour commencer avec le plugin est :</p>
<ul>
<li class="">Point de terminaison Logto : Le point de terminaison de votre locataire Logto.</li>
<li class="">ID de l'application : L'ID de votre application Logto.</li>
<li class="">Secret de l'application : Un des secrets valides de votre application Logto.</li>
</ul>
<p>Toutes les valeurs peuvent être trouvées sur la page des détails de l'application dans Logto Console.</p>
<p>Après avoir rempli les valeurs, cliquez sur <strong>Enregistrer les modifications</strong> (faites défiler vers le bas de la page si vous ne trouvez pas le bouton).</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configurer l'URI de redirection<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configurer l'URI de redirection" title="Lien direct vers Configurer l'URI de redirection" translate="no">​</a></h3>
<p>L'URI de redirection est l'URL vers laquelle Logto redirigera les utilisateurs après leur authentification ; et l'URI de redirection après déconnexion est l'URL vers laquelle Logto redirigera les utilisateurs après leur déconnexion.</p>
<p>Voici un diagramme de séquence non normatif pour illustrer le flux de connexion :</p>
<!-- -->
<p>Voici à quoi ressemble le flux de déconnexion dans un diagramme de séquence non normatif :</p>
<!-- -->
<p>Pour en savoir plus sur la nécessité de la redirection, voir <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Expérience de connexion expliquée<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p>Dans notre cas, nous devons configurer les deux URIs de redirection dans votre Logto Console. Pour trouver l'URI de redirection, allez à la page <strong>Logto</strong> &gt; <strong>Paramètres</strong> dans votre panneau d'administration WordPress. Vous verrez les champs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong>.</p>
<ol>
<li class="">Copiez les valeurs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong> et collez-les dans les champs <strong>URIs de redirection</strong> et <strong>URIs de redirection après déconnexion</strong> dans votre Logto Console.</li>
<li class="">Cliquez sur <strong>Enregistrer les modifications</strong> dans Logto Console.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-website">Point de contrôle : Testez votre site WordPress<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#checkpoint-test-your-website" class="hash-link" aria-label="Lien direct vers Point de contrôle : Testez votre site WordPress" title="Lien direct vers Point de contrôle : Testez votre site WordPress" translate="no">​</a></h3>
<p>Vous pouvez maintenant tester votre intégration Logto sur votre site WordPress :</p>
<ol>
<li class="">Ouvrez une fenêtre de navigation privée si nécessaire.</li>
<li class="">Visitez votre site WordPress et cliquez sur le lien <strong>Connexion</strong> si applicable ; ou visitez directement la page de connexion (par exemple, <code>https://example.com/wp-login.php</code>).</li>
<li class="">La page devrait vous rediriger vers la page de connexion Logto.</li>
<li class="">Complétez le processus de connexion ou d'inscription.</li>
<li class="">Après une authentification réussie, vous devriez être redirigé vers votre site WordPress et connecté automatiquement.</li>
<li class="">Cliquez sur le lien <strong>Déconnexion</strong> pour vous déconnecter de votre site WordPress.</li>
<li class="">Vous devriez être redirigé vers la page de déconnexion Logto, puis de retour sur votre site WordPress.</li>
<li class="">Vous devriez être déconnecté de votre site WordPress.</li>
</ol>
<p>Pour en savoir plus sur les paramètres du plugin WordPress, consultez <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/quick-starts/wordpress-plugin" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>le démarrage rapide de WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add Microsoft Entra ID SAML enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add Microsoft Entra ID SAML enterprise SSO connector" title="Lien direct vers Add Microsoft Entra ID SAML enterprise SSO connector" translate="no">​</a></h2>
<p>Pour simplifier la gestion des accès et obtenir des garanties de niveau entreprise pour vos grands clients, connectez-vous avec <!-- -->WordPress<!-- --> en tant que fournisseur d'identité fédéré. Le connecteur SSO d’entreprise Logto vous aide à établir cette connexion en quelques minutes en permettant l'entrée de plusieurs paramètres.</p>
<p>Pour ajouter un connecteur SSO d’entreprise, suivez simplement ces étapes :</p>
<ol>
<li class="">Accédez à <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="Page SSO">
<ol start="2">
<li class="">Cliquez sur le bouton "Ajouter un connecteur d’entreprise" et choisissez votre type de fournisseur SSO. Choisissez parmi les connecteurs préconstruits pour Microsoft Entra ID (Azure AD), Google Workspace et Okta, ou créez une connexion SSO personnalisée en utilisant le protocole standard OpenID Connect (OIDC) ou SAML.</li>
<li class="">Fournissez un nom unique (par exemple, Connexion SSO pour Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Sélectionnez votre fournisseur SSO">
<ol start="4">
<li class="">Configurez la connexion avec votre IdP dans l'onglet "Connexion". Consultez les guides ci-dessus pour chaque type de connecteur.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="Connexion SSO">
<ol start="5">
<li class="">Personnalisez l'expérience SSO et le <strong>domaine de messagerie</strong> de l’entreprise dans l'onglet "Expérience". Les utilisateurs se connectant avec le domaine de messagerie activé pour le SSO seront redirigés vers l'authentification SSO.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="Expérience SSO">
<ol start="6">
<li class="">Enregistrez les modifications.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up Application SSO Azure AD<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up Application SSO Azure AD" title="Lien direct vers Set up Application SSO Azure AD" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-azure-ad-sso-application">Étape 1 : Créer une application Azure AD SSO<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-1-create-an-azure-ad-sso-application" class="hash-link" aria-label="Lien direct vers Étape 1 : Créer une application Azure AD SSO" title="Lien direct vers Étape 1 : Créer une application Azure AD SSO" translate="no">​</a></h3>
<p>Initiez l'intégration SSO Azure AD en créant une application SSO du côté Azure AD.</p>
<ol>
<li class="">Allez sur le <span class="linkWrapper_B4Bt"><a href="https://portal.azure.com/" target="_blank" rel="noopener noreferrer" class="link_hf7f">portail Azure<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et connectez-vous en tant qu'administrateur.</li>
<li class="">Sélectionnez le service <code>Microsoft Entra ID</code>.</li>
<li class="">Naviguez vers les <code>Applications d'entreprise</code> à l'aide du menu latéral. Cliquez sur <code>Nouvelle application</code>, et sélectionnez <code>Créer votre propre application</code>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_create_application.webp" alt="Azure AD create application">
<ol>
<li class="">Entrez le nom de l'application et sélectionnez <code>Intégrer toute autre application que vous ne trouvez pas dans la galerie (Non-galerie)</code>.</li>
<li class="">Sélectionnez <code>Configurer l’authentification unique</code> &gt; <code>SAML</code>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_set_up_single_sign_on.webp" alt="Azure AD set up SSO">
<ol>
<li class="">Suivez les instructions, comme première étape, vous devrez remplir la configuration SAML de base en utilisant les informations suivantes fournies par Logto.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_sp_config.webp" alt="Azure AD SP config">
<ul>
<li class=""><strong>URI d’audience (ID d’entité SP)</strong> : Il représente un identifiant unique global pour votre service Logto, fonctionnant comme l'EntityId pour SP lors des requêtes d’authentification vers le fournisseur d’identité (IdP). Cet identifiant est essentiel pour l'échange sécurisé des assertions SAML et d'autres données liées à l'authentification entre l'IdP et Logto.</li>
<li class=""><strong>URL ACS</strong> : L'URL du service consommateur d'assertions (ACS) est l'emplacement où l'assertion SAML est envoyée avec une requête POST. Cette URL est utilisée par l'IdP pour envoyer l'assertion SAML à Logto. Elle agit comme une URL de rappel où Logto s'attend à recevoir et à consommer la réponse SAML contenant les informations d'identité de l'utilisateur.</li>
</ul>
<p>Cliquez sur <code>Enregistrer</code> pour continuer.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-saml-sso-at-logto">Étape 2 : Configurer SAML SSO sur Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-2-configure-saml-sso-at-logto" class="hash-link" aria-label="Lien direct vers Étape 2 : Configurer SAML SSO sur Logto" title="Lien direct vers Étape 2 : Configurer SAML SSO sur Logto" translate="no">​</a></h3>
<p>Pour que l'intégration SAML SSO fonctionne, vous devrez fournir les métadonnées de l'IdP à Logto. Revenons du côté de Logto et accédons à l'onglet <code>Connection</code> de votre connecteur Azure AD SSO.</p>
<p>Logto propose trois manières différentes de configurer les métadonnées de l'IdP. La manière la plus simple est de fournir l'<code>URL des métadonnées</code> de l'application Azure AD SSO.</p>
<p>Copiez l'<code>URL des métadonnées de fédération de l'application</code> à partir de la <code>section Certificats SAML</code> de votre application Azure AD SSO et collez-la dans le champ <code>Metadata URL</code> dans Logto.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_metadata_url.webp" alt="Azure AD Metadata URL">
<p>Logto récupérera les métadonnées à partir de l'URL et configurera automatiquement l'intégration SAML SSO.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-configure-user-attributes-mapping">Étape 3 : Configurer le mappage des attributs utilisateur<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-3-configure-user-attributes-mapping" class="hash-link" aria-label="Lien direct vers Étape 3 : Configurer le mappage des attributs utilisateur" title="Lien direct vers Étape 3 : Configurer le mappage des attributs utilisateur" translate="no">​</a></h3>
<p>Logto offre un moyen flexible de mapper les attributs utilisateur renvoyés par le fournisseur d’identité (IdP) aux attributs utilisateur dans Logto. Logto synchronisera par défaut les attributs utilisateur suivants depuis l'IdP :</p>
<ul>
<li class="">id : L'identifiant unique de l'utilisateur. Logto lira la revendication <code>nameID</code> de la réponse SAML comme identifiant d'identité SSO de l'utilisateur.</li>
<li class="">email : L'adresse e-mail de l'utilisateur. Logto lira la revendication <code>email</code> de la réponse SAML comme e-mail principal de l'utilisateur par défaut.</li>
<li class="">name : Le nom de l'utilisateur.</li>
</ul>
<p>Vous pouvez gérer la logique de mappage des attributs utilisateur soit du côté Azure AD, soit du côté Logto.</p>
<ol>
<li class="">
<p>Mapper les attributs utilisateur AzureAD aux attributs utilisateur Logto du côté Logto.</p>
<p>Visitez la section <code>Attributes &amp; Claims</code> de votre application SSO Azure AD.</p>
<p>Copiez les noms d'attributs suivants (avec le préfixe de l'espace de noms) et collez-les dans les champs correspondants dans Logto.</p>
<ul>
<li class=""><code>http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress</code></li>
<li class=""><code>http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name</code> (Recommandation : mettez à jour cette carte de valeur d'attribut à <code>user.displayname</code> pour une meilleure expérience utilisateur)</li>
</ul>
</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_default_attribute_mapping.webp" alt="Mappage d'attributs par défaut Azure AD">
<ol>
<li class="">
<p>Mapper les attributs utilisateur AzureAD aux attributs utilisateur Logto du côté AzureAD.</p>
<p>Visitez la section <code>Attributes &amp; Claims</code> de votre application SSO Azure AD.</p>
<p>Cliquez sur <code>Edit</code>, et mettez à jour les champs <code>Additional claims</code> en fonction des paramètres des attributs utilisateur Logto :</p>
<ul>
<li class="">mettez à jour la valeur du nom de revendication en fonction des paramètres des attributs utilisateur Logto.</li>
<li class="">supprimez le préfixe de l'espace de noms.</li>
<li class="">cliquez sur <code>Save</code> pour continuer.</li>
</ul>
<p>Vous devriez obtenir les paramètres suivants :</p>
</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_logto_attribute_mapping.webp" alt="Mappage d'attributs Azure AD_Logto">
<p>Vous pouvez également spécifier des attributs utilisateur supplémentaires du côté Azure AD. Logto conservera un enregistrement des attributs utilisateur originaux renvoyés par l'IdP sous le champ <code>sso_identity</code> de l'utilisateur.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-assign-users-to-the-azure-ad-sso-application">Étape 4 : Assigner des utilisateurs à l'application Azure AD SSO<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-4-assign-users-to-the-azure-ad-sso-application" class="hash-link" aria-label="Lien direct vers Étape 4 : Assigner des utilisateurs à l'application Azure AD SSO" title="Lien direct vers Étape 4 : Assigner des utilisateurs à l'application Azure AD SSO" translate="no">​</a></h3>
<p>Visitez la section <code>Users and groups</code> de votre application Azure AD SSO. Cliquez sur <code>Add user/group</code> pour attribuer des utilisateurs à l'application Azure AD SSO. Seuls les utilisateurs attribués à votre application Azure AD SSO pourront s'authentifier via le connecteur Azure AD SSO.</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/assets/azure_ad_assign_users.webp" alt="Azure AD assign users">
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-set-email-domains-and-enable-the-sso-connector">Étape 5 : Définir les domaines de messagerie et activer le connecteur SSO<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-5-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Étape 5 : Définir les domaines de messagerie et activer le connecteur SSO" title="Lien direct vers Étape 5 : Définir les domaines de messagerie et activer le connecteur SSO" translate="no">​</a></h3>
<p>Fournissez les <code>domaines de messagerie</code> de votre organisation dans l'onglet <code>SSO experience</code> du connecteur de Logto. Cela activera le connecteur SSO comme méthode d'authentification pour ces utilisateurs.</p>
<p>Les utilisateurs ayant des adresses e-mail dans les domaines spécifiés seront redirigés pour utiliser le connecteur SAML SSO comme seule méthode d'authentification.</p>
<p>Veuillez consulter la <span class="linkWrapper_B4Bt"><a href="https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/add-application-portal-setup-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">documentation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> officielle d'Azure AD pour plus de détails sur l'intégration SSO d'Azure AD.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Vérifiez que vous avez rempli les valeurs nécessaires dans la zone de configuration du connecteur Logto. Cliquez sur "Enregistrer et terminer" (ou "Enregistrer les modifications") et le connecteur <!-- -->Microsoft Entra ID SAML enterprise SSO<!-- --> devrait être disponible maintenant.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable Microsoft Entra ID SAML enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable Microsoft Entra ID SAML enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable Microsoft Entra ID SAML enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>Vous n'avez pas besoin de configurer individuellement les connecteurs d'entreprise, Logto simplifie l'intégration du SSO dans vos applications en un seul clic.</p>
<ol>
<li class="">Accédez à : <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Expérience de connexion &gt; Inscription et connexion<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Activez le bouton "SSO d’entreprise".</li>
<li class="">Enregistrez les modifications.</li>
</ol>
<p>Une fois activé, un bouton "Authentification unique (SSO)" apparaîtra sur votre page de connexion. Les utilisateurs d'entreprise avec des domaines de messagerie compatibles SSO peuvent accéder à vos services en utilisant leurs fournisseurs d’identité d’entreprise (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Détection automatique de la connexion SSO via le domaine de messagerie">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Naviguer vers la connexion SSO en cliquant manuellement sur le bouton de lien">
<p>Pour en savoir plus sur l'expérience utilisateur SSO, y compris le SSO initié par le SP et le SSO initié par l'IdP, consultez les flux utilisateur : <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>SSO d’entreprise<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Retournez à votre application <!-- -->Plugin WordPress<!-- -->. Vous devriez maintenant pouvoir vous connecter avec <!-- -->Microsoft Entra ID SAML enterprise SSO<!-- -->. Profitez-en !</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-microsoft-entra-id-saml-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">Flux des utilisateurs finaux<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Logto fournit des flux d'authentification prêts à l'emploi, y compris l'authentification multi-facteurs (MFA) et le SSO d’entreprise, ainsi que des API puissantes pour une mise en œuvre flexible des paramètres de compte, de la vérification de sécurité et de l'expérience multi-locataire.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Autorisation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : L'autorisation définit les actions qu'un utilisateur peut effectuer ou les ressources auxquelles il peut accéder après avoir été authentifié. Découvrez comment protéger votre API pour les applications natives et monopages et mettre en œuvre le contrôle d’accès basé sur les rôles (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organisations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Particulièrement efficace dans les applications SaaS multi-locataires et B2B, la fonctionnalité d'organisation permet la création de locataires, la gestion des membres, le RBAC au niveau de l'organisation et l'approvisionnement juste-à-temps.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Série IAM client<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Nos articles de blog en série sur la gestion des identités et des accès des clients (ou consommateurs), des sujets de base aux sujets avancés et au-delà.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="microsoft-entra-id-saml-enterprise-sso" term="microsoft-entra-id-saml-enterprise-sso"/>
        <category label="wordpress-plugin" term="wordpress-plugin"/>
        <category label="php" term="php"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to build OIDC enterprise SSO with Plugin WordPress]]></title>
        <id>https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto</id>
        <link href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto"/>
        <updated>2026-04-17T08:48:21.478Z</updated>
        <summary type="html"><![CDATA[{/*]]></summary>
        <content type="html"><![CDATA[
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<div class="theme-admonition theme-admonition-info admonition_Gfwi alert alert--info"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">Pour nos nouveaux amis<!-- -->:</span><br><br><p><span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> est une alternative à Auth0 conçue pour les applications modernes et les produits SaaS. Il
offre des services à la fois <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> et <span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/logto" target="_blank" rel="noopener noreferrer" class="link_hf7f">Open-source<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>
pour vous aider à lancer rapidement votre système de gestion des identités et des accès (IAM). Profitez de l'authentification,
de l'autorisation et de la gestion multi-locataires <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">tout-en-un<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.<!-- --> </p><p>Nous recommandons de commencer avec un locataire de développement gratuit sur <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Cloud<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Cela vous permet d'explorer facilement toutes les fonctionnalités.</p></div></div></div>
<p>Dans cet article, nous allons parcourir les étapes pour construire rapidement l'expérience de connexion <!-- -->OIDC enterprise SSO<!-- --> (authentification utilisateur) avec <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a> et <span class="linkWrapper_B4Bt"><a href="https://logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p><strong>Prérequis</strong></p>
<ul>
<li class="">Une instance Logto en cours d'exécution. Consultez la <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/fr/introduction" target="_blank" rel="noopener noreferrer" class="link_hf7f">page d'introduction<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour commencer.</li>
<li class="">Connaissance de base de <a href="https://wordpress.org/" target="_blank" rel="noopener">Plugin WordPress</a>.</li>
<li class="">Un compte <!-- -->OIDC enterprise SSO<!-- --> utilisable.</li>
</ul>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="create-an-application-in-logto">Create an application in Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#create-an-application-in-logto" class="hash-link" aria-label="Lien direct vers Create an application in Logto" title="Lien direct vers Create an application in Logto" translate="no">​</a></h2>
<p>Logto est basé sur l'authentification OpenID Connect (OIDC) et l'autorisation OAuth 2.0. Il prend en charge la gestion des identités fédérées à travers plusieurs applications, communément appelée authentification unique (SSO).</p>
<p>Pour créer votre application <!-- -->Traditional web<!-- -->, suivez simplement ces étapes :</p>
<ol>
<li class="">Ouvrez la <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>. Dans la section "Get started", cliquez sur le lien "View all" pour ouvrir la liste des frameworks d'application. Alternativement, vous pouvez naviguer vers <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/applications" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto Console &gt; Applications<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>, et cliquer sur le bouton "Create application".<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/get-started.png" alt="Get started">
</li>
<li class="">Dans la fenêtre modale qui s'ouvre, cliquez sur la section "<!-- -->Traditional web<!-- -->" ou filtrez tous les frameworks "<!-- -->Traditional web<!-- -->" disponibles en utilisant les cases à cocher de filtre rapide à gauche. Cliquez sur la carte du framework "<!-- -->WordPress<!-- -->" pour commencer à créer votre application.<!-- -->
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/framework-list.png" alt="Frameworks">
</li>
<li class="">Entrez le nom de l'application, par exemple, "Bookstore", et cliquez sur "Create application".</li>
</ol>
<p>🎉 Ta-da ! Vous venez de créer votre première application dans Logto. Vous verrez une page de félicitations qui inclut un guide d'intégration détaillé. Suivez le guide pour voir quelle sera l'expérience dans votre application.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="integrate-framework-sdk">Integrate WordPress SDK<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#integrate-framework-sdk" class="hash-link" aria-label="Lien direct vers Integrate WordPress SDK" title="Lien direct vers Integrate WordPress SDK" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="install-the-plugin">Installer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#install-the-plugin" class="hash-link" aria-label="Lien direct vers Installer le plugin" title="Lien direct vers Installer le plugin" translate="no">​</a></h3>
<div class="theme-tabs-container tabs-container tabList_eWY1"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_aDBZ tabs__item--active">Depuis le panneau d'administration de WordPress</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_aDBZ">Depuis un téléchargement</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_pED3"><ol>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong>.</li>
<li class="">Recherchez "Logto", ou entrez <span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">https://wordpress.org/plugins/logto/<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> dans la boîte de recherche.</li>
<li class="">Cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div><div role="tabpanel" class="tabItem_pED3" hidden=""><ol>
<li class="">Téléchargez le plugin WordPress Logto depuis l'un des liens suivants :<!-- -->
<ul>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://github.com/logto-io/wordpress/releases" target="_blank" rel="noopener noreferrer" class="link_hf7f">Dernière version<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier dont le nom est au format <code>logto-plugin-&lt;version&gt;.zip</code>.</li>
<li class=""><span class="linkWrapper_B4Bt"><a href="https://wordpress.org/plugins/logto/" target="_blank" rel="noopener noreferrer" class="link_hf7f">Répertoire des plugins WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Téléchargez le fichier en cliquant sur le bouton <strong>Télécharger</strong>.</li>
</ul>
</li>
<li class="">Téléchargez le fichier ZIP du plugin.</li>
<li class="">Allez dans <strong>Extensions</strong> &gt; <strong>Ajouter</strong> dans votre panneau d'administration WordPress.</li>
<li class="">Cliquez sur <strong>Téléverser une extension</strong>.</li>
<li class="">Sélectionnez le fichier ZIP téléchargé et cliquez sur <strong>Installer maintenant</strong>.</li>
<li class="">Cliquez sur <strong>Activer</strong>.</li>
</ol></div></div></div>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-the-plugin">Configurer le plugin<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-the-plugin" class="hash-link" aria-label="Lien direct vers Configurer le plugin" title="Lien direct vers Configurer le plugin" translate="no">​</a></h3>
<p>Vous devriez maintenant voir le menu Logto dans la barre latérale de votre panneau d'administration WordPress. Cliquez sur <strong>Logto</strong> &gt; <strong>Paramètres</strong> pour configurer le plugin.</p>
<div class="theme-admonition theme-admonition-note admonition_Gfwi alert alert--secondary"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">remarque<!-- -->:</span><p>Vous devez avoir une application <strong>web traditionnelle</strong> créée dans Logto Console avant de configurer le plugin. Si vous n'en avez pas créé une, veuillez vous référer à <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/integrate-logto/integrate-logto-into-your-application" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Intégrer Logto dans votre application<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> pour plus d'informations.</p></div></div></div>
<p>La configuration minimale pour commencer avec le plugin est :</p>
<ul>
<li class="">Point de terminaison Logto : Le point de terminaison de votre locataire Logto.</li>
<li class="">ID de l'application : L'ID de votre application Logto.</li>
<li class="">Secret de l'application : Un des secrets valides de votre application Logto.</li>
</ul>
<p>Toutes les valeurs peuvent être trouvées sur la page des détails de l'application dans Logto Console.</p>
<p>Après avoir rempli les valeurs, cliquez sur <strong>Enregistrer les modifications</strong> (faites défiler vers le bas de la page si vous ne trouvez pas le bouton).</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="configure-redirect-uri">Configurer l'URI de redirection<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#configure-redirect-uri" class="hash-link" aria-label="Lien direct vers Configurer l'URI de redirection" title="Lien direct vers Configurer l'URI de redirection" translate="no">​</a></h3>
<p>L'URI de redirection est l'URL vers laquelle Logto redirigera les utilisateurs après leur authentification ; et l'URI de redirection après déconnexion est l'URL vers laquelle Logto redirigera les utilisateurs après leur déconnexion.</p>
<p>Voici un diagramme de séquence non normatif pour illustrer le flux de connexion :</p>
<!-- -->
<p>Voici à quoi ressemble le flux de déconnexion dans un diagramme de séquence non normatif :</p>
<!-- -->
<p>Pour en savoir plus sur la nécessité de la redirection, voir <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/concepts/sign-in-experience" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>Expérience de connexion expliquée<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<p>Dans notre cas, nous devons configurer les deux URIs de redirection dans votre Logto Console. Pour trouver l'URI de redirection, allez à la page <strong>Logto</strong> &gt; <strong>Paramètres</strong> dans votre panneau d'administration WordPress. Vous verrez les champs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong>.</p>
<ol>
<li class="">Copiez les valeurs <strong>URI de redirection</strong> et <strong>URI de redirection après déconnexion</strong> et collez-les dans les champs <strong>URIs de redirection</strong> et <strong>URIs de redirection après déconnexion</strong> dans votre Logto Console.</li>
<li class="">Cliquez sur <strong>Enregistrer les modifications</strong> dans Logto Console.</li>
</ol>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="checkpoint-test-your-website">Point de contrôle : Testez votre site WordPress<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#checkpoint-test-your-website" class="hash-link" aria-label="Lien direct vers Point de contrôle : Testez votre site WordPress" title="Lien direct vers Point de contrôle : Testez votre site WordPress" translate="no">​</a></h3>
<p>Vous pouvez maintenant tester votre intégration Logto sur votre site WordPress :</p>
<ol>
<li class="">Ouvrez une fenêtre de navigation privée si nécessaire.</li>
<li class="">Visitez votre site WordPress et cliquez sur le lien <strong>Connexion</strong> si applicable ; ou visitez directement la page de connexion (par exemple, <code>https://example.com/wp-login.php</code>).</li>
<li class="">La page devrait vous rediriger vers la page de connexion Logto.</li>
<li class="">Complétez le processus de connexion ou d'inscription.</li>
<li class="">Après une authentification réussie, vous devriez être redirigé vers votre site WordPress et connecté automatiquement.</li>
<li class="">Cliquez sur le lien <strong>Déconnexion</strong> pour vous déconnecter de votre site WordPress.</li>
<li class="">Vous devriez être redirigé vers la page de déconnexion Logto, puis de retour sur votre site WordPress.</li>
<li class="">Vous devriez être déconnecté de votre site WordPress.</li>
</ol>
<p>Pour en savoir plus sur les paramètres du plugin WordPress, consultez <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/quick-starts/wordpress-plugin" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>le démarrage rapide de WordPress<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="add-connector-connector">Add OIDC enterprise SSO connector<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#add-connector-connector" class="hash-link" aria-label="Lien direct vers Add OIDC enterprise SSO connector" title="Lien direct vers Add OIDC enterprise SSO connector" translate="no">​</a></h2>
<p>Pour simplifier la gestion des accès et obtenir des garanties de niveau entreprise pour vos grands clients, connectez-vous avec <!-- -->WordPress<!-- --> en tant que fournisseur d'identité fédéré. Le connecteur SSO d’entreprise Logto vous aide à établir cette connexion en quelques minutes en permettant l'entrée de plusieurs paramètres.</p>
<p>Pour ajouter un connecteur SSO d’entreprise, suivez simplement ces étapes :</p>
<ol>
<li class="">Accédez à <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Logto console &gt; Enterprise SSO<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-page.png" alt="Page SSO">
<ol start="2">
<li class="">Cliquez sur le bouton "Ajouter un connecteur d’entreprise" et choisissez votre type de fournisseur SSO. Choisissez parmi les connecteurs préconstruits pour Microsoft Entra ID (Azure AD), Google Workspace et Okta, ou créez une connexion SSO personnalisée en utilisant le protocole standard OpenID Connect (OIDC) ou SAML.</li>
<li class="">Fournissez un nom unique (par exemple, Connexion SSO pour Acme Company).</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/select-your-sso-provider.png" alt="Sélectionnez votre fournisseur SSO">
<ol start="4">
<li class="">Configurez la connexion avec votre IdP dans l'onglet "Connexion". Consultez les guides ci-dessus pour chaque type de connecteur.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-connection-settings.png" alt="Connexion SSO">
<ol start="5">
<li class="">Personnalisez l'expérience SSO et le <strong>domaine de messagerie</strong> de l’entreprise dans l'onglet "Expérience". Les utilisateurs se connectant avec le domaine de messagerie activé pour le SSO seront redirigés vers l'authentification SSO.</li>
</ol>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-experience-settings.png" alt="Expérience SSO">
<ol start="6">
<li class="">Enregistrez les modifications.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="set-up-connectorconfigname">Set up OIDC application on your IdP<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#set-up-connectorconfigname" class="hash-link" aria-label="Lien direct vers Set up OIDC application on your IdP" title="Lien direct vers Set up OIDC application on your IdP" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-1-create-an-oidc-application-on-your-idp">Étape 1 : Créer une application OIDC sur votre fournisseur d’identité (IdP)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-1-create-an-oidc-application-on-your-idp" class="hash-link" aria-label="Lien direct vers Étape 1 : Créer une application OIDC sur votre fournisseur d’identité (IdP)" title="Lien direct vers Étape 1 : Créer une application OIDC sur votre fournisseur d’identité (IdP)" translate="no">​</a></h3>
<p>Initiez l'intégration OIDC SSO en créant une application du côté du fournisseur d'identité (IdP). Vous devrez fournir les configurations suivantes depuis le serveur Logto.</p>
<ul>
<li class=""><strong>URI de rappel</strong> : L'URI de rappel Logto, également connu sous le nom d'URI de redirection ou URL de réponse, est un point de terminaison ou une URL spécifique que l'IdP utilise pour rediriger le navigateur de l'utilisateur après une authentification réussie. Après qu'un utilisateur s'est authentifié avec succès auprès de l'IdP, l'IdP redirige le navigateur de l'utilisateur vers cet URI désigné avec un code d'autorisation. Logto complétera le processus d'authentification basé sur le code d'autorisation reçu de cet URI.</li>
</ul>
<p>Remplissez l'URI de rappel Logto dans le formulaire de paramètres de l'application OIDC de votre IdP et continuez à créer l'application. (La plupart des IdP OIDC offrent un large éventail de types d'applications parmi lesquels choisir. Pour créer un connecteur SSO basé sur le web sur Logto, veuillez choisir le type <code>Web Application</code>.)</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="step-2-configure-oidc-sso-on-logto">Étape 2 : Configurer l’authentification unique OIDC sur Logto<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-2-configure-oidc-sso-on-logto" class="hash-link" aria-label="Lien direct vers Étape 2 : Configurer l’authentification unique OIDC sur Logto" title="Lien direct vers Étape 2 : Configurer l’authentification unique OIDC sur Logto" translate="no">​</a></h3>
<p>Après avoir créé avec succès une application OIDC du côté du fournisseur d’identité (IdP), vous devrez fournir les configurations de l’IdP à Logto. Accédez à l’onglet <code>Connection</code> et renseignez les configurations suivantes :</p>
<ul>
<li class=""><strong>Client ID</strong> : Un identifiant unique attribué à votre application OIDC par l’IdP. Cet identifiant est utilisé par Logto pour identifier et authentifier l’application lors du flux OIDC.</li>
<li class=""><strong>Client Secret</strong> : Un secret confidentiel partagé entre Logto et l’IdP. Ce secret est utilisé pour authentifier l’application OIDC et sécuriser la communication entre Logto et l’IdP.</li>
<li class=""><strong>Émetteur (Issuer)</strong> : L’URL de l’émetteur, un identifiant unique pour l’IdP, spécifiant l’emplacement où le fournisseur d’identité OIDC peut être trouvé. Il s’agit d’une partie cruciale de la configuration OIDC car elle permet à Logto de découvrir les points de terminaison nécessaires.
Pour faciliter le processus de configuration, Logto récupérera automatiquement les points de terminaison et configurations OIDC requis. Cela se fait en utilisant l’émetteur que vous avez fourni et en effectuant un appel aux points de terminaison de découverte OIDC de l’IdP. Il est impératif de s’assurer que le point de terminaison de l’émetteur est valide et correctement configuré afin de permettre à Logto de récupérer correctement les informations nécessaires.
Après une requête de récupération réussie, vous devriez pouvoir voir les configurations IdP analysées dans la section des émetteurs.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="step-3-configure-scopes-optional">Étape 3 : Configurer les portées (Scopes) (Optionnel)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-3-configure-scopes-optional" class="hash-link" aria-label="Lien direct vers Étape 3 : Configurer les portées (Scopes) (Optionnel)" title="Lien direct vers Étape 3 : Configurer les portées (Scopes) (Optionnel)" translate="no">​</a></h2>
<p>Les portées (Scopes) définissent les permissions que votre application demande aux utilisateurs et contrôlent à quelles données votre application peut accéder depuis leurs comptes d’entreprise.</p>
<p>La configuration des portées nécessite une configuration des deux côtés :</p>
<ol>
<li class=""><strong>Votre fournisseur d’identité (IdP)</strong> : Configurez quelles permissions sont autorisées pour l’autorisation dans la console de votre IdP<!-- -->
<ul>
<li class="">Certains IdP activent toutes les portées publiques par défaut (aucune action requise)</li>
<li class="">D’autres exigent que vous accordiez explicitement les permissions</li>
</ul>
</li>
<li class=""><strong>Connecteur d’entreprise Logto</strong> : Spécifiez quelles portées demander lors de l’authentification dans les paramètres du connecteur OIDC d’entreprise Logto &gt; champ <code>Scopes</code>.<!-- -->
<ul>
<li class="">Logto inclut toujours les portées <code>openid</code>, <code>profile</code> et <code>email</code> pour récupérer les informations d’identité de base de l’utilisateur, indépendamment de vos paramètres de portées personnalisées.</li>
<li class="">Vous pouvez ajouter des portées supplémentaires (séparées par des espaces) pour demander plus d’informations au IdP.</li>
</ul>
</li>
</ol>
<div class="theme-admonition theme-admonition-tip admonition_Gfwi alert alert--success"><div class="admonitionContent_UjKb"><div class="content_hlIx"><span class="title_towL" data-type="title">astuce<!-- -->:</span><p>Si votre application doit accéder à des API en utilisant ces portées, assurez-vous d’activer <strong>Stocker les jetons pour un accès API persistant</strong> dans votre connecteur d’entreprise Logto. Voir la section suivante pour plus de détails.</p></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="step-4-store-tokens-to-access-third-party-apis-optional">Étape 4 : Stocker les jetons pour accéder aux API tierces (Optionnel)<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-4-store-tokens-to-access-third-party-apis-optional" class="hash-link" aria-label="Lien direct vers Étape 4 : Stocker les jetons pour accéder aux API tierces (Optionnel)" title="Lien direct vers Étape 4 : Stocker les jetons pour accéder aux API tierces (Optionnel)" translate="no">​</a></h2>
<p>Si vous souhaitez accéder aux API du fournisseur d’identité (Identity Provider) et effectuer des actions avec l’autorisation de l’utilisateur, Logto doit obtenir des portées API (Scopes) spécifiques et stocker les jetons.</p>
<ol>
<li class="">Ajoutez les portées requises dans le champ <strong>scope</strong> en suivant les instructions ci-dessus.</li>
<li class="">Activez <strong>Stocker les jetons pour un accès API persistant</strong> dans le connecteur Logto OIDC d’entreprise. Logto stockera en toute sécurité les jetons d’accès dans le Secret Vault.</li>
<li class="">Pour les fournisseurs d’identité OIDC <strong>standards</strong>, la portée <code>offline_access</code> doit être incluse pour obtenir un jeton de rafraîchissement (Refresh token), évitant ainsi de demander à plusieurs reprises le consentement de l’utilisateur.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="step-5-set-email-domains-and-enable-the-sso-connector">Étape 5 : Définir les domaines e-mail et activer le connecteur SSO<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#step-5-set-email-domains-and-enable-the-sso-connector" class="hash-link" aria-label="Lien direct vers Étape 5 : Définir les domaines e-mail et activer le connecteur SSO" title="Lien direct vers Étape 5 : Définir les domaines e-mail et activer le connecteur SSO" translate="no">​</a></h2>
<p>Fournissez les <code>domaines e-mail</code> de votre organisation dans l’onglet <code>Expérience SSO</code> du connecteur Logto. Cela activera le connecteur SSO comme méthode d’authentification pour ces utilisateurs.</p>
<p>Les utilisateurs ayant des adresses e-mail dans les domaines spécifiés seront redirigés pour utiliser votre connecteur SSO comme seule méthode d’authentification.</p>
<h3 class="anchor anchorTargetStickyNavbar_kxPF" id="save-your-configuration">Save your configuration<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#save-your-configuration" class="hash-link" aria-label="Lien direct vers Save your configuration" title="Lien direct vers Save your configuration" translate="no">​</a></h3>
<p>Vérifiez que vous avez rempli les valeurs nécessaires dans la zone de configuration du connecteur Logto. Cliquez sur "Enregistrer et terminer" (ou "Enregistrer les modifications") et le connecteur <!-- -->OIDC enterprise SSO<!-- --> devrait être disponible maintenant.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="enable-connector-connector-in-sign-in-experience">Enable OIDC enterprise SSO connector in Sign-in Experience<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#enable-connector-connector-in-sign-in-experience" class="hash-link" aria-label="Lien direct vers Enable OIDC enterprise SSO connector in Sign-in Experience" title="Lien direct vers Enable OIDC enterprise SSO connector in Sign-in Experience" translate="no">​</a></h2>
<p>Vous n'avez pas besoin de configurer individuellement les connecteurs d'entreprise, Logto simplifie l'intégration du SSO dans vos applications en un seul clic.</p>
<ol>
<li class="">Accédez à : <span class="linkWrapper_B4Bt"><a href="https://cloud.logto.io/to/sign-in-experience/sign-up-and-sign-in" target="_blank" rel="noopener noreferrer" class="link_hf7f">Console &gt; Expérience de connexion &gt; Inscription et connexion<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</li>
<li class="">Activez le bouton "SSO d’entreprise".</li>
<li class="">Enregistrez les modifications.</li>
</ol>
<p>Une fois activé, un bouton "Authentification unique (SSO)" apparaîtra sur votre page de connexion. Les utilisateurs d'entreprise avec des domaines de messagerie compatibles SSO peuvent accéder à vos services en utilisant leurs fournisseurs d’identité d’entreprise (IdPs).</p>
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-email-auto-navigation.png" alt="Détection automatique de la connexion SSO via le domaine de messagerie">
<img src="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/img/tutorial/sso-link-button-navigation.png" alt="Naviguer vers la connexion SSO en cliquant manuellement sur le bouton de lien">
<p>Pour en savoir plus sur l'expérience utilisateur SSO, y compris le SSO initié par le SP et le SSO initié par l'IdP, consultez les flux utilisateur : <span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows/enterprise-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="currentColor" d="m8.49 14.129-1.302 1.265a1.82 1.82 0 0 1-2.574-2.575l3.34-3.347a1.81 1.81 0 0 1 2.493-.066l.089.073a.736.736 0 1 0 1.03-1.052 2 2 0 0 0-.133-.154 3.28 3.28 0 0 0-4.48.162l-3.384 3.347a3.296 3.296 0 0 0 4.657 4.657l1.272-1.244A.736.736 0 0 0 8.49 14.13m7.865-10.476a3.303 3.303 0 0 0-4.657 0l-1.273 1.243a.736.736 0 0 0 1.008 1.067l1.273-1.265a1.82 1.82 0 1 1 2.575 2.574l-3.34 3.348a1.81 1.81 0 0 1-2.494.066l-.088-.074a.736.736 0 1 0-1.03 1.052q.08.083.169.155a3.29 3.29 0 0 0 4.48-.162l3.347-3.347a3.303 3.303 0 0 0 .03-4.657"></path></svg>SSO d’entreprise<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span>.</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="testing-and-validation">Testing and Validation<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#testing-and-validation" class="hash-link" aria-label="Lien direct vers Testing and Validation" title="Lien direct vers Testing and Validation" translate="no">​</a></h2>
<p>Retournez à votre application <!-- -->Plugin WordPress<!-- -->. Vous devriez maintenant pouvoir vous connecter avec <!-- -->OIDC enterprise SSO<!-- -->. Profitez-en !</p>
<h2 class="anchor anchorTargetStickyNavbar_kxPF" id="further-readings">Further readings<a href="https://wangsijie-log-13151-docs.logto-docs-tutorials.pages.dev/fr/how-to/build-oidc-enterprise-sso-sign-in-with-wordpress-plugin-and-logto#further-readings" class="hash-link" aria-label="Lien direct vers Further readings" title="Lien direct vers Further readings" translate="no">​</a></h2>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/end-user-flows" target="_blank" rel="noopener noreferrer" class="link_hf7f">Flux des utilisateurs finaux<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Logto fournit des flux d'authentification prêts à l'emploi, y compris l'authentification multi-facteurs (MFA) et le SSO d’entreprise, ainsi que des API puissantes pour une mise en œuvre flexible des paramètres de compte, de la vérification de sécurité et de l'expérience multi-locataire.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/authorization" target="_blank" rel="noopener noreferrer" class="link_hf7f">Autorisation<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : L'autorisation définit les actions qu'un utilisateur peut effectuer ou les ressources auxquelles il peut accéder après avoir été authentifié. Découvrez comment protéger votre API pour les applications natives et monopages et mettre en œuvre le contrôle d’accès basé sur les rôles (RBAC).</p>
<p><span class="linkWrapper_B4Bt"><a href="https://docs.logto.io/organizations" target="_blank" rel="noopener noreferrer" class="link_hf7f">Organisations<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Particulièrement efficace dans les applications SaaS multi-locataires et B2B, la fonctionnalité d'organisation permet la création de locataires, la gestion des membres, le RBAC au niveau de l'organisation et l'approvisionnement juste-à-temps.</p>
<p><span class="linkWrapper_B4Bt"><a href="https://blog.logto.io/ciam-101-intro-authn-sso" target="_blank" rel="noopener noreferrer" class="link_hf7f">Série IAM client<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg" class="iconExternalLink_2l9O externalLink_ia3C"><path d="M12.422 7.54748C12.2452 7.54748 12.0757 7.61772 11.9506 7.74274C11.8256 7.86777 11.7554 8.03734 11.7554 8.21415V13.0008C11.7554 13.1776 11.6851 13.3472 11.5601 13.4722C11.4351 13.5972 11.2655 13.6675 11.0887 13.6675H3.75537C3.57856 13.6675 3.40899 13.5972 3.28397 13.4722C3.15894 13.3472 3.0887 13.1776 3.0887 13.0008V5.66748C3.0887 5.49067 3.15894 5.3211 3.28397 5.19608C3.40899 5.07105 3.57856 5.00081 3.75537 5.00081H8.54204C8.71885 5.00081 8.88842 4.93058 9.01344 4.80555C9.13847 4.68053 9.2087 4.51096 9.2087 4.33415C9.2087 4.15734 9.13847 3.98777 9.01344 3.86274C8.88842 3.73772 8.71885 3.66748 8.54204 3.66748H3.75537C3.22494 3.66748 2.71623 3.87819 2.34116 4.25327C1.96608 4.62834 1.75537 5.13705 1.75537 5.66748V13.0008C1.75537 13.5312 1.96608 14.04 2.34116 14.415C2.71623 14.7901 3.22494 15.0008 3.75537 15.0008H11.0887C11.6191 15.0008 12.1278 14.7901 12.5029 14.415C12.878 14.04 13.0887 13.5312 13.0887 13.0008V8.21415C13.0887 8.03734 13.0185 7.86777 12.8934 7.74274C12.7684 7.61772 12.5988 7.54748 12.422 7.54748ZM15.0354 2.08081C14.9677 1.91791 14.8383 1.78846 14.6754 1.72081C14.5952 1.68665 14.5092 1.66853 14.422 1.66748H10.422C10.2452 1.66748 10.0757 1.73772 9.95063 1.86274C9.82561 1.98777 9.75537 2.15734 9.75537 2.33415C9.75537 2.51096 9.82561 2.68053 9.95063 2.80555C10.0757 2.93058 10.2452 3.00081 10.422 3.00081H12.8154L5.9487 9.86081C5.88622 9.92279 5.83662 9.99652 5.80278 10.0778C5.76893 10.159 5.75151 10.2461 5.75151 10.3341C5.75151 10.4222 5.76893 10.5093 5.80278 10.5905C5.83662 10.6718 5.88622 10.7455 5.9487 10.8075C6.01068 10.87 6.08441 10.9196 6.16565 10.9534C6.24689 10.9873 6.33403 11.0047 6.42204 11.0047C6.51005 11.0047 6.59718 10.9873 6.67842 10.9534C6.75966 10.9196 6.8334 10.87 6.89537 10.8075L13.7554 3.94081V6.33415C13.7554 6.51096 13.8256 6.68053 13.9506 6.80555C14.0757 6.93058 14.2452 7.00081 14.422 7.00081C14.5988 7.00081 14.7684 6.93058 14.8934 6.80555C15.0185 6.68053 15.0887 6.51096 15.0887 6.33415V2.33415C15.0877 2.24703 15.0695 2.16096 15.0354 2.08081Z" fill="currentColor"></path></svg></a></span> : Nos articles de blog en série sur la gestion des identités et des accès des clients (ou consommateurs), des sujets de base aux sujets avancés et au-delà.</p>]]></content>
        <category label="SSO providers" term="SSO providers"/>
        <category label="oidc-enterprise-sso" term="oidc-enterprise-sso"/>
        <category label="wordpress-plugin" term="wordpress-plugin"/>
        <category label="php" term="php"/>
        <category label="SAML authentication" term="SAML authentication"/>
        <category label="enterprise login" term="enterprise login"/>
        <category label="SSO login" term="SSO login"/>
    </entry>
</feed>