Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Keycloak 通过CLI为KeyClope配置reCAPTCHA_Keycloak_Keycloak Rest Api - Fatal编程技术网

Keycloak 通过CLI为KeyClope配置reCAPTCHA

Keycloak 通过CLI为KeyClope配置reCAPTCHA,keycloak,keycloak-rest-api,Keycloak,Keycloak Rest Api,有没有办法通过CLI为KeyClope独立安装配置reCAPTCHA?更准确地说,是否可以在kcadm.sh的帮助下执行所述的所有步骤?您可以使用 第一步是获取管理令牌,以便调用Rest API: curl -d "client_id=admin-cli" \ -d "username=$ADMIN_NAME" \ -d "password=$ADMIN_PASSWORD" \ -d

有没有办法通过CLI为KeyClope独立安装配置reCAPTCHA?更准确地说,是否可以在
kcadm.sh
的帮助下执行所述的所有步骤?

您可以使用

第一步是获取管理令牌,以便调用Rest API:

curl    -d "client_id=admin-cli" \
        -d "username=$ADMIN_NAME" \
        -d "password=$ADMIN_PASSWORD" \
        -d "grant_type=password" \
        https://$KEYCLOAK_IP/auth/realms/master/protocol/openid-connect/token
您将获得一个带有admin令牌的
json响应。从该响应中提取访问令牌(称为
$access\u令牌

现在,我们需要获取与注册流链接的所有执行的列表:

curl  -X GET https://$KEYCLOAK_IP/auth/admin/realms/$REALM_NAME/authentication/flows/registration/executions \
                -H "Content-Type: application/json" \
                -H "Authorization: bearer $ACCESS_TOKEN"
从该
json响应
,提取
id
“providerId=registration-recaptcha操作”
。让我们调用
id
$id\u RECAPTCHA

接下来,进行注册时所需的reCaptcha:

CAPTCHA_DATA='{"id":"$ID_RECAPTCHA","requirement":"REQUIRED","providerId":"registration-recaptcha-action"}'

curl -X PUT https://$KEYCLOAK_IP/auth/admin/realms/$REALM_NAME/authentication/flows/registration/executions \
                            -H "Content-Type: application/json" \
                            -H "Authorization: bearer $ACCESS_TOKEN"\
                            -d "$JSON_DATA"
最后,要配置您自己的验证码:

CONFIG_DATA='{"config":{"site.key":"<YOUR SITE KEY>","secret":"<YOUR SECRET>","useRecaptchaNet":"<True or False>"},"alias":"<The CAPTCHA ALIAS>"}'

curl -X POST https://$KEYCLOAK_IP/auth/admin/realms/$REALM_NAME/authentication/executions/$ID_RECAPTCHA/config \
                -H "Content-Type: application/json" \
                -H "Authorization: bearer $ACCESS_TOKEN"\
CONFIG_DATA='{“CONFIG”:{“site.key”:“secret”:“userecapchanet”:“}”,别名:“}”
curl-X POST https://$keydapore\u IP/auth/admin/realms/$REALM\u NAME/authentication/executions/$ID\u RECAPTCHA/config\
-H“内容类型:应用程序/json”\
-H“授权:持票人$ACCESS_令牌”\
接下来,最好的方法是使用一些bash脚本自动化这个过程