问题标签 [idp]

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.

0 投票
1 回答
427 浏览

crm - 关于匿名用户的 Azure B2C AD

我有一个关于 Azure B2C AD 的快速问题。假设我决定使用 Azure B2C AD 作为网上商店页面的身份提供者。

拥有用于管理注册会员/消费者/客户的 B2C AD 一切都很好,但是,当一家公司(在本例中为 Web 商店页面)提供未注册的客户预订或购买时呢?甚至只是针对“匿名”用户的消费者/客户目标营销。

当然,我可以使用针对 IP 地址等的 cookie 信息。但是,如果连 cookie 信息都不可靠怎么办?

假设上述场景不是应该如何使用 Azure B2C AD。

我研究了 Azure B2C AD 和一些 CRM 系统示例。但是,一旦集中化消费者记录(称他们为用户或其他什么 - 既是注册用户又是未注册用户),我是否走在正确的轨道上?

是否有关于例如“基于组合”的解决方案示例或类似的任何好的案例研究?

我不要求对此有任何直接的解决方案。只是试图理解/掌握上面解释的场景。

谢谢//约翰

0 投票
2 回答
2028 浏览

keycloak - 仅允许授权 IDP 帐户的 Keycloak 流程

我想使用 Keycloak 设置 Google 联盟,但仅适用于我公司的授权用户。

设置 Google 联盟允许任何 Google 帐户登录。

我查看了 Keycloak 上的身份验证流程,但我一直无法找到设置它的方法。我能想到一些我希望 Keycloak 开箱即用的简单场景

  1. 与其在有人尝试登录时自动创建帐户,不如要求已经存在具有完全相同电子邮件/用户名的帐户,并在该特定用户尝试登录时根据电子邮件链接它们。

  2. 用户第一次使用 Google 登录时自动创建一个帐户,链接它们但是需要管理员手动激活该帐户才能使用

  3. 前两种的组合。启用注册,允许用户注册一个帐户并要求管理员激活该帐户,此时用户可以链接它们。

尽我所能,我似乎无法配置它。似乎没有办法让 Keycloak 创建一个需要激活的帐户,如果我尝试创建一个不包含“唯一帐户创建”身份验证器的流程,它会立即将用户抛出一个“无效的用户名/密码”屏幕。

我错过了什么?除了手动创建一个帐户并为每个用户链接它(或编写我自己的身份验证器,我试图避免)之外,没有其他选择吗?

0 投票
10 回答
32150 浏览

single-sign-on - 如何将客户端访问权限限制为仅在 keycloak 中的一组用户?

keycloak我的awx(ansible 塔)网页有一个客户端。

我只需要一个特定keycloak组的用户就可以通过这个客户端登录。

如何禁止所有其他用户(来自一个特定组的用户除外)使用此keycloak客户端?

0 投票
1 回答
125 浏览

node.js - 如何在 ADFS(作为 IDP)metadata.xml 中包含配置的声明或提前知道它们(在返回配置文件对象之前)?

我将 Saml SSO 与 ADFS(作为 IDP)一起使用,在 ADFS UI 中,我为我的 SP(第三方)应用程序配置了所有需要的数据,包括角色(声明)。现在在 ADFS 中有一个选项可以将联合元数据 xml 的链接与我配置的所有数据一起复制。我的问题是:在 ADFS 给我的这个元数据 xml 链接中,我找不到我定义的角色(声明)(我可以在成功身份验证后返回的配置文件响应对象中看到它们,但在元数据 xml 中没有)。我的问题是: 1. ADFS 元数据 xml 是否应该包含我的声明?2. 如果是,你能解释一下,我该如何包括它们?3. 否则,您能否建议一种方法让我知道哪些声明(键)将在前面的配置文件对象中返回?谢谢。

0 投票
0 回答
118 浏览

saml - Shibboleth:具有不同数据类型的 SAML 断言属性

返回所有属性的 SAML 断言,默认为

xsi:type="xsd:string"

在断言响应中,它显示如下

现在,我想将xsi:typestring更改为Boolean 或 Integer 或 Duration,就像不同的数据类型一样。

有没有可能这样做?

我关注了几篇文章,他们告诉我要更新元数据

https://wiki.shibboleth.net/confluence/display/IDP30/MetadataDrivenConfiguration

我尝试更新元数据以至少接受布尔值,但无法在断言中返回那些,并且不确定如何在属性过滤器中使用它。

0 投票
0 回答
763 浏览

upgrade - 在 infinispan 缓存上将 keycloak 从 4.3.0 升级到 4.4.0 失败

我在域集群模式下设置了两个节点,我目前正在从运行良好的 4.3.0 升级到 4.4.0,升级后 node1 keycloak-master 启动没有问题,但是当我尝试启动 node2 - keycloak-slave 它失败与 infinispan 缓存的 StateTransfer 相关的异常。这个问题并没有在我们的开发环境中发生,而是在我们进行登录测试的阶段环境中出现

