问题标签 [azure-ad-b2b]
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 - 获取访问令牌 - ASP Net Cor 2.x webapp(工作或学校帐户)
我使用 Visual Studio 2017 创建了一个简单的 Web 应用程序。通过选择下面的模板并在提供我的域详细信息后,VS 创建了一个准备就绪并受 Azure AD 保护的项目。
现在,登录后,我想捕获 Azure AD 身份服务器返回的访问令牌。我想在https://jwt.io/中检查该令牌
有没有办法在这个框架中插入代码来对访问令牌进行语法分析?
azure - Azure AD B2C 并发访问令牌请求
为什么我们需要多个令牌请求:
我们为 SPA 使用隐式流从 Azure AD B2C 获取访问令牌,以访问受 B2C 保护的 API。我们需要访问多个 API,这些 API 都在 B2C 中注册为不同的应用程序,因此每个 API 都有不同的受众。由于他们都是不同的受众,B2C 不支持多个受众的单个令牌请求,因此我们必须发出多个令牌请求。
B2C 设置背景
我们支持本地帐户登录,以及使用我们其他 Azure AD 身份提供程序的社交登录。我们还为我们的 B2C(身份体验框架)使用自定义策略
问题
使用 Azure AD login social login的用户会出现此问题。用户以前登录过。
当发出多个请求时,我们在 google chrome 中注意到以下网络跟踪:
- 第 1 行和第 2 行是对 2 个不同 api/范围/受众的 B2C授权端点的令牌请求。
- 第 3+4 行和第 5+6 行,这些重定向到login.windows.net和login.microsoftonline.com都作为特定 api/scope/audience 的 1 组。
- 第 7 行和第 8 行都是发回 B2C 的响应(id 令牌)表单。第 7 行从表单发布返回了错误的请求响应。
问题
- 为什么需要重定向回login.windows.net或login.microsoftonline.com?由于用户之前已经登录,他不应该有一个有效的会话,因此 B2C 可以返回请求的令牌吗?
- B2C 能否支持来自同一浏览器的并发令牌请求(或登录)以获得社交登录身份?我们怀疑这是由于 B2C 期望从社交登录获得的身份验证状态只有一个且唯一,因此并发登录会导致此状态相互覆盖,从而导致另一个请求无效。根本没有关于错误请求响应的详细信息。它只显示一个带有“错误请求”文本的空白页面。
-- 2019 年 3 月 5 日更新 --
在对 B2C 自定义策略进行了一些修改之后,我在登录一次后通过更改以下内容设法抑制了重定向:
所做的更改是使用默认会话提供程序。
为什么外部会话提供者不会抑制重新身份验证?设置为 false的元数据AlwaysFetchClaimsFromProvider
也不会抑制重新验证。
但是使用这种解决方法会给我们带来另一个问题,该问题在一个单独的问题中提出。
azure - 更改邀请电子邮件中inviteRedeemUrl 的导航:Azure AD
我使用 Microsoft Graph 创建了一个到 azure 广告应用程序的电子邮件邀请。在单击“开始” (电子邮件邀请的元素)元素时收到的电子邮件中,它被重定向到登录页面,而不是我要重定向到的应用程序的注册页面。
如何禁用该元素或覆盖兑换 url?
azure - Azure B2C 自定义策略授权端点给出 404
在自定义策略中,如果我想将 Authorize & METADATA 端点从 login.microsoftonline.com 更改为 tenant.b2clogin.com
我们应该使用什么。
我得到 404 的端点
azure-active-directory - AzureAD 应用程序中定义的 appRole 未包含在“外部 Azure Active Directory”类型的来宾用户中
让 AzureAD 应用程序使用清单中定义的 appRoles 进行身份验证。角色被分配给用户,它们作为声明包含在经过身份验证的用户的令牌中。当前租户的成员以及新添加的类型为“Microsoft 帐户”的来宾用户就是这种情况,用于授权来源。(应用程序的 signInAudience 在清单中设置为 AzureADandPersonalMicrosoftAccount。)
但是对于授权来源的“外部 Azure Active Directory”类型的现有来宾用户,appRole 不是通过令牌声明来的。是否值得尝试删除来宾用户帐户并尝试阅读它?无论来宾帐户的权限来源是“Microsoft 帐户”还是“外部 Azure Active Directory”,appRoles 的这个特定功能/行为是否相同?
或者想知道是否需要为“外部 Azure Active Directory”设置或调整一些额外/补充设置?
PS:目前使用的授权端点是https://login.microsoftonline.com/common,它只是验证它没有获取 appRole,它与“Microsoft Account”类型的访客帐户的 appRole 一起使用。但是应该改变吗..?
azure-active-directory - 向来宾用户授予存储帐户访问权限(外部 Azure Active Directory)
我正在使用Redgate Data Platform Studio将数据从本地 SQL Server 传输到 Azure 托管的 SQL Server。这个基于 Web 的应用程序只需登录我公司的 ADFS 即可使用 Azure 存储帐户(用于数据传输目的)。当我登录到我公司的活动目录(通过 ADFS)时,Web 应用程序可以成功地查看我的 ADFS 用户拥有的订阅(我们称之为订阅 A)中的存储帐户。我们称我公司的 AD 目录为 A。
我的订阅 B 由与我公司的 Active Directory 无关的 Microsoft 帐户拥有。此订阅 B 由另一个 Azure AD 租户 B 管理,该 Microsoft 帐户作为服务管理员和所有者。为了链接这两个目录,我使用了此处描述的 B2B状态 3配置。因此,在目录 B 中,我的目录 A 用户显示为具有 Source= External Azure Active Directory的访客用户。
对于目录 B 中的存储帐户,我将内置角色“存储 Blob 数据参与者”和“存储帐户参与者”授予来宾用户(来源 = 外部 AAD 目录 A)。因此,在Microsoft Azure 存储资源管理器和portal.azure.com中,我都可以在订阅 B 中看到存储帐户。
但是,如果我使用目录 A 凭据(通过我公司的 ADFS)登录 Redgate 应用程序,则只有订阅 A 中的存储帐户会显示在 Redgate 应用程序中。我已经尝试为目录 B 中的来宾用户赋予用户以下角色,即使在最高订阅 B 级别,但没有运气:
- 作为共同管理者
- 作为贡献者
- 作为存储帐户贡献者
- 作为存储 Blob 数据所有者
我的问题:这是应用程序无法访问另一个目录 (B) 中的订阅的限制,还是我需要设置目录 A/B 和/或订阅 A/B 中的一些配置?
azure-active-directory - 我有属于另一个天蓝色活动目录的用户,我想将它们作为用户添加到我的天蓝色活动目录中
我想将另一个 azure Active Directory 组织中的用户添加到我的 azure Active Directory 组织。问题是其他组织出于安全原因不想为 b2b 协作开放他们的 azuread。这些具有来自其他组织的电子邮件地址的用户是否仍可以作为访客用户添加到我的 azuread 中?或者他们的电子邮件地址的域或他们所属的 azuread 会阻止这种情况发生吗?
azure - 主权云的 Azure AD B2B API 失败
我正在使用 Azure AD B2B 邀请 API 邀请租户中的外部用户。它工作得很好,但最近对于一个外部域它失败了,错误消息是:
"代码:BadRequest\r\n消息:您正在尝试邀请其 Azure AD 帐户位于主权云中的用户。要与该用户协作,请向该用户询问另一个电子邮件地址或为该用户创建一个成员用户帐户你的 Azure AD 目录。\r\n\r...
有人可以解释一下这个主权云是什么吗?我知道该用户来自德国,那么 Office 365 Germany 或 Office 365 Government 的此云部分是否包含在内?那些租户无法使用 B2B 协作功能?谢谢。
azure - 谁邀请了访客用户
我想为 Azure AD 构建一个用户评论应用程序。但不幸的是,没有指示邀请用户的 Azure AD 用户属性。
有什么方法可以找出谁邀请了访客用户?