首页 > 解决方案 > 依赖注入 MSAL Javascript 库

问题描述

我正在与一个开发团队合作,该团队正在利用 Microsoft 的 MSAL.js 库来开发一个 vanilla javascript 应用程序。authConfig.js 有以下必要的代码:

const msalConfig = {
auth: {
  clientId: "11111111-1111-1111-111111111111",
  authority: "https://login.microsoftonline.com/11111111-1111-1111-1111111111111",
  redirectUri: "http://localhost:3000/",
},
cache: {
  cacheLocation: "sessionStorage", // This configures where your cache will be stored
  storeAuthStateInCookie: false, // Set this to "true" if you are having issues on IE11 or Edge
}

我需要能够更改 Dev、QA 和 Prod 的 clientId 和 RedirectURI。有没有办法为 DevOps 管道注入这些值?

标签: javascriptazure-devopsmsalmsal.js

解决方案


有没有办法为 DevOps 管道注入这些值?

我想分享以下两种方法:

方法1:

您可以在每个阶段添加 PowerShell 任务来替换 和 的ClientIdredirectUri

1.设置变量以保存旧值和新值。 在此处输入图像描述

2.运行以下Powershell脚本:

(Get-Content  .\authConfig.js).replace('$(oldid)', '$(newid)') | Set-Content  .\authConfig.js

(Get-Content  .\authConfig.js).replace('$(oldredirectUri)', '$(newredirectUri)') | Set-Content  .\authConfig.js

方法2:

您可以尝试使用Replace Tokens Extension中的 Replace Tokens 任务。

更多信息,您可以参考这张票:替换令牌任务票


推荐阅读