这是来自 node1 的日志:

0 投票
1 回答
623 浏览

amazon-web-services - 是否可以像使用 ADFS 一样在 AzureAD 中进行自定义声明转换?

我们正在尝试将 AzureAD 用作 Amazon Web Services 的 IDP,并让我们的用户能够根据他们的 AD 组成员身份将角色切换到其他帐户/访问级别。

以下是一个链接,它为我们提供了使用 ADFS 后的确切情况。巧妙命名的 AD 组被转换为作为声明传递的 AWS 角色。

https://aws.amazon.com/blogs/security/aws-federated-authentication-with-active-directory-federation-services-ad-fs/

具体来说,使用 ADFS 实现此目的的部分是自定义声明转换,您可以在将角色添加到依赖方信任时执行此操作。

不幸的是,我们必须使用 AzureAD 而不能使用 ADFS,目前我们无法找到使用 RegEx 转换来获得我们可以使用 ADFS 的结果的方法。

任何人都可以告诉我们一种方法,或者这是否可能?

谢谢!

0 投票
1 回答
5559 浏览

single-sign-on - idp 使用 keycloak 发起 sso

这个问题属于基于 SAML 的 IDP 发起的 SSO 领域。作为 POC,我有两个 keycloak 实例,比如 keycloak1 和 keycloak2。我想实现以下目标:

  1. 身份验证将在 keycloak1 完成

  2. keycloak1 然后指向 keycloak2 以访问 keycloak2 客户端应用程序。

为此,

a) 在 realm1 下的 keycloak1 上创建一个 saml 客户端。设置为不带IdP initiated SSO Name空格的名称)-> 说,keycloakclientsaml. 在 Fine Grain SAML Endpoint Configuration 部分中,对于 Assertion Consumer Service POST Binding URL -->http://<keycloak2:port>/auth/realms/realm2/broker/saml/endpoint/clients/keycloakclientsaml

https://www.keycloak.org/docs/latest/server_admin/index.html#idp-initiated-login

b) 单击上面创建的 saml 客户端 --> 安装 --> 导出 SAML 元数据 IDPSSODescriptor 并另存为 saml-metadata.xml(比如说)。

c) 在 keycloak1 中添加一个用户,比如 user1/user@123

d) 在 keycloak2 上,创建一个 IDP(身份提供者选项卡)。导入上面导出的 saml-metadata.xml 并保存。

e) 在浏览器点击中,http://<keycloak1>/auth/realms/realm1/protocol/saml/clients/keycloakclientsaml 提示输入用户名/密码,为 user1 提供凭据

f) 浏览器中的 URL 现在更改为

http://<keycloak2:port>/auth/realms/realm2/broker/saml/endpoint/clients/keycloakclientsaml

在 keycloak2 实例中,我得到的错误为:

09:20:46,775 INFO [org.keycloak.saml.validators.ConditionsValidator] (default task-6) Assertion ID_789213dd-24f9-425f-ae20-bcadef173bc6 is not addressed to this SP. 09:20:46,775 ERROR [org.keycloak.broker.saml.SAMLEndpoint] (default task-6) Assertion expired. 09:20:46,775 WARN [org.keycloak.events] (default task-6) type=IDENTITY_PROVIDER_RESPONSE_ERROR, realmId=realm2, clientId=null, userId=null, ipAddress=keycloak2, error=invalid_saml_response

有人可以在这里帮忙。

  1. 以上给出的步骤是否正确且完整。
  2. 我错过了什么

如果需要任何其他信息,请告诉我。很乐意提供。

0 投票
1 回答
742 浏览

oauth-2.0 - Keycloak 添加 OIDC 身份提供者不支持 private_key_jwt 认证

我正在运行Keycloak 4.8.3服务器进行身份代理,我需要添加一个OIDC不支持client_id/client_secret身份验证的外部身份提供者。此身份提供者仅支持private_key_jwtPKCE身份验证。

不幸的是,Keycloak服务器只允许我添加OIDC身份提供者client_idclient_secret身份验证。有没有办法解决?也许我可以为Keycloak服务器安装一个插件,允许我添加一个具有身份private_key_jwt验证的身份提供者?

0 投票
1 回答
257 浏览

angularjs - SSO 中继状态问题

我创建了 angularjs Web 应用程序,它调用 REST Web 服务获取数据。Web 应用程序和其余服务都在同一个 WebSphere 自由容器中运行。我正在使用 SSO 联合对用户进行身份验证。这里的问题是会话超时时以及用户执行某些操作之后。Web 应用程序调用休息服务并将中继状态 HTML 作为结果而不是预期数据发送回。如何通过自动重定向到 SP 登录 URL 来解决此问题。