<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Question Re: Calling an external web service via https using the system certificate store in Technology Q&amp;A</title>
    <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14262744#M4931160</link>
    <description>&lt;P&gt;I provided the text of my web service and an example of its call above.&lt;/P&gt;&lt;P&gt;Since it is called "POST and x-www-form-urlencoded", it has a body, which is supposed to transfer parameters to the web service. For some reason, it is not in the log of this body (maybe SQL Anywhere does not write it to the log?), but the log contains the field “Content-Length: 99” — as I understand it, this shows that everything is still being transferred to the web service.&lt;/P&gt;</description>
    <pubDate>Fri, 07 Nov 2025 06:30:35 GMT</pubDate>
    <dc:creator>Stalker4</dc:creator>
    <dc:date>2025-11-07T06:30:35Z</dc:date>
    <item>
      <title>Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaq-p/14253933</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;SAP&amp;nbsp;SQL Anywhere 17.0.10.5866 for WIndows&lt;/P&gt;&lt;P&gt;There is an external web service&lt;BR /&gt;Url: &lt;A href="https://MyService.com/token" target="_blank"&gt;https://MyService.com/token&lt;/A&gt;&lt;BR /&gt;Request method: POST&lt;BR /&gt;Content-Type: x-www-form-urlencoded&lt;/P&gt;&lt;P&gt;Created a web procedure to call it:&lt;/P&gt;&lt;LI-CODE lang="sql"&gt;CREATE PROCEDURE "dba"."TestAccessToken2"( in "client_id" long varchar,in "client_secret" long varchar,in "grant_type" long varchar ) 
