问题标签 [msal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure-active-directory - Azure AD 应用:迁移到 v2.0
这是我的场景:客户端 Windows 窗体应用程序通过 Azure AD 进行身份验证并使用访问令牌访问多个 Web api 服务。到目前为止,我一直在使用端点 1 并使用 Azure 门户注册这两个应用程序。现在似乎有一种新的方式,但我有点迷失在这里。
对于初学者来说,似乎两个应用程序(客户端和服务器)都可以在新应用程序门户 ( https://apps.dev.microsoft.com ) 的同一个应用程序中注册。我确实看到了一个添加平台的地方,并且我已经添加了本机和 Web api 的条目。但我从这里去哪里?例如,在 azure 门户中,我必须配置客户端应用程序才能调用 Web api 服务。我怎么在这里?
是否有适用于这种情况的完整示例,例如我们必须使用 ADAL 的示例(https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-code-samples#native-application- to-web-api )?
谢谢,
问候,路易斯
azure-active-directory - 哪个选项更好,MSAL.js 或 Web API 上的 OpenIdConnect nuget 包
我们有一个托管在 Internet 上的具有匿名访问权限的 SharePoint 发布网站。根据最新要求,我们需要为门户中的某些页面实现用户登录(AzureAD、Microsoft 个人和工作帐户等)。
我们提出了两种方法:
- 使用 msal.js 文件。在客户端自己实现用户登录,并使用用户令牌调用合作伙伴中心 Web API 以检查用户的有效性并执行所需的操作。
- 在 Web API 端使用 Microsoft.Owin.Security.OpenIdConnect nuget 包创建一个 Web API 来实现登录,并使用它来执行从后端检索和修改数据的必要操作。
哪种方法在我们的场景中效果最好?有没有其他方法可以实现这一目标?
azure - MSAL 令牌在 1 小时后过期
我在 Xamarin 应用程序中使用 MSAL 进行 Azure AD 身份验证。令牌的有效期为 1 天(使用 AuthenticationResult 的ExpiresOn值查看)。我的问题是,1 小时后,AcquireTokenSilentAsync 失败,然后需要调用 AcquireToken。
我无法理解,即使令牌有效期为 1 天,并且刷新令牌的有效期更长,为什么每隔 1 小时要求验证一次?这可以使用任何参数值或任何其他方式进行更改吗?
sharepoint - 用于 SharePoint 站点上的 Web API 集成的 Azure Active Directory v2.0 查询
我们有一个托管在 Internet 上的具有匿名访问权限的 SharePoint 发布网站。根据最新要求,我们需要实现用户登录(AzureAD、Microsoft 个人和工作帐户等)。
https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-flows
根据此处的文档,我们希望使用 Web API 来实现这一点,以从数据库中获取安全信息。我们正在考虑使用 MSAL.js 文件在 SharePoint 上进行用户登录和注销,在获得不记名令牌后,我们可以调用 Web API 以获取数据库中的其他数据。
独立 Web API 限制:“您可以使用 v2.0 端点构建受 OAuth 2.0 保护的 Web API。但是,该 Web API 只能从具有相同应用程序 ID 的应用程序接收令牌。您不能从具有不同应用程序 ID 的客户端访问 Web API。客户端将无法请求或获取对您的 Web API 的权限。”</p>
我们如何在App Registration Portal上创建两个具有相同应用程序 ID 的应用程序?或者我们应该在 SharePoint 和 Web API 端使用相同的应用程序 ID?
c# - HTTP 请求未命中 WEB API 2 控制器
我正在尝试使用 MSAL 保护 Web API 2。我的身份验证客户端工作,我得到一个有效的令牌(用 jwt.io 验证)。
我有一个这样配置的 Web API 2:
WebAPI 配置:
我的 Startup.Auth.cs 看起来像这样:
还有一个简单的控制器:
在添加 [Authorize] 属性之前,API 就像一个魅力一样工作并正确返回了数据。
如果我在控制器的 GET 函数中设置断点,它不会被命中,我会得到 401 : Authorization has been denied for this request。我很确定我在apps.dev.microsoft.com 中正确注册了我的应用程序。
我不明白我的 API 在什么时候阻止了调用。非常感谢任何建议!
谢谢 !
asp.net-web-api - 此请求错误的 MSAL Web API 授权已被拒绝
我收到消息
当尝试使用来自https://github.com/AzureADQuickStarts/AppModelv2-WebAPI-DotNet的 API 时,如下面的邮递员屏幕截图所示:
我正在尝试从 js 文件中调用它
azure - .NET Azure SDK 中的 Login-AzureRmAccount(和相关)等效项
我开始想知道,什么能等同于
- 登录-AzureRmAccount
- 新 AzureRmADServicePrincipal
- New-AzureRmADApplication
在Azure SDK for .NET中。出于某种原因,我似乎无法找到它们,我想在这篇博文中做一些类似的事情,但是在代码中。
<编辑:2017-06-20 00:42
从Tom Sun那里得到一些线索并深入探讨,我找到了一个答案,它部分解决了“旧图书馆”的问题,也是最初选择订阅的问题。它在https://stackoverflow.com/a/41360632/1332416进行了描述,但是该代码也已经有点旧了,并且再深入一点,在https://将其重写为更新的形式stackoverflow.com/a/38036598/1332416。然而,这还没有完全存在,我继续戳得更远(除非有人戳得更远)。我想我不准确地改写了原来的问题。我想重新创建“使用 PowerShell 的通常登录流程”,但这次是在代码中。不过,这些 PS 命令很难确定。:)
关于使用 PowerShell 选择订阅的部分可能是这样的:
$subscription = Get-AzureRmSubscription | Out-GridView -Title "Select the subsbcription for the deployment" -PassThru
Select-AzureRmSubscription -SubscriptionId $subscription.SubscriptionId
c# - MSAL + Azure 应用服务
我之前已经发布过这个,但是这个帖子变得非常广泛和混乱,并且从未达成过解决方案。我用清晰简洁的代码块和我想要的结果重新发布。
我希望将客户端流身份验证用于 Azure 应用服务后端。我想使用 MSAL 来支持 Microsoft 帐户 (MSA) 和 AAD 帐户。被困在这个问题上好几个星期了,看不到任何解决方案。
为什么这不起作用?我该怎么做才能让它工作?
获得 401 异常,尝试使用 MobileServiceAuthenticationProvider.WindowsAzureActiveDirectory 以及 MobileServiceAuthenticationProvider.Microsoftaccount
--Microsoft 帐户的应用服务身份验证配置:
出现在 apps.dev.microsoft.com 中的 ClientID 和 ClientSecret
--AAD 的应用服务身份验证配置:
出现在 apps.dev.microsoft.com 中的 ClientID
发行者 URL:https ://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration
客户密码:(空白)
angular - 如何在 Angular2 中使用 MSAL 执行登录重定向
我正在尝试使用 Angular2 中的 MSAL 库进行 B2C Azure 身份验证。登录页面完美地重定向到 Azure 页面并提示用户输入用户名和密码。单击登录按钮并且身份验证成功后,该页面必须将自身重定向回我的应用程序登录页面并将“用户”对象设置为从 AzureAD 获取的对象。尽管身份验证成功,但未设置用户对象并且应用程序失败。
app.component.ts
auth.service.ts
我对 Angular2 完全陌生,并且处于学习曲线的开始阶段。经过一番阅读,我发现 observable 是前进的方式(我可能是错的)并在服务“Observable”中设置了用户对象,并让组件订阅它,以便可以捕获服务对用户对象的任何更改并由组件对其采取行动。但它不起作用。
app.component.html
与上面的代码一样,即使在成功验证后,我也只得到“登录”按钮(因为未设置用户),而不是预期的其他按钮。任何引导我走向正确方向的帮助将不胜感激。
azure-ad-b2c - Azure AD B2C iOS 应用令牌错误
这是我的应用程序的配置:
这是登录和注册政策
现在这是当我使用我的配置运行以下代码时它给我的错误:https ://github.com/Azure-Samples/active-directory-b2c-ios-swift-native-msal
错误如下: