我在OpenID Connect中使用KeyCloak。
我在与KeyCloak相同的域上有一个应用程序。此应用程序有一个终结点,该终结点将授权代码作为参数,并在响应中设置“KEYCLOAK_IDENTITY”cookie 以启用 SSO。
它有效,但这样做安全吗?
编辑:我的问题是关于饼干的。我解释“为什么”只是为了给出一些背景。
编辑2:对于想要使用这个解决方案的人来说,我真的很关心钥匙斗篷社区…我的问题没有答案,即使有100英镑的赏金。
为什么我要这样做:
我需要在外部网站(它有自己的身份验证提供程序,我们称之为“站点 A”)和 Keycloak 处理的应用程序世界(我们称其中一个为“站点 K”)之间设置 SSO。
作为站点A的认证用户,如果我想在不登录(即使用SSO)的情况下导航到站点K,我需要登录KeyCloak(授权代码流将完成其工作)。
但是,为了登录KeyCloak,我需要:
1.使用 OIDC 很棘手,但这是可能的。
2.OIDC 是不可能的:KeyCloak 中没有endpoint可以获取授权代码并设置 cookie,而无需在正文中返回令牌。
因此,我的解决方案是在KeyCloak所在的域中添加一个网关,它将从KeyCloak获取一个令牌,并将其添加到KEYCLOAK_IDENTITY cookie中...这很棘手,但确实有效。我的问题是:安全吗?
如果不清楚:随时提问!
您可以使用用户联合,这样站点A的任何用户都是密钥斗篷用户,但也有站点A不知道的密钥斗篷用户。如果标准用户联合(LDAP、Kerberos)对您不可用,您可以添加自定义用户联合SPI
如果它有自己的身份数据库,您应该考虑通过用户存储提供者实现(USP)将该数据库集成到站点K的keycloak中。这样,你的两个站点都将使用一个Keycloak服务器进行身份验证。
如果站点 A 中的身份数据库的用户帐户在站点 B 的 Keycloak 中重复,则可能会出现问题,如果是这样,您应该考虑合并(或者例如,首选来自 Keycloak 的现有用户 - 这是来自 Keycloak 身份数据库的用户与从用户存储提供程序实现中提取的用户冲突时的默认行为)。您还可以为 USP 创建单独的领域,并为您的应用程序使用多租户。
之前我用的是实时DB,现在需要改用fiRecovery 当我在实时数据库中写入数据时,我使用了这种方法。 所以数据会这样显示 但是当我使用消防商店时,它将显示这一点 我能否将< code > u 93 aclsjjilqbdfck 2 ST 更改为< code > 02 nfe 2 jzidgzxzwypmcwq 20 qwq 93 ,如果可以更改,我该怎么做? 这是我的代码。
现在,我正试图构建一个程序,如果产品已经更新,通过whatsapp向我们的客户发送通知。 我尝试过使用twilio(沙箱),但在使用twilio whatsapp api时我有点困惑,这是我的问题... > 如果我使用“启用的WhatsApp发件人”功能,我可以使用自己的电话号码还是只能使用twilio电话号码(试用号码)? 图
问题内容: 我正在尝试对Spring 3.1 的批注支持,并且想知道是否有任何方法可以通过设置TTL在一段时间后清除缓存的数据?现在,从我看到的内容中,我需要使用和自己清除它,并与我一起使用可以实现TTL实现,但是对于这样一个简单的任务来说似乎有点多了吗? 问题答案: 参见http://static.springsource.org/spring/docs/3.1.x/spring-framewo
我正在使用wiremck json存根,并且一直在http://wiremock.org/docs/stubbing/阅读文档,但我似乎无法找到可以放在json存根文件响应部分的所有选项的完整列表。 我可以看到如何给出响应,甚至如何循环遍历场景等。但是当我到达特定终端时,似乎找不到其他方法。有没有办法指定当特定终端被击中时要运行的自己的脚本?最好使用endpoint作为提供给脚本的参数? 在我的情
问题内容: 如果我有一个包含的列表,并且想编写一个迭代器,以便对以’a’开头的元素进行迭代,那么我可以编写自己的迭代器吗?我怎样才能做到这一点 ? 问题答案: 当然。迭代器只是接口的实现。如果您使用中的现有可迭代对象(例如),则需要对其进行子类化并覆盖其功能,以便返回自己的对象,或者提供一种在特殊实例中包装标准迭代器的方法(具有被更广泛使用的优势)等。
我遇到了这个问题,因为我有一个应用程序,有restful服务,但我需要提供一些静态的。在这个应用程序中,我还使用了注释。看起来这个类是公共的,我可以将其子类化,但我不确定如何配置它。我的目标是覆盖这条线,这样我就可以控制404。