<?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>idea Expand External Credential addon to new programming language in Suggest an Idea</title>
    <link>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idi-p/1950475</link>
    <description>&lt;P&gt;The external credential addon (used to integrate with secrets managers like HashiCorp Vault) currently requires a ".so" executable; which means the code written must be done in c/c++. Most modern-day systems that require a custom integration (where the business needs to provide a 'middle-man' script), accept more human-friendly languages like python, bash, java/JS, c#, etc. I believe the replicate product itself is written in a c-based language, so the biggest road-block is ensuring that the information returned from the executable can be properly ingested.&lt;/P&gt;
&lt;P&gt;Instead of a large c-based frame, perhaps the addon could be more generalized to accept a specific returned value:&lt;/P&gt;
&lt;P&gt;1) addon is invoked when 'lookup' is noted&lt;/P&gt;
&lt;P&gt;2) addon (in the background) executes the given 'middle-man' script to retrieve a credential (necessary library paths can be included in the site_arep_login.sh file), passing the lookup value as an argument&lt;/P&gt;
&lt;P&gt;3) middle-man script performs it's magic, and pulls the desired secret (this would be out-of-scope for Qlik)&lt;/P&gt;
&lt;P&gt;4) addon reads returned data from script in a VERY specific format. For example, a JSON string with a single key/value pair&lt;/P&gt;
&lt;P&gt;5) addon internally copies provided secret to proper location in memory, and cleans up after itself.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As it stands, I currently have to do this process today, as the linux CLI we use for integrating with our secrets manager does NOT support a c-script. My c-script simply calls a bash-script, reads back a very specific returned value,&amp;nbsp; and updates the necessary pointers. Forcing a c-program can provide multiple roadblocks due to complexity of the language, memory management, and being a "one-off" compared to standard operating procedures across other platforms.&lt;/P&gt;</description>
    <pubDate>Thu, 30 Jun 2022 18:53:30 GMT</pubDate>
    <dc:creator>mclancaster</dc:creator>
    <dc:date>2022-06-30T18:53:30Z</dc:date>
    <item>
      <title>Expand External Credential addon to new programming language</title>
      <link>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idi-p/1950475</link>
      <description>&lt;P&gt;The external credential addon (used to integrate with secrets managers like HashiCorp Vault) currently requires a ".so" executable; which means the code written must be done in c/c++. Most modern-day systems that require a custom integration (where the business needs to provide a 'middle-man' script), accept more human-friendly languages like python, bash, java/JS, c#, etc. I believe the replicate product itself is written in a c-based language, so the biggest road-block is ensuring that the information returned from the executable can be properly ingested.&lt;/P&gt;
&lt;P&gt;Instead of a large c-based frame, perhaps the addon could be more generalized to accept a specific returned value:&lt;/P&gt;
&lt;P&gt;1) addon is invoked when 'lookup' is noted&lt;/P&gt;
&lt;P&gt;2) addon (in the background) executes the given 'middle-man' script to retrieve a credential (necessary library paths can be included in the site_arep_login.sh file), passing the lookup value as an argument&lt;/P&gt;
&lt;P&gt;3) middle-man script performs it's magic, and pulls the desired secret (this would be out-of-scope for Qlik)&lt;/P&gt;
&lt;P&gt;4) addon reads returned data from script in a VERY specific format. For example, a JSON string with a single key/value pair&lt;/P&gt;
&lt;P&gt;5) addon internally copies provided secret to proper location in memory, and cleans up after itself.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As it stands, I currently have to do this process today, as the linux CLI we use for integrating with our secrets manager does NOT support a c-script. My c-script simply calls a bash-script, reads back a very specific returned value,&amp;nbsp; and updates the necessary pointers. Forcing a c-program can provide multiple roadblocks due to complexity of the language, memory management, and being a "one-off" compared to standard operating procedures across other platforms.&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jun 2022 18:53:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idi-p/1950475</guid>
      <dc:creator>mclancaster</dc:creator>
      <dc:date>2022-06-30T18:53:30Z</dc:date>
    </item>
    <item>
      <title>Re: Expand External Credential addon to new programming language</title>
      <link>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/1950488#M9881</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/178621"&gt;@mclancaster&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;While the idea of having more versatile hooks in &lt;LI-PRODUCT title="Qlik Replicate" id="qlikReplicate"&gt;&lt;/LI-PRODUCT&gt; is appealing, it may take some time before it will be implemented.&lt;/P&gt;&lt;P&gt;In the meanwhile - would you consider an approach of calling Python from C? There is some information available on this subject in the links below:&lt;/P&gt;&lt;P&gt;&lt;A href="https://docs.python.org/3/extending/embedding.html" target="_blank" rel="noopener"&gt;https://docs.python.org/3/extending/embedding.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.geeksforgeeks.org/calling-python-from-c-set-1/" target="_blank" rel="noopener"&gt;https://www.geeksforgeeks.org/calling-python-from-c-set-1/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://stackoverflow.com/questions/3286448/calling-a-python-method-from-c-c-and-extracting-its-return-value" target="_blank" rel="noopener"&gt;https://stackoverflow.com/questions/3286448/calling-a-python-method-from-c-c-and-extracting-its-return-value&lt;/A&gt;&lt;/P&gt;&lt;P&gt;best,&lt;/P&gt;&lt;P&gt;\d&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jun 2022 19:17:43 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/1950488#M9881</guid>
      <dc:creator>dima_etkin</dc:creator>
      <dc:date>2022-06-30T19:17:43Z</dc:date>
    </item>
    <item>
      <title>From now on, please track this idea from the Ideation por...</title>
      <link>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/2100314#M13577</link>
      <description>&lt;P&gt;From now on, please track this idea from the Ideation portal.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;A title="Link to new idea" href="https://ideation.qlik.com/app/#/case/280261" target="_blank" rel="noopener"&gt;Link to new idea&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Meghann&lt;/P&gt;&lt;P data-unlink="true"&gt;&lt;EM&gt;NOTE: Upon clicking this link 2 tabs may open - please feel free to close the one with a login page. If you &lt;STRONG&gt;only&lt;/STRONG&gt; see 1 tab with the login page, please try clicking this link first: &lt;STRONG&gt;&lt;A title="Authenticate me!" href="#" target="_blank" rel="noopener"&gt;Authenticate me!&lt;/A&gt;&lt;/STRONG&gt;&amp;nbsp;t&lt;/EM&gt;&lt;EM&gt;hen try the link above again. Ensure pop-up blocker is off.&lt;/EM&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Aug 2023 15:27:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/2100314#M13577</guid>
      <dc:creator>Meghann_MacDonald</dc:creator>
      <dc:date>2023-08-02T15:27:40Z</dc:date>
    </item>
    <item>
      <title>Re: Expand External Credential addon to new programming language - Status changed to: Closed - Archived</title>
      <link>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/2100315#M13578</link>
      <description />
      <pubDate>Wed, 02 Aug 2023 15:27:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Suggest-an-Idea/Expand-External-Credential-addon-to-new-programming-language/idc-p/2100315#M13578</guid>
      <dc:creator>Ideation</dc:creator>
      <dc:date>2023-08-02T15:27:42Z</dc:date>
    </item>
  </channel>
</rss>