result( "cAttribute" long varchar,"cValue" long varchar,"npp" integer ) 
url 'https://MyService.com/token'
set 'HTTP(VERSION=1.1)'
type 'HTTP:POST'
CERTIFICATE 'file=*'&lt;/LI-CODE&gt;&lt;P&gt;Please note that in the body of this procedure, I specified “&lt;STRONG&gt;CERTIFICATE ‘file=*’&lt;/STRONG&gt;”, which means that I want SQL Anywhere to use a certificate from the operating system's certificate store when calling an external web service via https.&lt;/P&gt;&lt;P&gt;&amp;nbsp;Example of calling this web procedure:&lt;/P&gt;&lt;LI-CODE lang="sql"&gt;select * from dba.TestAccessToken2('Myclient' ,'MySecret', 'credentials')&lt;/LI-CODE&gt;&lt;P&gt;When executing this code (calling the web procedure), I get an error message:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The secure connection to the remote host failed: The TLS handshake&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;failed, error code 0x20001040&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Question: Am I calling this external web service correctly ?&lt;BR /&gt;Why is the error occurring—did I specify something incorrectly, or is the required certificate missing from the system store ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Oct 2025 07:53:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaq-p/14253933</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-10-27T07:53:53Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256513#M4930487</link>
      <description>&lt;P&gt;Well, without knowing the external API, it's hard to tell but your call seems fine to me. You can of course also simply use CALL to call the procedure without using a SELECT statement...&lt;BR /&gt;&lt;BR /&gt;Nevertheless, it should be easy to find out whether certificates from the system store do match the web server's certificate... And you can also provide a fitting vertificate (chain) explicitely.&lt;/P&gt;</description>
      <pubDate>Wed, 29 Oct 2025 18:03:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256513#M4930487</guid>
      <dc:creator>VolkerBarth</dc:creator>
      <dc:date>2025-10-29T18:03:43Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256807#M4930537</link>
      <description>&lt;P&gt;But as I understand it, in order to find out whether the certificates from the system repository match the web server certificate, and even more so to explicitly specify the appropriate certificate, I first need to ask the owner of this web server what certificate they are using there, am I right ?&lt;/P&gt;&lt;P&gt;I would also like to clarify one point: Could this problem arise due to incompatibility between the security and transport protocol versions (SSL, TLS, HTTP) of the web server and SQL Anywhere 17.0.10.5866? Perhaps newer versions of SQL Anywhere support newer versions of security and transport protocols (SSL, TLS, HTTP) ?&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 07:54:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256807#M4930537</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-10-30T07:54:35Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256919#M4930549</link>
      <description>Well, can you call the according web server via browser, too? If so, you can usually easily display the web server's certificate and its chain in the browser. - There have been changes to the underlying crypto libraries in SA17 (initially OpenSSL, later SAP Common Crypto Lib) but I guess your version already uses the latter. AFAIK, the web client does not need to provide the web server's certificate itself but one that does match the issuer of the web server's certificate.</description>
      <pubDate>Thu, 30 Oct 2025 09:33:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256919#M4930549</guid>
      <dc:creator>VolkerBarth</dc:creator>
      <dc:date>2025-10-30T09:33:37Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256955#M4930553</link>
      <description>&lt;P&gt;We are talking about the website &lt;A href="https://sbx-id-service.globalpoll.com.ua" target="_blank" rel="noopener"&gt;https://sbx-id-service.globalpoll.com.ua&lt;/A&gt; FireFox 144.0.2, when I tried to go there by entering this address in the address bar, the certificate information says “Google Trust Services.”&lt;/P&gt;&lt;P&gt;However, the owners of this website say that it is protected by “CloudFlare”. Could this somehow affect access to the web services of this website ?&lt;/P&gt;&lt;P&gt;If you specify the “-zoc” parameter when starting the server, only debug information via HTTP is displayed, and information via HTPS (including certificates and security protocol versions) is not shown.&lt;BR /&gt;Does SQL Anywhere have a parameter that allows debug information via HTTPS to be displayed ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 11:22:28 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14256955#M4930553</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-10-30T11:22:28Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257036#M4930563</link>
      <description>&lt;P&gt;I also noticed that sometimes the error&amp;nbsp;&lt;STRONG&gt;HTTP request failed. Status code '&amp;lt;NONE&amp;gt;' SQLCODE=-983, ODBC 3 State="HY000"&amp;nbsp;&lt;/STRONG&gt;occurs, rather than "TLS handshake".&lt;/P&gt;&lt;P&gt;I forgot to mention that this web service itself is fully functional; I can call it without any problems from "Postman" and from a program I wrote in "Delphi".&lt;BR /&gt;In other words, the problem lies specifically in calling this web service from SQL Anywhere 17.0.10.5866.&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 12:25:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257036#M4930563</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-10-30T12:25:55Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257187#M4930575</link>
      <description>&lt;P&gt;Hm, the error message seems to mix up SQLCODEs and ODBC 3 states? (HY000 would be "Database server already running")... - That being said, have you tried to use web client logging (via sa_server_option('WebClientLoggingusing'...) and/or used the procedure's HTTP(EXCEPTIONS=OFF) option to get more diagnostics?&lt;BR /&gt;&lt;BR /&gt;If you are able to call the web service via other web clients, are you not able to find out how they accept the web server's certificate? Do they use SNI (which you could make SQL Anywhere use via the CERTIFICATE clause....)?&lt;BR /&gt;&lt;BR /&gt;Otherwise, I'm out of my wits.&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 13:43:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257187#M4930575</guid>
      <dc:creator>VolkerBarth</dc:creator>
      <dc:date>2025-10-30T13:43:40Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257198#M4930579</link>
      <description>&lt;P&gt;The server is running with the “-zoc” option. Here is the result of the server log for this Web service call.&lt;/P&gt;&lt;LI-CODE lang="sql"&gt;[connid = 8, [30/10/2025:15:59:01.796 0200]]
[connid = 8, [30/10/2025:15:59:01.796 0200], REQUEST]
POST /realms/dnipro/protocol/openid-connect/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded; charset=windows-1251
Connection: close
ASA-Id: bcb757c755f4420581a02a295a32ae91
Content-Length: 99
Accept-Charset: windows-1251, UTF-8, *
Date: Thu, 30 Oct 2025 13:59:01 GMT
Host: sbx-id-service.globalpoll.com.ua
User-Agent: SQLAnywhere/17.0.10.5866

[connid = 8, Error: socket closed]
[connid = 8, socket closed]
[connid = 8, Error: socket closed by peer]&lt;/LI-CODE&gt;&lt;P&gt;If necessary, I can show you the log of this web service call from "Postman". Would you like to see it ?&lt;/P&gt;&lt;P&gt;I made a small change to the procedure itself:&lt;/P&gt;&lt;LI-CODE lang="sql"&gt;set 'HTTP(VERSION=1.1;EXCEPTIONS=OFF)'&lt;/LI-CODE&gt;&lt;P&gt;What is “SNI” ?&lt;/P&gt;</description>
      <pubDate>Thu, 30 Oct 2025 14:07:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257198#M4930579</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-10-30T14:07:55Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257284#M4930587</link>
      <description>SNI is Server Name Indication. As to your POST request, is it expected that is has no body? (At least, that's quite unusual IMHO.) Generally, I would compare the logged requests and responses of your SA web client with that of other working clients and try to find relevant differences. Aside: I'm just another SAP customer so you might ask the official SAP support for more.</description>
      <pubDate>Thu, 30 Oct 2025 15:30:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14257284#M4930587</guid>
      <dc:creator>VolkerBarth</dc:creator>
      <dc:date>2025-10-30T15:30:38Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14262744#M4931160</link>
      <description>&lt;P&gt;I provided the text of my web service and an example of its call above.&lt;/P&gt;&lt;P&gt;Since it is called "POST and x-www-form-urlencoded", it has a body, which is supposed to transfer parameters to the web service. For some reason, it is not in the log of this body (maybe SQL Anywhere does not write it to the log?), but the log contains the field “Content-Length: 99” — as I understand it, this shows that everything is still being transferred to the web service.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Nov 2025 06:30:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14262744#M4931160</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-11-07T06:30:35Z</dc:date>
    </item>
    <item>
      <title>Re: Calling an external web service via https using the system certificate store</title>
      <link>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14267878#M4931615</link>
      <description>&lt;P&gt;It turns out that the server where I am trying to call the web service only has the following encryption protocols enabled:&lt;/P&gt;&lt;LI-CODE lang="sql"&gt;TLSv1.2:
| ciphers:
| TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_AES_256_CCM (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_AES_128_CCM (secp256r1) - A
| TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 (secp256r1) - A
&lt;/LI-CODE&gt;&lt;P&gt;According to the SAP SQL Anywhere 17.0.10.5866 documentation, these encryption protocols are not supported.&lt;/P&gt;&lt;P&gt;Or is it still possible to use them in SAP SQL Anywhere 17.0.10.5866 ?&lt;/P&gt;</description>
      <pubDate>Thu, 13 Nov 2025 10:52:17 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/calling-an-external-web-service-via-https-using-the-system-certificate/qaa-p/14267878#M4931615</guid>
      <dc:creator>Stalker4</dc:creator>
      <dc:date>2025-11-13T10:52:17Z</dc:date>
    </item>
  </channel>
</rss>

