suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Verwenden Sie msal-react mit mehreren Instanzen/Anbietern (Azure AD und Azure B2C).

Ich habe eine React-App (mit msal-react), die Azure B2C für die Benutzerregistrierung/-anmeldung verwendet. Jetzt muss ich auch Anmeldungen für interne Benutzer hinzufügen, die Azure AD verwenden, aber ich sehe keine Möglichkeit, mehrere MSAL-Instanzen in derselben Anwendung hinzuzufügen. Ich habe ein normales Setup:

const msalInstance = new PublicClientApplication(msalConfig);
<MsalProvider instance={msalInstance}>
Rest of app
</MsalProvider>

Aber ich weiß nicht, wie ich einen weiteren Anbieter für AzureAD hinzufügen kann. Die Einbindung von AzureAD in B2C ist keine Option, da eine stärkere Trennung zwischen externen und internen Anmeldungen erfolgen muss.

Weiß jemand, ob dies über msal-react erreicht werden kann oder muss ich es direkt über msal.js tun?

P粉256487077P粉256487077251 Tage vor458

Antworte allen(1)Ich werde antworten

  • P粉921130067

    P粉9211300672024-03-20 12:18:39

    我遇到了完全相同的情况,我相信通过使用两个单独的实例和两个单独的提供程序(每个提供程序都包装受保护的组件),我已经比您描述的更进一步了:

    使用 React Router 6 创建路由:

    {
        path: '/portal',
        element: 
            
                } />
            ,
        children: ...
    },
    {
        path: '/portalAdmin',
        element:
            
                } />
            ,
        children: ...
    }

    但是,msal-react 库似乎混合了这两个实例的上下文,可能是因为它将数据存储在会话缓存中。我还没弄清楚如何保持登录分开。您能为最初的问题找到一个好的解决方案吗?

    Antwort
    0
  • StornierenAntwort