<openidconnect>
<providers>
<![CDATA[[
{
"name": "Keycloak",
"title": "Keycloak apache",
"authenticationClaimName": "email",
"authenticationUserPropertyName": "email",
"providerconfig": {
"issuer": "https://sso.site.ru/realms/DTU",
"authorization_endpoint": "https://sso.site.ru/realms/DTU/protocol/openid-connect/auth",
"token_endpoint": "https://sso.site.ru/realms/DTU/protocol/openid-connect/token",
"response_types_supported": ["code"],
"scopes_supported": ["openid"],
"jwks_uri": "https://sso.site.ru/realms/DTU/protocol/openid-connect/certs",
"userinfo_endpoint": "https://sso.site.ru/realms/DTU/protocol/openid-connect/userinfo"
},
"clientconfig": {
"authority": "https://sso.site.ru/realms/DTU",
"client_id": "client_id",
"client_secret": "client_secret",
"redirect_uri": "https://webapp.site.ru/apache-test-oidc1c/authform.html",
"response_type": "code",
"scope": "openid",
"loadUserInfo": false
}
}
]]]></providers>
</openidconnect> HTTP request failed with status: 400Error: Bad request Не удалось выполнить OpenID Connect аутентификацию. Проверьте правильность настроек подключения.Неверно указан пользователь или парольНеправильное имя пользователя

<openidconnect>
<providers>
<![CDATA[[
{
"name": "keycloak",
"title": "KeyCloack2",
"authenticationClaimName": "sub",
"authenticationUserPropertyName": "email",
"endSessionEndpoint": "https://sso.site.ru/realms/DTU/protocol/openid-connect/logout",
"discovery": "https://sso.site.ru/realms/DTU/.well-known/openid-configuration",
"clientconfig": {
"authority": "https://sso.site.ru/realms/DTU",
"client_id": "1ctestOIDCIIS",
"client_secret": "c512jRabHH3xSLZe9DL9J3uXtXaiMrXj",
"redirect_uri": "https://webapp.site.ru/BP-DTU-Test/authform.html",
"post_logout_redirect_uri": "https://webapp.site.ru/BP-DTU-Test/exit.html",
"scope": "openid",
"response_type": "code",
"filterProtocolClaims": true,
"loadUserInfo": false
}
}
]]]></providers>
</openidconnect>HTTP request failed with status: 400Error: Bad request Не удалось выполнить OpenID Connect аутентификацию. Проверьте правильность настроек подключения.Неверно указан пользователь или парольНеправильное имя пользователя
{
"clientId": "1ctestOIDCIIS",
"name": "",
"description": "",
"rootUrl": "",
"adminUrl": "",
"baseUrl": "",
"surrogateAuthRequired": false,
"enabled": true,
"alwaysDisplayInConsole": false,
"clientAuthenticatorType": "client-secret",
"secret": "c512jRabHH3xSLZe9DL9J3uXtXaiMrXj",
"redirectUris": [
"https://webapp.site.ru/OIDc-1ctest/authform.html"
],
"webOrigins": [
"/*"
],
"notBefore": 0,
"bearerOnly": false,
"consentRequired": false,
"standardFlowEnabled": true,
"implicitFlowEnabled": false,
"directAccessGrantsEnabled": true,
"serviceAccountsEnabled": false,
"publicClient": false,
"frontchannelLogout": true,
"protocol": "openid-connect",
"attributes": {
"realm_client": "false",
"oidc.ciba.grant.enabled": "false",
"client.secret.creation.time": "1760373220",
"backchannel.logout.session.required": "true",
"standard.token.exchange.enabled": "false",
"frontchannel.logout.session.required": "true",
"oauth2.device.authorization.grant.enabled": "true",
"display.on.consent.screen": "false",
"backchannel.logout.revoke.offline.tokens": "false"
},
"authenticationFlowBindingOverrides": {},
"fullScopeAllowed": true,
"nodeReRegistrationTimeout": -1,
"defaultClientScopes": [
"email",
"username"
],
"optionalClientScopes": [],
"access": {
"view": true,
"configure": true,
"manage": true
}
}<openidconnect>
<providers>
<![CDATA[[
{
"name": "keycloak",
"title": "KeyCloack2",
"authenticationClaimName": "email",
"authenticationUserPropertyName": "name",
"endSessionEndpoint": "https://sso.site.ru/realms/DTU/protocol/openid-connect/logout",
"discovery": "https://sso.site.ru/realms/DTU/.well-known/openid-configuration",
"clientconfig": {
"authority": "https://sso.site.ru/realms/DTU",
"client_id": "1ctestOIDCIIS",
"client_secret": "c512jRabHH3xSLZe9DL9J3uXtXaiMrXj",
"redirect_uri": "https://webapp.site.ru/BP-DTU-Test/authform.html",
"post_logout_redirect_uri": "https://webapp.site.ru/BP-DTU-Test/exit.html",
"scope": "openid email",
"response_type": "code",
"filterProtocolClaims": true,
"loadUserInfo": false
}
}
]]]></providers>
</openidconnect>но при входе, после успешной аутентификации на keycloak получаю ошибку от 1с network error.
https:// <web-server-name> /<publication-name>
https://<keycloak-server-name>/realms/<realm-name>/protocol/openid-connect/auth?client_id=1c-test-OIDC&redirect_uri=https%3A%2F%2F<web-server-name>%2<publication-name>%2Fauthform.html&response_type=id_token%20token&scope=openid%20email&state=9ecac7f6748a415b8daaec578c3135aa&nonce=0f2d6a320d2340e6ae68178a15da18c9


