我在keydape中有两个客户机位于同一领域,比如:localhost:9090/first/和localhost:9090/second/。我想要的是-当用户键入:localhost:9090/first/并登录时,keydape应该将他/她重定向到localhost:9090/second/。但当我将第一个客户端的“重定向uri”保存为:localhost:9090/second/时,keydape服务器抛出:“无效url”。是否可以重定向到另一个客户端?您需要将此url添加到KeyClop
我们正在尝试使用RESTAPI配置Key斗篷(例如添加用户、角色等)。我们希望使用RESTAPI,但似乎只有Java和Javascript得到官方支持,这对于RESTAPI来说很奇怪。难道不可能使用Python REST客户端来访问keydove吗?keydove提供了一个RESTful API,这几乎意味着您可以将它用于任何想要的编程语言,而不仅仅是Java或JavaScript
您是正确的,Java中提供了官方的keydape管理员。但是没有什么能阻止你写你的 有几个开源Python Key
这里是我尝试登录到keyclock部署的服务器并使用下面的目录/keydape/bin/
并运行以下命令
./kcadm.sh config credentials --server https://<IP ADRESS>:8666/auth --realm master --user admin --password admin
/kcadm.sh配置凭据--服务器https://:8666/auth--领域主服务器--用户管理员--密码管理员
但是这个命令会抛出错误
请求中
我正在评估作为OpenID提供者的Key斗篷,我不知道如何设置它。我只是想让最简单的设置工作
到目前为止,我已经做到了:
创造了一个王国
将我的web应用程序注册为新客户端。客户端协议开放id和访问类型机密
创建一个用户,并为其设置密码
然后,我访问我的web应用程序,它会重定向到KeyClope登录页面,但我不断收到无效的用户名或密码
我想我可能错过了一些关于客户角色的步骤。我的登录失败与此相关吗?文档很差,我只想用一个基本的设置开始运行
这是我得到的部分堆栈跟踪
10:13:56,201 W
从Key斗篷8.0.1开始,用户可以注册多个OTP设备:
有没有办法限制用户的OTP凭据(设备)数量?
我想要实现的行为是只允许一个用户激活一个OTP设备,这样用户就不需要从登录页面的下拉列表中选择设备(以前的KeyClope版本之前的行为)。这没有意义。您可能会以某种方式限制用户在KeyClope中只有一个OTP设备实例。但您不能限制用户仅在单个设备上拥有单个OTP实例。用户可以将相同的初始OTP QR码扫描到许多设备,然后所有这些设备都提供相同的OTP码。(我也使用它,因为单一OTP设备对
我正在学习这个教程
我的访问令牌如下所示:
"realm_access": {
"roles": [
"Engineer",
"offline_access",
"uma_authorization"
]
},
"resource_access": {
"test": {
&
当我尝试使用新的自定义用户角色创建时,我可以创建该用户,但在“角色映射”选项卡上,它没有反映:
有效载荷:
{
"username": "user1",
"enabled": true,
"firstName": "user",
"lastName": "name",
"credentials":
我想对我的客户隐藏KeyClope的界面
是否可以通过API(特别是授权码授予类型)登录到KeyClope,以便我可以构建一个React组件,例如让我的客户登录
是否有可能构建我自己的帐户应用程序,通过API与KeyClope交互
只有我的员工才可以使用Key斗篷的界面来管理安全性。您可以将应用程序重定向到Key斗篷登录页面,并更改该登录页面,使其具有使用Key斗篷所需的外观和感觉。要从您的帐户应用程序与Keyclope Api进行通信,您可以使用。是的,几乎每个SPA(Angular、Reac
我的要求如下:
KeyClope有一个管理员用户,该用户不受任何限制
我们有多个组,每个组都有自己的组管理员。例如,对于A组和B组,管理员分别是A-admin和B-admin,依此类推
组管理员有权查看、添加、更新和删除相应组的用户
一个组管理员无权查看其他组成员用户
我认为限制组管理员修改用户的单个属性是不可能的
我已经成功地实现了一些功能,这些功能限制组管理员公开编辑他们自己的用户,但他们不能添加新用户,他们也可以查看其他组成员,但不能编辑。
任何帮助都将不胜感激
我已经安装了KeyClock服务器4.3.4。
如何激活keydape的restapi(添加用户、启用用户、禁用用户…)
关于要做到这一点,第一步是创建一个管理员帐户(一旦打开,系统会提示您这样做)
接下来的步骤取决于您想要如何创建配置。通过管理控制台GUI或RESTAPI
通过ADMINRESTAPI执行此操作的步骤。
首先,您必须从以下位置获取令牌:
请注意,在下面的调用中,您需要做的唯一更改是您的KeyClope服务器地址以及管理员用户名和密码的值
一旦您从上述通话中获得令牌,您可以通过
KeyClope管理面板提供了模拟域用户的功能,这将导致重定向到此用户的帐户客户端(/account)“impersonated”。例如,这允许管理员更改用户的电子邮件、名字等
也可以在域的“客户端”模拟用户。例如,一个后端有一个RESTAPI,它是由keylcoak“保护”的
..或者这是可能的
我正在尝试在KeyClope中创建一个基于JS的策略,文档说明:
要创建新的基于JavaScript的策略,请在
策略列表右上角的下拉列表
但是,当我转到MyClient->Authorization->Policies并单击右上角的CreatePolicy下拉列表时,没有“基于JS的策略”选项
我是不是遗漏了什么?列表中唯一的策略是默认策略,它的类型是js,这也让我感到困惑,因为这意味着基于js的策略应该可用
我正在运行KeyClope10.0.0,但我也尝试了版本9.0.3您需要启用脚本功能
我正在使用Key斗篷11.0并寻找一种方法来获取与给定领域关联的所有用户联合提供者。在我的设置中,我创建了一个虚拟领域,并向其中添加了一个虚拟联盟
我使用获取领域,然后查看jsonuserFederationProviders字段,但是没有任何内容。我还尝试了以下Java代码:
import org.keycloak.admin.client.Keycloak;
import org.keycloak.representations.idm.RealmRepresentation;
import
我正在使用KeyClope,我想在SAML身份提供程序元数据中将此属性WantAuthnRequestsSigned更改为false,
thx只需编辑保存的SAML IDP元数据xml文件,并直接将WantAuthnRequestsSigned更改为false。
您还需要在客户端设置中关闭所需客户端签名
基于,WantAuthnRequestsSigned硬编码为true。但这并不重要
如何访问或启用旧的KeyClope用户帐户控制台?在这篇关于新用户帐户控制台的文章中,他们说“旧帐户控制台对需要它的人仍然可用”,但我找不到在哪里启用它。您需要:
去你的领域
而在帐户主题中,则明确选择了“密钥斗篷”
单击保存
在Account(帐户)下拉菜单中,您将至少看到以下内容:
基础
钥匙斗篷
keydepeat.v2
默认情况下,新版本被选中keydape.v2。KeyClope指的是“旧”版本
我在该租户中有一个租户和多个应用程序
我想对多个客户端进行身份验证。
每次我选择不同的客户端时,我都会更新keydeposeconfig并像这样初始化keydepose
this.keycloakAuth
.init({
onLoad: 'check-sso',
checkLoginIframe: false,
})
但结果总是错误的,
在同一个应用程序中,是否有不同的方法
我正在使用keydove的Admin restapi向用户发送验证电子邮件。具体而言,使用端点:
admin/realms/{realmName}/users/{userId}/execute-actions-email?redirect_uri={redirectURI}&client_id={clientId}
电子邮件已成功发送,但Key斗篷选择的电子邮件模板是“更新您的帐户”模板,而不是“验证电子邮件”模板
有没有一种方法可以让Key斗篷使用正确的模板
更新:
也尝试使用发送验
我想添加一个硬编码的声明。在这篇文章之后,我能够部分地创建声明
如何设置:
config.jsonType.label=String
及
config.access.token.claim=true
kcadm create clients/6842adac-982d-4b89-88b0-22b68a332807/protocol-mappers/models -r demorealm -s name=aud1 -s protocol=openid-connect -s protocolMap
以下是我的应用程序的工作方式:
如果用户有足够的芯片(代币)可以从另一个应用程序购买,或者可以在某个事件发生时授予他们,那么他们可以使用我的应用程序的某些功能
用户有一个与他们相关的属性,称为“chip”,它表示一些数字。这些信息可能应该被表示为索赔
我希望keydove为我做这个授权——检查用户是否可以使用该功能。我遇到过基于JavaScript的策略。似乎他们能够操作令牌中的信息-如用户电子邮件等,但这不是我的情况,令牌可以包含过时的信息,即当令牌生成时,用户有足够的芯片,但从那时起他就花
如何禁用外部IDP的用户名/密码登录
我知道我可以使用自定义主题来隐藏http表单,但我想正确地使用它
据我所知,我必须至少创建自定义的第一个代理登录和浏览器身份验证流,对吗
在第一次从IDP登录后,我必须在KeyClope中创建用户,但不要使用密码选项
而且浏览器流必须更新为不显示用户名/密码表单,对吗
有人能提供适当的例子吗
谢谢尝试此Costam身份验证流程
通过自动链接代理帐户,用户无需设置密码。至于用户名,它将自动从身份提供商导入。您找到解决方案了吗?我在Keyclope邮件列表上发
我正在使用KeyClope管理API创建一个新用户。
在创建用户之前,如何检查给定的密码是否确实符合域密码策略
我正在使用以下代码:
Response response = usersResource.create(userRepresentation);
String userId = response.getLocation().getPath().replaceAll(".*/([^/]+)$", "$1");
UserResource userResource = usersResour
我有一个后端hello world应用程序,使用以下ACL
match-claims:
aud: appserver
iss: http://192.168.1.132/auth/realms/master
resources:
- uri: /app
methods:
- GET
roles:
- user
require-any-role: true
登录后立即导致404,日志如下
gatekeeper_1 | 1.
我将Key斗篷用于angular项目,我创建了两个领域RoleAdmin和member、client和两个usersIrma和Sheldon
我是初学者
我想允许一个用户irma访问客户端,而另一个用户sheldon拒绝访问客户端。从角度看,我可以建议您使用一个库来进行授权,比如:。一旦您进行了设置,并配置了authGuard,就可以通过路由器对象中的角色参数来保护URL了
例如,取自并添加到KeyClope角色位:
import { AuthGuard } fro
请求你的帮助。
我们在openshift中启动docker image独立KeyClope。
我们使用REST添加新用户。但一切都很慢。对于24万用户,上传需要24小时
有人见过这个吗
如何添加和更新用户
我们的服务器:CPU 4 GB。
我们的keyclock 7.3.1.GA版本
连接不断中断,我们被迫基于密钥斗篷发送用户包,执行了以下操作:
CREATE EXTENSION pg_trgm;
CREATE INDEX in_user_entity_001
ON user_ent
我安装了全新的Liferay 7.2和KeyClope 7
我为Liferay创建了一个KeyClope客户端
我在Liferay中启用Openid连接
在Liferay中,我使用KeyClope OpenID连接发现端点配置OpenID连接提供程序
有生之年
单击“登录”,将显示“登录”
单击OpenID连接,将显示OpenID连接登录页面
我在选择KeyClope提供程序的情况下单击登录,浏览器将重定向到KeyClope登录页面
我输入我的用户和密码,然后单击登录
我的浏览器被重定向回Lif
我正在使用KeyClope 7.0.1,并且在登录页面中启用了Resigration链接。我的用例如下所示:
注册后,应将用户创建为禁用。
管理员用户验证帐户,然后手动启用用户
问题是用户在完成注册后会自动登录。你知道怎么预防吗?(我也不需要启用任何进一步的步骤,例如验证电子邮件)
在Keyclope邮件列表和下面的帖子中,据说自动登录是默认行为,那么是否有任何方法可以改变这一点
您阅读了吗?谢谢,这解决了自动登录的问题。但是,用户可以直接登录。我希望有一个现成的方法将用户创建为禁用的。另外,如
当我向keylock jwt令牌添加新信息时,更新当前访问令牌或向用户提供新访问令牌的可能方式有哪些?
例如:当我向当前访问令牌中未包含的特定用户添加新角色时。您需要以与第一次相同的方式请求新令牌(访问、刷新、id)。无法更新现有令牌
在Quarkus中使用KeyClope的权限和作用域时,我们遇到了一些非常奇怪的情况。
我们想要完成的是:使用KeyClope和作用域和资源()设置一个经过身份验证和授权的HTTP API。
我们有以下application.properties文件:
quarkus.log.level=DEBUG
quarkus.oidc.auth-server-url=<keycloak-url>
quarkus.oidc.client-id=<client-id>
quarkus
我正在尝试使用KeyClope进行身份中介。来自身份提供者的声明非常有条理。现在,我想将其中一个声明的值映射到KeyClope中的角色组。
有没有办法做到这一点
谢谢好的,为此,您需要使用Admin CLI,更具体地说是,在本例中,它需要一些自定义脚本来实现自动化。查看上面链接的文档,了解如何设置ut。这将是这样的:
#/bin/bash
...
#kc-admin.sh的初始化内容
...
#假设您已将索赔表IdP作为此脚本的第一个参数
索赔=“1美元”
#使用jqü从JSON中筛选someC
我有一个关于KeyClope和Openshift的棘手问题
我已经在Openshift Origin安装中设置了一个KeyClope服务器,并为其设置了一个外部路由
我还在同一个Openshift源中设置了一个nodejs应用程序,我正在尝试使用其外部路由DNS访问KeyClope服务器
KeyClope服务器可从identity.myapp.com外部获得
我的应用程序可从app.myapp.com外部访问
但是,当我的nodejs应用程序尝试使用令牌端点检索令牌时,它遇到了一个无主机路由的错
我设法运行了这个示例
SP启动的SSO工作正常
IDP启动的SSO url应该是什么?谢谢。请参阅:
在客户端的“设置”选项卡中,您需要
指定IDP启动的SSO URL名称。这是一个带有
里面没有空格。在此之后,您可以在
以下网址:
root/auth/realms/{realm}/protocol/saml/clients/{url name}
见:
在客户端的“设置”选项卡中,您需要
指定IDP启动的SSO URL名称。这是一个带有
里面没有空格。在此之后,您可以在
以下网址:
root/a
我知道keybeave有内置的客户端,我们稍后会添加用户
但是一般来说,在keydove中客户端和用户之间有什么区别?简而言之,不仅对于keydove,对于OAuth和OpenId Connect,客户端代表一些用户可以访问的资源。Key斗篷的内置客户端代表了Key斗篷本身的一些资源。客户端和用户是Key斗篷中两个完全不同的结构
简单地说,客户机是一个应用程序。应用程序的示例可以是yelp.com或任何移动应用程序。客户端可以是一个简单的RESTAPI。Key斗篷的内置客户端供Key斗篷内部使用
我们正在从SpringSecuritySAML转换为使用Key斗篷作为SAML代理
首先,我通过从我们的身份提供者导入IdP元数据XML,在KeyClope中配置了IdP。这将导致服务提供商实体ID变为https://saml.test-nemlog-in.dk/,登录后,我从IdP收到以下错误:
The entity ID https://saml.test-nemlog-in.dk/ could not be found
我认为使用了错误的值,因为它必须是SP entityId(https
我使用的是keydove,我已经创建了一个dropwizard服务,我想开始在其中强制执行角色
我尝试过使用@RoleSalowDuser注释,但它总是返回403
我也试过@PermitAll,效果很好
我知道我已正确连接到服务器,因为用户在电子邮件、姓名等中有正确的信息,但是角色来自哪里
有没有办法查看用户拥有的角色?在您的应用程序领域中,在KeyClope管理控制台上有一个名为“角色”的部分。在这里,您必须添加将由java安全性检查的角色。
如果希望注册后的用户自动接收角色,则需要将此角色添
有人能解释一下Key斗篷设置的cookies吗:
密钥斗篷会话、Oauth令牌请求状态、密钥斗篷标识
每个cookie的相关性是什么?它们是供KeyClope内部使用的cookie
keydove\u IDENTITY包含一个带有用户ID的令牌(JWT)。您可以使用(例如)查看其内容。此cookie与您的浏览器会话共存,也可以使用SSO刷新。(例如,如果您在“管理我的帐户”中更改了一些个人数据)
keydove\u会话与相关领域关联的会话id
Oauth\u token\u request\u
我想为用户会话在失效模式下配置带有嵌入式ISPN缓存的Key斗篷
根据文档,失效模式意味着每个节点都有自己的缓存,只有失效才会传播到其他节点(缓存仅对读取操作有用)。我知道性能不是最优的,但是JDBC商店成为了我感兴趣的唯一真相来源。此外,由于我每周需要存储100万个用户会话,ISPN缓存很快就会被填满(6GB实例),会话可能会使用钝化/激活机制以高频率从数据库中写入/读取
但是我无法让它工作,没有错误,但是行为不是预期的:在多次登录操作之后,数据库仍然是空的
<subsystem xm
标签: Keycloak
basic-authenticationquarkus
我想用基本身份验证保护rest服务。这些凭据应用于从该客户端的KeyClope实例获取访问令牌,并检查服务上允许的角色
quarkus声明至少需要安装一个提供基于用户名/密码的标识提供程序的扩展。它仅指JPA IdentityProvider和JDBC IdentityProvider。但我想验证一下agains的密钥斗篷
我已使用quarkus oidc成功安装了web应用程序和rest服务。它对用户进行身份验证,并通过访问令牌提供对rest服务的访问
我还成功地使用了基本身份验证
My Ke
我已经将ApacheHTTPD配置为带有SSL的反向代理。我正在尝试在代理后面使用http配置KeyClope和鳄梨酱。我使用的是keydape、mysql、鳄梨酱和鳄梨酱容器。我让整个流程一直在工作,直到KeyClope尝试重定向回鳄梨酱页面。仅供参考…我的配置与以下问题非常相似,但有一个不同的访问错误,如下所示:
因此,用户通过以下方式访问Web服务器:。Httpd重定向到http://guacamole:8080/guacamole. 鳄梨酱重定向到KeyClope进行身份验证。以有效用
以下是带有角色描述的JSON:
{
"id": "<role-id>",
"name": "<role-name>",
"composite": true,
"composites": {
"client": {
"realm-management&qu
我试图使用kcadm.sh更新用户的属性,但失败了
# keycloak-12.0.1/bin/kcadm.sh update users/10777a97-5f47-4784-99e0-3251b581262d -r apps -s 'addributes.guid=["newvalue"]'
HTTP error - 400 Bad Request
我遵循下面的指南,看起来上面的命令应该可以工作。
我可以更新其他字段:
# keycloak-12.0.1/bin/kc
是否有任何方法可以为单个应用程序使用多个init方法,或者我可以在一个应用程序中多次调用init方法,因为我希望为依赖于同一领域的不同客户端获取访问令牌
基本上是根据应用程序选择在一个应用程序中加载不同客户端的数据。this.keydapeauth.init({onLoad:'check sso',checkLoginIframe:false,})
我目前正在开发一个应用程序,其中我使用KeyClope连接到ldap服务器。我有一些特定的命令,我想在服务器启动并运行后运行。例如,我想运行以下程序
./kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin --password password
./kcadm.sh update realms/master -s sslRequired=NONE
因为我没有在虚拟
我已经实现了一个自定义事件侦听器提供程序
我能够接收除领域创建事件(新领域创建)之外的所有事件。我想在创建领域的过程中也得到这个事件
keydepeat支持这一点吗?如果没有,还有其他实现这一目标的可能性吗
我使用的是KeyClope 4.5.0版
提前感谢。在对keydeport代码进行了一些研究之后,我得出结论,keydeport默认不提供该事件
所以我修改了下面的keydape文件,这将有助于捕获领域创建和删除事件
更改1(最重要):
文件:
keydape/services/src/ma
我们正在为所有用户使用KeyClope v4.5.0.Final和配置的OTP。如果用户手边没有google Authenticator,是否可以生成备份代码(如google如何进行双因素身份验证)?是的,但您必须为OTP Authenticator创建自己的实现。在我的公司,我们定制了默认的OTP验证器和配置OTP所需操作,因此,现在OTP启动后,用户将收到OTP恢复代码,该代码将存储在其属性中(例如,用户->john.doe->属性)。然后,当用户必须提供下一个OTP代码时,他还可以点击OT
我们有一个领域,配置了多个用户和多个OIDC客户端。我们希望将另一个应用程序(OIDC客户端)连接到该领域。不幸的是,客户端无法检查是否存在任何属性或角色
如何配置keydepot,使其与特定的OIDC客户端进行身份验证,但如果用户没有特定的角色,则返回失败的身份验证?要实现这一点,您应该实现keydepot的AuthenticatorFactory和Authenticator接口。寻找更多信息。
在authenticate()方法中,您将编写类似以下内容:
If(client == yourC
我正在尝试使用flaskodbc+keydove构建一些测试应用程序
我成功地启动了keybeave,创建了一个领域、一个角色和一个分配了这个角色的用户。现在我试图从OpenIDConnect对象中获取“role”和“openid_id”字段,但这两个字段都没有返回
我的申请代码如下
import json
import flask
from flask import Flask, render_template, g
import flask_login
from flask_login i
条款和条件仅在用户首次注册时提供。如果条款发生变化,我们需要在登录时向用户提供更新的条款。但我看不到实现这一点的方法。启用条款和条件(身份验证->必需操作)后,您必须在每个用户的基础上将其作为必需操作(用户->->详细信息->必需用户操作)
理论上,您可以选中“默认操作”复选框,将其添加为所有新用户的必需操作,但我无法使其正常工作。这可能是因为我们不允许用户自行注册
如果您是手动登录用户(即不允许他们自己注册),那么您必须将此操作作为该过程的一部分单独添加到每个用户。当用户接受条款时,所需的操作
我们在单页应用程序中使用keydove 3.4.0/keydove.js。KeyClope将其数据存储在MariaDB中
当我重新启动keydape服务器(不是MariaDB)并刷新我的单页应用程序时,我被重定向到登录页面。我认为keydepot在其数据库中存储所有令牌,这些令牌在重启后是否仍然有效?还是所有会话都将注销
我是否必须使用脱机令牌来支持此场景
即使在用户注销或服务器重新启动后,脱机令牌仍然有效。
这篇文章由keybeave开发团队的负责人撰写:
JPA用户会话提供程序是
放弃(性
对于我的项目,我的keydepot中有用户,并且正确设置了他们的身份提供者链接用户ID。
其中一些用户没有为我的项目的客户端设置角色。
这些用户登录到我的应用程序(因为他们有一个有效的Google帐户),然后应用程序必须管理他们不应该访问应用程序的事实(因为他们没有角色)。
我想告诉keydape,如果用户没有角色,不要重定向到我的应用程序。
我已经为用户名密码表单完成了这项工作(使用脚本,请参见下面的脚本代码),但我无法成功地使用Identity Provider Redirector完成这项
目前,我正在使用此端点将用户一次添加到一个组中:
PUT /{realm}/users/{id}/groups/{groupId}
在我的用例中,批量执行这些矫揉造作是有益的,到目前为止,我还没有找到一种记录在案的方法,有什么方法可以做到吗?
谢谢您可以尝试更新完整的用户数据
PUT/{realm}/users/{id}
使用部分用户表示只包含最小json和“groups”数组
我发现几乎所有字段都标记为可选:
cfr谢谢你的回复,我认为这是一个很好的解决办法。然而,我仍然没有得到它的工作。在
上一页 1 2 3 4 5 6 7 8 9 ...
下一页 最后一页 共 19 页