diff options
author | grigoriypisar <grigoriypisar@yandex-team.com> | 2023-07-20 16:27:04 +0300 |
---|---|---|
committer | grigoriypisar <grigoriypisar@yandex-team.com> | 2023-07-20 16:27:04 +0300 |
commit | 5b31f78da1eea0701abbcd8fdf35928c79e5d04e (patch) | |
tree | 6cdca4f88bc9c209b7284098af33d4ad5db832a1 | |
parent | adfb3c405860b466182de80d8b88036f8218452f (diff) | |
download | ydb-5b31f78da1eea0701abbcd8fdf35928c79e5d04e.tar.gz |
fix url parsing
Fixed url parsing.
-rw-r--r-- | ydb/core/kqp/proxy_service/kqp_proxy_service.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp b/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp index 7a55322303f..150fa41f327 100644 --- a/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp +++ b/ydb/core/kqp/proxy_service/kqp_proxy_service.cpp @@ -105,12 +105,14 @@ TString EncodeSessionId(ui32 nodeId, const TString& id) { return NOperationId::ProtoToString(opId); } -bool isGrpcProtocol(const TString& endpoint) { +void ParseGrpcEndpoint(const TString& endpoint, TString& address, bool& useSsl) { TStringBuf scheme; TStringBuf host; TStringBuf uri; NHttp::CrackURL(endpoint, scheme, host, uri); - return scheme == "grpcs"; + + address = ToString(host); + useSsl = scheme == "grpcs"; } class TKqpProxyService : public TActorBootstrapped<TKqpProxyService> { @@ -189,8 +191,11 @@ public: caContent = TUnbufferedFileInput(path).ReadAll(); } - const TString endpoint = TokenAccessorConfig.GetEndpoint(); - CredentialsFactory = NYql::CreateSecuredServiceAccountCredentialsOverTokenAccessorFactory(endpoint, isGrpcProtocol(endpoint), caContent, TokenAccessorConfig.GetConnectionPoolSize()); + TString endpointAddress; + bool useSsl = false; + ParseGrpcEndpoint(TokenAccessorConfig.GetEndpoint(), endpointAddress, useSsl); + + CredentialsFactory = NYql::CreateSecuredServiceAccountCredentialsOverTokenAccessorFactory(endpointAddress, useSsl, caContent, TokenAccessorConfig.GetConnectionPoolSize()); } NLwTraceMonPage::ProbeRegistry().AddProbesList(LWTRACE_GET_PROBES(KQP_PROVIDER)); |