我正在为MS Teams开发一个应用程序,用户可以从应用程序商店(Tab)中自行安装。我有一个Angular 6 SPA,我想使用它来访问SharePoint和MS Graph资源。 SPA在Azure上作为应用程序服务运行。在团队环境中,我尝试通过MS Team JS对用户进行注册应用程序的AAD身份验证。参见下面的代码:
microsoftTeams.initialize();
microsoftTeams.getContext(function(context) {
try {
microsoftTeams.authentication.authenticate({
url: window.location.origin + '/assets/login.html',
width: 600,
height: 535,
successCallback: function(result) {
// Do something
},
failureCallback: function(reason) {
// Say something
}
});
} catch (err) {
// Do other things
}
此代码可以正常工作。但是,当您第一次使用该应用程序或再次登录时,会显示一个登录弹出窗口。我认为,应该可以使用当前登录的用户来向Azure进行身份验证,而无需登录弹出窗口(SSO)。
是否有一种解决方案,其中应用程序以静默方式检索两种资源的访问令牌?
谢谢您的帮助!