如何获取.net core web api post 请求中的当前用户?

How to get the current user in .net core web api post request?

我正在开发一个 angular 项目,该项目使用 http 和 web api(.net core 3.1) 连接在 Azure 中注册和部署的数据库,我已授予访问权限目前只有一个用户在 Azure 活动目录中,在 post 请求中,我想获取 saving/editing 记录的当前用户。我试过使用 MSAL,但 sessonstorage.getitem() 是空的。我是 MSAL 的新手,所以请告诉我它是如何工作的,如果有人逐步解释如何使用 MSAL 和获取当前用户,我将不胜感激。你能帮我吗?提前致谢!!

注意如果有另一种方式获取当前用户(不是通过 windows 身份验证)在 .net core 3.1 的 Azure 活动目录中授予访问权限,请告诉我..

您可以 tutorial 使用 MSAL 进行尝试。登录后显示 myMSALObj.getAccount() 的欢迎信息。

const myMSALObj = new Msal.UserAgentApplication(msalConfig);

function signIn() {
  myMSALObj.loginPopup(loginRequest)
    .then(loginResponse => {
      console.log('id_token acquired at: ' + new Date().toString());
      console.log(loginResponse);

      if (myMSALObj.getAccount()) {
        showWelcomeMessage(myMSALObj.getAccount());
      }
    }).catch(error => {
      console.log(error);
    });
}

function showWelcomeMessage(account) {

    // Reconfiguring DOM elements
    cardDiv.classList.remove('d-none');
    welcomeDiv.innerHTML = `Welcome ${account.name}`;
    signInButton.classList.add('d-none');
    signOutButton.classList.remove('d-none');
}