curl https://<keycloak-server-name>/realms/<realm-name>/protocol/openid-connect/auth
<!DOCTYPE html>
<html class="login-pf" lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="robots" content="noindex, nofollow">
<meta name="color-scheme" content="light dark">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Sign in to <realm-name></title>
<link rel="icon" href="/resources/ahbgj/login/keycloak.v2/img/favicon.ico" />
<link href="/resources/ahbgj/common/keycloak/vendor/patternfly-v5/patternfly.min.css" rel="stylesheet" />
<link href="/resources/ahbgj/common/keycloak/vendor/patternfly-v5/patternfly-addons.css" rel="stylesheet" />
<link href="/resources/ahbgj/login/keycloak.v2/css/styles.css" rel="stylesheet" />
<script type="importmap">
{
"imports": {
"rfc4648": "/resources/ahbgj/common/keycloak/vendor/rfc4648/rfc4648.js"
}
}
</script>
<script type="module" async blocking="render">
const DARK_MODE_CLASS = "pf-v5-theme-dark";
const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
updateDarkMode(mediaQuery.matches);
mediaQuery.addEventListener("change", (event) => updateDarkMode(event.matches));
function updateDarkMode(isEnabled) {
const { classList } = document.documentElement;
if (isEnabled) {
classList.add(DARK_MODE_CLASS);
} else {
classList.remove(DARK_MODE_CLASS);
}
}
</script>
<script type="module" src="/resources/ahbgj/login/keycloak.v2/js/passwordVisibility.js"></script>
<script type="module">
import { startSessionPolling } from "/resources/ahbgj/login/keycloak.v2/js/authChecker.js";
startSessionPolling(
"/realms/<realm-name>/login-actions/restart?skip_logout=true"
);
</script>
<script type="module">
document.addEventListener("click", (event) => {
const link = event.target.closest("a[data-once-link]");
if (!link) {
return;
}
if (link.getAttribute("aria-disabled") === "true") {
event.preventDefault();
return;
}
const { disabledClass } = link.dataset;
if (disabledClass) {
link.classList.add(...disabledClass.trim().split(/\s+/));
}
link.setAttribute("role", "link");
link.setAttribute("aria-disabled", "true");
});
</script>
<script>
// Workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1404468
const isFirefox = true;
</script>
</head>
<body id="keycloak-bg" class="" data-page-id="login-error">
<div class="pf-v5-c-login">
<div class="pf-v5-c-login__container">
<header id="kc-header" class="pf-v5-c-login__header">
<div id="kc-header-wrapper"
class="pf-v5-c-brand"><div class="kc-logo-text"><span><realm-name> Keycloak</span></div></div>
</header>
<main class="pf-v5-c-login__main">
<div class="pf-v5-c-login__main-header">
<h1 class="pf-v5-c-title pf-m-3xl" id="kc-page-title"> We are sorry...
</h1>
</div>
<div class="pf-v5-c-login__main-body">
<div id="kc-error-message">
<p class="instruction">Invalid Request</p>
</div>
<div class="pf-v5-c-login__main-footer">
</div>
</div>
<div class="pf-v5-c-login__main-footer">
</div>
</main>
</div>
</div>
</body>
</html>


