typescript 如何在angular 13运行期间更改msal配置?

gmol1639  于 2023-02-14  发布在  TypeScript
关注(0)|答案(1)|浏览(115)

我正在构建一个需要通过Aad进行身份验证的Web应用程序。目前我在app.module.ts中以这种方式配置了msal:

MsalModule.forRoot(new PublicClientApplication
  (
    {
      auth:{
        clientId: environment.clientId,
        redirectUri: environment.apiUrl,
        authority:'https://login.microsoftonline.com/' + environment.tenantId
      },
      cache:
      {
        cacheLocation:'localStorage',
        storeAuthStateInCookie:isIE
      }
    }
  ),
  {
    interactionType:InteractionType.Redirect,
    authRequest:{
      scopes:['user.read']
    }
  },
  {
    interactionType:InteractionType.Redirect,
    protectedResourceMap:new Map(
      [
        ['https://graph.microsoft.com/v1.0/me',['user.Read']],
        [environment.apiUrl, ['api://' + environment.clientId + '/access_as_user']]
      ]
    )
  }
  )

但是我不想从环境文件中获取参数,而是想从服务器的get调用中获取参数,所以我必须在运行时进行,有什么方法可以做到吗?
我用Angular 13

ws51t4hk

ws51t4hk1#

我解决了它,如果有人想做它按照这个指南:https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-angular/docs/v2-docs/configuration.md,但不是从json文件中获取配置,而是从API中获取数据并从中获取所需的内容。

相关问题