-- Executing [s@hdlr-queue-miss-call:3] DumpChan("SIP/tg200_out-00000052", "") in new stack
Dumping Info For Channel: SIP/tg200_out-00000052:
================================================================================
Info:
Name= SIP/tg200_out-00000052
Type= SIP
UniqueID= 1726059137.370
LinkedID= 1726059137.370
CallerIDNum= +79NNNNNNNN
CallerIDName= +79NNNNNNNN
ConnectedLineIDNum= (N/A)
ConnectedLineIDName=(N/A)
DNIDDigits= 89XXXXXXXX
RDNIS= (N/A)
Parkinglot= default
Language= ru
State= Up (6)
Rings= 0
NativeFormat= (alaw)
WriteFormat= alaw
ReadFormat= alaw
RawWriteFormat= alaw
RawReadFormat= alaw
WriteTranscode= No
ReadTranscode= No
1stFileDescriptor= 41
Framesin= 112
Framesout= 109
TimetoHangup= 0
ElapsedTime= 0h0m2s
BridgeID= (Not bridged)
Context= hdlr-queue-miss-call
Extension= s
Priority= 3
CallGroup=
PickupGroup=
Application= DumpChan
Data= (Empty)
Blocking_in= (Not Blocking)
Variables:
CLIENT_NUMBER=+79NNNNNNNN
ARGC=1
ARG1=+79NNNNNNNN
MACRO_DEPTH=0
AGISTATUS=SUCCESS
MACRO_IN_HANGUP=1
QUEUEPOSITION=1
ABANDONED=TRUE
RTPAUDIOQOSRTT=minrtt=0.000000;maxrtt=0.000000;avgrtt=0.000000;stdevrtt=0.000000;
RTPAUDIOQOSLOSS=minrxlost=0.000000;maxrxlost=0.000000;avgrxlost=0.000000;stdevrxlost=0.000000;reported_minlost=0.000000;reported_maxlost=0.000000;reported_avglost=0.000000;reported_stdevlost=0.000000;
RTPAUDIOQOSJITTER=minrxjitter=0.000048;maxrxjitter=0.002543;avgrxjitter=0.000485;stdevrxjitter=12915069404309895769278759227930250372078691795552516695249243261875582353368665817088.000000;reported_minjitter=0.000000;reported_maxjitter=0.000000;reported_avgjitter=0.000000;
RTPAUDIOQOS=ssrc=823599191;themssrc=1735032032;lp=0;rxjitter=0.000000;rxcount=110;txjitter=0.000052;txcount=109;rlp=0;rtt=0.000000
QUEUEJOINTIME=1726059137
QUEUENUM=1021
VQ_MAXWAIT=
QMAXWAIT=60
VQ_MOH=
QMOH=
VQ_AANNOUNCE=
QAANNOUNCE=
VQ_CONFIRMMSG=
QC_CONFIRM=0
SIGNORE=TRUE
FORWARD_CONTEXT=block-cf
CFIGNORE=TRUE
CWIGNORE=TRUE
GOSUB_RETVAL=
REC_POLICY_MODE=FORCE
REC_POLICY_MODE_SAVE=FORCE
VQ_POSITION=
QPOSITION=
VQ_RULE=
QRULE=
VQ_AGI=
QAGI=
VQ_GOSUB=
QGOSUB=
VQ_OPTIONS=
QOPTIONS=tC
VQ_RETRY=
QRETRY=
QCANCELMISSED=C
VQ_JOINMSG=
QJOINMSG=
RVOL_MODE=dontcare
VQ_AINFO=
QAINFO=
VQ_CIDPP=
QCIDPP=
NODEST=1021
DIAL_OPTIONS=HhTtrM(auto-blkvm)
BLKVM_CHANNEL=SIP/tg200_out-00000052
TTL=64
CALLEE_ACCOUNCODE=
AMPUSERCIDNAME=
AMPUSER=
REALCALLERIDNUM=+79NNNNNNNN
HOTDESKCALL=0
HOTDESKEXTEN=tg200_out
HOTDESCKCHAN=tg200_out-00000052
TOUCH_MONITOR=1726059137.370
CALLINGNUMPRES_SV=allowed_not_screened
CALLINGNAMEPRES_SV=allowed_not_screened
REVERSAL_REJECT=FALSE
MOHCLASS=
CALLED_BLACKLIST=1
returnhere=1
FROM_DID=89XXXXXXXX
REC_STATUS=RECORDING
RECORD_ID=SIP/tg200_out-00000052
MIXMON_ID=0x7f7098046830
LOCAL_MIXMON_ID=0x7f7098046830
MIXMONITOR_FILENAME=/var/spool/asterisk/monitor/2024/09/11/in-89XXXXXXXX-+79NNNNNNNN-20240911-175217-1726059137.370.wav
CALLFILENAME=in-89XXXXXXXX-+79NNNNNNNN-20240911-175217-1726059137.370
FROMEXTEN=+79NNNNNNNN
MON_FMT=wav
TIMESTR=20240911-175217
YEAR=2024
MONTH=09
DAY=11
NOW=1726059137
DIRECTION=INBOUND
SIPCALLID=68385c9075c8922825e5784009d72ae7@172.17.1.4
SIPDOMAIN=172.16.1.239
SIPURI=sip:+79NNNNNNNN@172.17.1.4
================================================================================ [ext-miscdests]
exten => 2,1,Noop(MiscDest: test)
same => n,Set(CHANNEL(hangup_handler_push)=hdlr-queue-miss-call,s,1(${CALLERID(num)}))
exten => 2,n(dest-ext),Goto(ext-queues,1021,1)[hdlr-queue-miss-call]
exten => s,1,Noop(---==== Handler queue miss call ===---)
same => n,Set(CLIENT_NUMBER=${ARG1})
same => n,Noop(DIALSTATUS = ${DIALSTATUS})
same => n,GotoIf($["${DIALSTATUS}"="NOANSWER"]?:end_call)
same => n,AGI(tg-noanswer.php, ${CLIENT_NUMBER}, ${STRFTIME(${EPOCH},,%Y.%m.%d--H:%M:%S)})
same => n(end_call),Hangup() Executing [h@ext-queues:1] NoOp("SIP/tg200_out-0000004e", "NO ANSWER") in new stack
-- Executing [h@ext-queues:2] Macro("SIP/tg200_out-0000004e", "hangupcall,") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/tg200_out-0000004e", "1?theend") in new stack
-- Goto (macro-hangupcall,s,3)
-- Executing [s@macro-hangupcall:3] ExecIf("SIP/tg200_out-0000004e", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] NoOp("SIP/tg200_out-0000004e", "Local/200@from-queue-00000061;1 montior file= /var/spool/asterisk/monitor/2024/09/11/in-89XXXXXXXX-+79NNNNNNNN-20240911-173654-1726058214.356.wav") in new stack
-- Executing [s@macro-hangupcall:5] GotoIf("SIP/tg200_out-0000004e", "0?skipagi") in new stack
-- Executing [s@macro-hangupcall:6] AGI("SIP/tg200_out-0000004e", "attendedtransfer-rec-restart.php,Local/200@from-queue-00000061;1,/var/spool/asterisk/monitor/2024/09/11/in-89XXXXXXXX-+79NNNNNNNN-20240911-173654-1726058214.356.wav") in new stack
-- Executing [s@macro-hangupcall:3] ExecIf("Local/400@from-queue-00000060;2", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] NoOp("Local/400@from-queue-00000060;2", "SIP/400-0000004f montior file= ") in new stack
-- Executing [s@macro-hangupcall:5] GotoIf("Local/400@from-queue-00000060;2", "1?skipagi") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] Hangup("Local/400@from-queue-00000060;2", "") in new stack
== Spawn extension (macro-hangupcall, s, 7) exited non-zero on 'Local/400@from-queue-00000060;2' in macro 'hangupcall'
== Spawn extension (from-queue-exten-internal, h, 1) exited non-zero on 'Local/400@from-queue-00000060;2'
-- Launched AGI Script /var/lib/asterisk/agi-bin/attendedtransfer-rec-restart.php
<SIP/tg200_out-0000004e>AGI Tx >> agi_request: attendedtransfer-rec-restart.php
<SIP/tg200_out-0000004e>AGI Tx >> agi_channel: SIP/tg200_out-0000004e
<SIP/tg200_out-0000004e>AGI Tx >> agi_language: ru
<SIP/tg200_out-0000004e>AGI Tx >> agi_type: SIP
<SIP/tg200_out-0000004e>AGI Tx >> agi_uniqueid: 1726058214.356
<SIP/tg200_out-0000004e>AGI Tx >> agi_version: 16.6.2
<SIP/tg200_out-0000004e>AGI Tx >> agi_callerid: +79NNNNNNNN
<SIP/tg200_out-0000004e>AGI Tx >> agi_calleridname: +79NNNNNNNN
<SIP/tg200_out-0000004e>AGI Tx >> agi_callingpres: 0
<SIP/tg200_out-0000004e>AGI Tx >> agi_callingani2: 0
<SIP/tg200_out-0000004e>AGI Tx >> agi_callington: 0
<SIP/tg200_out-0000004e>AGI Tx >> agi_callingtns: 0
<SIP/tg200_out-0000004e>AGI Tx >> agi_dnid: 89XXXXXXXX
<SIP/tg200_out-0000004e>AGI Tx >> agi_rdnis: unknown
<SIP/tg200_out-0000004e>AGI Tx >> agi_context: macro-hangupcall
<SIP/tg200_out-0000004e>AGI Tx >> agi_extension: s
<SIP/tg200_out-0000004e>AGI Tx >> agi_priority: 6
<SIP/tg200_out-0000004e>AGI Tx >> agi_enhanced: 0.0
<SIP/tg200_out-0000004e>AGI Tx >> agi_accountcode:
<SIP/tg200_out-0000004e>AGI Tx >> agi_threadid: 140120038491904
<SIP/tg200_out-0000004e>AGI Tx >> agi_arg_1: Local/200@from-queue-00000061;1
<SIP/tg200_out-0000004e>AGI Tx >> agi_arg_2: /var/spool/asterisk/monitor/2024/09/11/in-89XXXXXXXX-+79NNNNNNNN-20240911-173654-1726058214.356.wav
<SIP/tg200_out-0000004e>AGI Tx >>
-- Executing [s@macro-hangupcall:3] ExecIf("Local/200@from-queue-00000061;2", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] NoOp("Local/200@from-queue-00000061;2", "PJSIP/200-00000056 montior file= ") in new stack
-- Executing [s@macro-hangupcall:5] GotoIf("Local/200@from-queue-00000061;2", "1?skipagi") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s@macro-hangupcall:7] Hangup("Local/200@from-queue-00000061;2", "") in new stack
== Spawn extension (macro-hangupcall, s, 7) exited non-zero on 'Local/200@from-queue-00000061;2' in macro 'hangupcall'
== Spawn extension (from-queue-exten-internal, h, 1) exited non-zero on 'Local/200@from-queue-00000061;2'
-- <SIP/tg200_out-0000004e>AGI Script attendedtransfer-rec-restart.php completed, returning 0
-- Executing [s@macro-hangupcall:7] Hangup("SIP/tg200_out-0000004e", "") in new stack
== Spawn extension (macro-hangupcall, s, 7) exited non-zero on 'SIP/tg200_out-0000004e' in macro 'hangupcall'
== Spawn extension (ext-queues, h, 2) exited non-zero on 'SIP/tg200_out-0000004e'
-- SIP/tg200_out-0000004e Internal Gosub(hdlr-queue-miss-call,s,1(+79NNNNNNNN)) start
-- Executing [s@hdlr-queue-miss-call:1] NoOp("SIP/tg200_out-0000004e", "---==== Handler queue miss call ===---") in new stack
-- Executing [s@hdlr-queue-miss-call:2] Set("SIP/tg200_out-0000004e", "CLIENT_NUMBER=+79NNNNNNNN") in new stack
-- Executing [s@hdlr-queue-miss-call:3] NoOp("SIP/tg200_out-0000004e", "DIALSTATUS = ") in new stack
-- Executing [s@hdlr-queue-miss-call:4] GotoIf("SIP/tg200_out-0000004e", "0?:end_call") in new stack
-- Goto (hdlr-queue-miss-call,s,6)
-- Executing [s@hdlr-queue-miss-call:6] Hangup("SIP/tg200_out-0000004e", "") in new stack
== Spawn extension (hdlr-queue-miss-call, s, 6) exited non-zero on 'SIP/tg200_out-0000004e'
[2024-09-11 17:36:57] NOTICE[16195][C-0000004e]: app_stack.c:1080 gosub_run: SIP/tg200_out-0000004e Abnormal 'Gosub(hdlr-queue-miss-call,s,1(+79NNNNNNNN))' exit. Popping routine return locations.
== MixMonitor close filestream (mixed)
== End MixMonitor Recording SIP/tg200_out-0000004esame => n,AGI(tg-noanswer.php, ${CLIENT_NUMBER}, ${STRFTIME(${EPOCH},,%Y.%m.%d--H:%M:%S)})