<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ssis http connection Archives | ZappySys Blog</title>
	<atom:link href="https://zappysys.com/blog/tag/ssis-http-connection/feed/" rel="self" type="application/rss+xml" />
	<link>https://zappysys.com/blog/tag/ssis-http-connection/</link>
	<description>SSIS / ODBC Drivers / API Connectors for JSON, XML, Azure, Amazon AWS, Salesforce, MongoDB and more</description>
	<lastBuildDate>Fri, 21 Nov 2025 03:37:45 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.4</generator>

<image>
	<url>https://zappysys.com/blog/wp-content/uploads/2023/01/cropped-zappysys-symbol-large-32x32.png</url>
	<title>ssis http connection Archives | ZappySys Blog</title>
	<link>https://zappysys.com/blog/tag/ssis-http-connection/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>How to create BIML custom task or component</title>
		<link>https://zappysys.com/blog/how-to-use-biml-script-to-create-biml-custom-task-or-component/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Thu, 21 Sep 2017 16:42:01 +0000</pubDate>
				<category><![CDATA[SSIS Components]]></category>
		<category><![CDATA[SSIS PowerPack]]></category>
		<category><![CDATA[SSIS Tips & How-Tos]]></category>
		<category><![CDATA[biml]]></category>
		<category><![CDATA[json source]]></category>
		<category><![CDATA[powerpack]]></category>
		<category><![CDATA[ssis http connection]]></category>
		<category><![CDATA[trash destination]]></category>
		<guid isPermaLink="false">http://zappysys.com/blog/?p=2025</guid>

					<description><![CDATA[<p>Introduction BIML, or Business Intelligence Markup Language, is a nice technology that lets you generate SSIS packages using a bit of scripting and parameters.  Check for more info if you are new to it: https://en.wikipedia.org/wiki/Business_Intelligence_Markup_Language http://bimlscript.com/ In this article, we will cover how to create a BIML custom task or component. For this purpose, we will use [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/how-to-use-biml-script-to-create-biml-custom-task-or-component/">How to create BIML custom task or component</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p><a href="//zappysys.com/blog/wp-content/uploads/2017/09/ssis-biml-powerpack-zappysys.png"><img decoding="async" class="wp-image-2031 alignleft" src="//zappysys.com/blog/wp-content/uploads/2017/09/ssis-biml-powerpack-zappysys.png" alt="" width="90" height="90" srcset="https://zappysys.com/blog/wp-content/uploads/2017/09/ssis-biml-powerpack-zappysys.png 160w, https://zappysys.com/blog/wp-content/uploads/2017/09/ssis-biml-powerpack-zappysys-150x150.png 150w" sizes="(max-width: 90px) 100vw, 90px" /></a><span style="box-sizing: border-box; margin: 0px; padding: 0px;">BIML, or <em>Business Intelligence Markup Language,</em> is a nice technology that lets you generate SSIS packages using a bit of scripting and parameters.</span>  Check for more info if you are new to it:</p>
<ul style="list-style-position: inside;">
<li><a href="https://en.wikipedia.org/wiki/Business_Intelligence_Markup_Language" target="_blank" rel="noopener">https://en.wikipedia.org/wiki/Business_Intelligence_Markup_Language</a></li>
<li><a href="http://bimlscript.com/" target="_blank" rel="noopener">http://bimlscript.com/</a></li>
</ul>
<p>In this article, we will cover how to create a BIML custom task or component. For this purpose, we will use the <a href="//zappysys.com/products/ssis-powerpack/" target="_blank" rel="noopener">ZappySys PowerPack</a> Task or Data Flow component as an example. At the end of this article you will find <a href="//zappysys.com/blog/how-to-use-biml-to-generate-powerpack-ssis-connectors/#Download_sample_BIMLs">sample BIML files</a> you can download and fiddle around.</p>
<h2>Use BIML to create SSIS packages that use PowerPack tasks or components</h2>
<h3>BIML Elements</h3>
<p>BIML uses <pre class="crayon-plain-tag">CustomTask</pre>, <pre class="crayon-plain-tag">CustomComponent</pre>, and <pre class="crayon-plain-tag">CustomSsisConnection</pre> elements to create custom SSIS connectors. In each of them, you will need to specify <pre class="crayon-plain-tag">CreationName</pre> or a similar attribute/element, which defines what kind of component you want to create. E.g., for <em>LoggingTask</em> it would look like this:</p><pre class="crayon-plain-tag">ZappySys.PowerPack.Task.LoggingTask.LoggingTask, ZappySys.PowerPack120, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502</pre><p>
You will find the connector name in DTSX. For Tasks, you have to specify the CreationName attribute; for components, it is UserComponentTypeName. For the <em>Rest API Task, </em>it looks similar to this:</p><pre class="crayon-plain-tag">&lt;DTS:Executable
 DTS:refId="Package\Sequence Container\ZS REST API Task 1.EventHandlers[OnError]\ZS REST API Task"
 DTS:CreationName="ZappySys.PowerPack.Task.RestApiTask.RestApiTask, ZappySys.PowerPack110, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502"</pre><p>
<div class="su-note"  style="border-color:#e5dd9d;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><div class="su-note-inner su-u-clearfix su-u-trim" style="background-color:#FFF7B7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><strong>NOTE</strong>: If your SSIS package is of a higher version than SQL Server 2012, convert it to SQL Server 2012 first.</div></div>
<p>For a different SQL Server SSIS package version, you will need to use a different DLL name, e.g.:</p>
<ul>
<li><strong>SQL Server 2008</strong>: ZappySys.PowerPack100</li>
<li><strong>SQL Server 2012</strong>: ZappySys.PowerPack110</li>
<li><strong>SQL Server 2014</strong>: ZappySys.PowerPack120</li>
<li><strong>SQL Server 2016</strong>: ZappySys.PowerPack130</li>
<li><strong>SQL Server 2017</strong>: ZappySys.PowerPack140</li>
</ul>
<p>So, to generate<strong> a SQL Server 2017</strong> SSIS package, the custom connector creation name becomes like this:</p><pre class="crayon-plain-tag">ZappySys.PowerPack.Task.LoggingTask.LoggingTask, ZappySys.PowerPack140, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502</pre><p>
<h3>Create a BIML custom task with CustomTask</h3>
<p>You will need to use the <pre class="crayon-plain-tag">CustomTask</pre> element to create PowerPack Tasks in your Control Flow. So open your DTSX where you use a PowerPack Task, find out the <pre class="crayon-plain-tag">CreationName</pre> and then copy child element in <pre class="crayon-plain-tag">&lt;DTS:ObjectData&gt;</pre> element. (e.g., LoggingTask). You will need to escape it and use it in your BIML as well.</p>
<h4>DTSX snippet</h4>
<pre class="crayon-plain-tag">... 
&lt;DTS:Executable
    DTS:refId="Package\ZS Logging Task"
    DTS:CreationName="ZappySys.PowerPack.Task.LoggingTask.LoggingTask, ZappySys.PowerPack110, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502"
    ...
    &lt;DTS:Variables /&gt;
    &lt;DTS:ObjectData&gt;
    &lt;LoggingTask
        Message="Hello from {{System::PackageName}}. I started on {{System::StartTime,yyy-MM-dd hh:mm:ss tt}}"
        LogVariableName=""
        MessageType="Information"
        LogMode="ExecutionLog"
        LogFilePath=""
        LogFileAppend="True"
        LogDateTime="True"
        DateTimeFormat="HH:mm:ss"
        LogLevel="Normal"
        PrefixTimestamp="False" /&gt;
    &lt;/DTS:ObjectData&gt;
&lt;/DTS:Executable&gt;
...</pre>
<h4>BIML snippet</h4>
<p>A Logging Task under the Tasks element will look like this:</p><pre class="crayon-plain-tag">...
&lt;CustomTask Name="Logging Task" CreationName="ZappySys.PowerPack.Task.LoggingTask.LoggingTask, ZappySys.PowerPack120, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502" TaskContact="ZappySys"&gt;
    &lt;ObjectData&gt;
        &amp;lt;LoggingTask
        Message="Hello from {{System::PackageName}}. I started on {{System::StartTime,yyy-MM-dd hh:mm:ss tt}}"
        LogVariableName=""
        MessageType="Information"
        LogMode="ExecutionLog"
        LogFilePath=""
        LogFileAppend="True"
        LogDateTime="True"
        DateTimeFormat="HH:mm:ss"
        LogLevel="Normal"
        PrefixTimestamp="False" /&amp;gt;
 &lt;/ObjectData&gt;
&lt;/CustomTask&gt;
...</pre><p>
<div class="su-note"  style="border-color:#e5dd9d;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><div class="su-note-inner su-u-clearfix su-u-trim" style="background-color:#FFF7B7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><strong>NOTE:</strong> Notice the escaped <pre class="crayon-plain-tag">&lt;LoggingTask&gt;</pre> XML element under <pre class="crayon-plain-tag">&lt;ObjectData&gt;</pre> element.</div></div>
<h3>Create BIML custom components using CustomComponent</h3>
<p>Use the <pre class="crayon-plain-tag">CustomComponent</pre> BIML element to generate these components in DataFlow:</p>
<ul>
<li>Sources</li>
<li>Transformations</li>
<li>Destinations</li>
</ul>
<p>If you need a connection, then use the CustomSsisConnection element.</p>
<p>Again, you will have to copy the <pre class="crayon-plain-tag">UserComponentTypeName</pre> property value and use it in BIML to initialize a component. For a custom connection, it is a bit different: just use the CreationName attribute value from DTSX in the BIML element. Also, don&#8217;t forget to copy property values from DTSX and mirror them in BIML.</p>
<p><span style="box-sizing: border-box; margin: 0px; padding: 0px;">Below are DTSX and BIML snippets showing a Data Flow that contains a JSON Source using an <a target="_blank" rel="noopener">HTTP Connection</a> and is connected to a <a target="_blank" rel="noopener">Trash Destination</a>.</span></p>
<h4>DTSX snippet</h4>
<pre class="crayon-plain-tag">...
&lt;DTS:ConnectionManagers&gt;
    &lt;DTS:ConnectionManager DTS:refId="Package.ConnectionManagers[ZS-HTTP Connection]" DTS:CreationName="ZS-HTTP" DTS:DTSID="{E57D23E9-E50A-4C4A-BB19-B91E776887CF}" DTS:ObjectName="ZS-HTTP Connection"&gt;
        &lt;DTS:ObjectData&gt;
            &lt;ConnectionManager ConnectionString="Url=https://httpbin.org/anything;CredentialType=Notset;UserName=;Timeout=100000;UseProxy=False;ProxyUrl=;UseProxyCreds=False;ProxyUserName=;DoNotUseDefaultProxy=False;UseClientCertificate=False;CertificatePath=;CertificateStorageType=CurrentUser;CertificateStoreName=My;CertificateThumbprint=;RetryMode=None;RetryCountMax=3;RetryWaitTimeMs=2000;RetryMultiplyWaitTime=False;RetryMessageList=;RetryStatusCodeList=" /&gt;
...
&lt;DTS:Executable DTS:refId="Package\Dataflow" DTS:CreationName="SSIS.Pipeline.3" DTS:DTSID="{C59866C4-9732-4B3A-8F80-7784E52C63F5}" DTS:ExecutableType="SSIS.Pipeline.3" DTS:LocaleID="-1" DTS:ObjectName="Dataflow" DTS:TaskContact="Performs high-performance data extraction, transformation and loading;Microsoft Corporation; Microsoft SQL Server v10; (C) 2007 Microsoft Corporation; All Rights Reserved;http://www.microsoft.com/sql/support/default.asp;1"&gt;
    &lt;DTS:ObjectData&gt;
    &lt;pipeline BLOBTempStoragePath="" bufferTempStoragePath="" version="1"&gt;
    &lt;components&gt;
    &lt;component refId="Package\Dataflow\JsonSource" componentClassID="DTS.ManagedComponentWrapper.3" name="JsonSource" usesDispositions="true" version="25"&gt;
        &lt;properties&gt;
            &lt;property dataType="System.Int32" name="AccessMode" typeConverter="ZappySys.Common.Ssis.FileValueAccessMode, ZappySys.Common, Version=1.0.2017.10830, Culture=neutral, PublicKeyToken=1903265a93eae502"&gt;2&lt;/property&gt;
            &lt;property dataType="System.Boolean" name="UseConnection"&gt;true&lt;/property&gt;
            &lt;property dataType="System.String" name="UserComponentTypeName"&gt;ZappySys.PowerPack.Adapter.JsonSource.JsonSource, ZappySys.PowerPack110, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502&lt;/property&gt;
            ...
        &lt;/properties&gt;
        &lt;connections&gt;
            &lt;connection refId="Package\Dataflow\JsonSource.Connections[HTTP 1]" connectionManagerID="Package.ConnectionManagers[ZS-HTTP Connection]" connectionManagerRefId="Package.ConnectionManagers[ZS-HTTP Connection]" name="HTTP 1" /&gt;
        &lt;/connections&gt;
        &lt;outputs&gt;
            &lt;output refId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput]" errorRowDisposition="FailComponent" name="JsonSourceOutput" truncationRowDisposition="FailComponent"&gt;
                &lt;outputColumns&gt;
                    &lt;outputColumn refId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput].Columns[Url]" dataType="wstr" externalMetadataColumnId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput].ExternalColumns[url]" length="50" lineageId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput].Columns[Url]" name="Url" /&gt;
                &lt;/outputColumns&gt;
                &lt;externalMetadataColumns isUsed="True"&gt;
                    &lt;externalMetadataColumn refId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput].ExternalColumns[url]" dataType="wstr" length="50" name="url" /&gt;
                &lt;/externalMetadataColumns&gt;
            &lt;/output&gt;
            ...
        &lt;/outputs&gt;
    &lt;/component&gt;
    &lt;component refId="Package\Dataflow\TrashDestination" componentClassID="DTS.ManagedComponentWrapper.3" name="TrashDestination" version="2"&gt;
        &lt;properties&gt;
            &lt;property dataType="System.String" name="UserComponentTypeName"&gt;ZappySys.PowerPack.Adapter.TrashDestination.TrashDestination, ZappySys.PowerPack110, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502&lt;/property&gt;
            ...
        &lt;/properties&gt;
        &lt;inputs&gt;
            &lt;input refId="Package\Dataflow\TrashDestination.Inputs[TrashInput]" name="TrashInput"&gt;
                &lt;externalMetadataColumns /&gt;
            &lt;/input&gt;
        &lt;/inputs&gt;
    &lt;/component&gt;
    &lt;/components&gt;
    &lt;paths&gt;
        &lt;path refId="Package\Dataflow.Paths[TrashInput]" endId="Package\Dataflow\TrashDestination.Inputs[TrashInput]" name="TrashInput" startId="Package\Dataflow\JsonSource.Outputs[JsonSourceOutput]" /&gt;
    &lt;/paths&gt;
...</pre>
<h4>BIML snippet</h4>
<pre class="crayon-plain-tag">...
&lt;Connections&gt;
    &lt;CustomSsisConnection Name="ZS-HTTP Connection" CreationName="ZS-HTTP" ObjectData="&amp;lt;ConnectionManager ConnectionString=&amp;quot;Url=https:&amp;#x2F;&amp;#x2F;httpbin.org&amp;#x2F;anything;CredentialType=Notset;UserName=;Timeout=100000;UseProxy=False;ProxyUrl=;UseProxyCreds=False;ProxyUserName=;DoNotUseDefaultProxy=False;UseClientCertificate=False;CertificatePath=;CertificateStorageType=CurrentUser;CertificateStoreName=My;CertificateThumbprint=;RetryMode=None;RetryCountMax=3;RetryWaitTimeMs=2000;RetryMultiplyWaitTime=False;RetryMessageList=;RetryStatusCodeList=&amp;quot; &amp;#x2F;&amp;gt;"/&gt;
&lt;/Connections&gt;
&lt;Packages&gt;
&lt;Package Name="DataFlow with Connection Sample" ConstraintMode="Linear"&gt;
&lt;Tasks&gt;
    &lt;Dataflow Name="Dataflow"&gt;
    &lt;Transformations&gt;
    &lt;CustomComponent Name="JsonSource" UsesDispositions="true" ComponentTypeName="ZappySys.PowerPack.Adapter.JsonSource.JsonSource, ZappySys.PowerPack130, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502"&gt;
        &lt;CustomProperties&gt;
            &lt;CustomProperty Name="AccessMode" DataType="Int32"&gt;2&lt;/CustomProperty&gt;                              
            &lt;CustomProperty Name="UseConnection" DataType="Boolean"&gt;true&lt;/CustomProperty&gt;
        &lt;/CustomProperties&gt;
        &lt;OutputPaths&gt;
            &lt;OutputPath Name="JsonSourceOutput" ErrorRowDisposition="FailComponent" TruncationRowDisposition="FailComponent"&gt;
                &lt;ExternalColumns&gt;
                    &lt;ExternalColumn Name="url" DataType="String" Length="50" /&gt;
                &lt;/ExternalColumns&gt;                                  
                &lt;OutputColumns&gt;
                    &lt;OutputColumn Name="Url" ExternalMetadataColumnName="url" DataType="String" Length="50" /&gt;
                &lt;/OutputColumns&gt;
            &lt;/OutputPath&gt;
            &lt;OutputPath Name="Json Error Output" IsErrorOutput="true"&gt;
            &lt;OutputColumns&gt;
                &lt;OutputColumn Name="Url" /&gt;
            &lt;/OutputColumns&gt;
            &lt;/OutputPath&gt;                                  
        &lt;/OutputPaths&gt;
        &lt;Connections&gt;
        &lt;Connection Name="HTTP 1" ConnectionName="ZS-HTTP Connection" /&gt;
        &lt;/Connections&gt;                             
    &lt;/CustomComponent&gt;
    &lt;CustomComponent Name="TrashDestination" ComponentTypeName="ZappySys.PowerPack.Adapter.TrashDestination.TrashDestination, ZappySys.PowerPack130, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1903265a93eae502"&gt;
        &lt;InputPaths&gt;
            &lt;InputPath OutputPathName="JsonSource.JsonSourceOutput" Identifier="TrashInput" SsisName="TrashInput"/&gt;
        &lt;/InputPaths&gt;
    &lt;/CustomComponent&gt;
    &lt;/Transformations&gt;
...</pre>
<h2>Resources</h2>
<ul>
<li><a href="https://www.varigence.com/Documentation" target="_blank" rel="noopener">BIML documentation</a></li>
<li><a href="https://www.varigence.com/Documentation/Language/Element/AstCustomTaskNode" target="_blank" rel="noopener">CustomTask documentation</a></li>
<li><a href="https://schemas.varigence.com/Documentation/Language/Element/AstCustomComponentNode" target="_blank" rel="noopener">CustomComponent documentation</a></li>
<li><a href="https://www.varigence.com/Documentation/Language/Element/AstCustomSsisConnectionNode" target="_blank" rel="noopener">CustomSsisConnection documentation</a></li>
</ul>
<h2>Download sample BIMLs</h2>
<ul>
<li><a href="//zappysys.com/blog/wp-content/uploads/2017/09/Sample-BIML-with-PowerPack-components-inside-DataFlow.zip" target="_blank" rel="noopener">Sample BIML with PowerPack DataFlow Components</a></li>
<li><a href="//zappysys.com/blog/wp-content/uploads/2017/09/Sample-BIML-with-PowerPack-components-inside-DataFlow-with-connection.zip" target="_blank" rel="noopener">Sample BIML with PowerPack DataFlow Components with Connection</a></li>
<li><a href="//zappysys.com/blog/wp-content/uploads/2017/09/Sample-BIML-with-PowerPack-Task.zip" target="_blank" rel="noopener">Sample BIML with PowerPack Task</a></li>
</ul>
<p>The post <a href="https://zappysys.com/blog/how-to-use-biml-script-to-create-biml-custom-task-or-component/">How to create BIML custom task or component</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Calling REST API in SSIS with Basic Authentication / Userid-Password (BASE64 Authorization header)</title>
		<link>https://zappysys.com/blog/how-to-set-base64-encoded-authorization-header-for-http-web-request/</link>
		
		<dc:creator><![CDATA[ZappySys]]></dc:creator>
		<pubDate>Thu, 27 Aug 2015 20:58:17 +0000</pubDate>
				<category><![CDATA[SSIS Components]]></category>
		<category><![CDATA[SSIS JSON Source (File/REST)]]></category>
		<category><![CDATA[base64]]></category>
		<category><![CDATA[fiddler]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[rest api]]></category>
		<category><![CDATA[ssis]]></category>
		<category><![CDATA[ssis http connection]]></category>
		<category><![CDATA[ssis json source]]></category>
		<category><![CDATA[SSIS PowerPack]]></category>
		<category><![CDATA[ssis rest api task]]></category>
		<category><![CDATA[ssis xml source]]></category>
		<guid isPermaLink="false">http://zappysys.com/blog/?p=34</guid>

					<description><![CDATA[<p>Introduction In this blog post you will explain how to pass basic credentials (i.e. UserID/Password) along with your web request. You will also learn about setting up Authorization Header for HTTP Web Request in Base64 manually. To learn more about how to consume / call REST API in SSIS check this article. HTTP Authorization Header [&#8230;]</p>
<p>The post <a href="https://zappysys.com/blog/how-to-set-base64-encoded-authorization-header-for-http-web-request/">Calling REST API in SSIS with Basic Authentication / Userid-Password (BASE64 Authorization header)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p>In this blog post you will explain how to pass basic credentials (i.e. UserID/Password) along with your web request. You will also learn about setting up Authorization Header for HTTP Web Request in Base64 manually. To learn more about <a href="//zappysys.com/blog/call-rest-api-using-ssis-web-service-task/" target="_blank" rel="noopener">how to consume / call REST API in SSIS check this article</a>.</p>
<h2>HTTP Authorization Header basics</h2>
<p>As per HTTP Standard you can pass credentials very simple way using basic Authorization header. Below is the sample of Basic Authorization header.</p>
<p>As you can see it consist of HeaderName=Authorization and Value=some <em>base64 encoded string</em><br />
<code>Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==</code><br />
As per standard Base64 encoded string is made up with two elements. <em>your_userid:your_password</em></p>
<blockquote><p><strong>NOTE:</strong> Base64 is encoding and not encryption method. So never hand over your encoded Authorization header string to anyone. Anyone can decode Base64 encoded string easily by using tools <a href="http://www.bing.com/search?q=base64+encode&amp;src=IE-TopResult&amp;FORM=IE11TR&amp;conversationid=" target="_blank" rel="noopener">like this</a></p></blockquote>
<h2>Passing Basic Credentials along with HTTP Web Request</h2>
<p>You can pass credentials (i.e. UserID/Password) in two different ways.</p>
<ol>
<li>Automatic approach &#8211; Using <a href="//zappysys.com/onlinehelp/ssis-powerpack/scr/ssis-http-connection-manager.htm" target="_blank" rel="noopener">ZS-HTTP Connection Manager</a> (BASE64 Encoded Header automatically generated)</li>
<li>Manual approach &#8211; Supplying Authorization where UserID/Password encoded as Base64</li>
</ol>
<h3>Automatic approach &#8211; Using ZS-HTTP Connection Manager</h3>
<p>Now lets look at how to use automatic approach to pass Basic Authorization in following 3 different tasks/components</p>
<ol>
<li>Passing basic credentials in <a href="//zappysys.com/products/ssis-powerpack/ssis-rest-api-web-service-task/" target="_blank" rel="noopener">SSIS REST API Task</a></li>
<li>Passing basic credentials in <a href="//zappysys.com/products/ssis-powerpack/ssis-json-file-source/" target="_blank" rel="noopener">SSIS JSON Source</a></li>
<li>Passing basic credentials in <a href="//zappysys.com/products/ssis-powerpack/ssis-xml-source/" target="_blank" rel="noopener">SSIS XML Source</a></li>
</ol>
<h4>Using SSIS REST API Task (Pass Basic credentials using Connection Manager)</h4>
<p>The simplest way to pass credentials is use HTTP Connection Manager. If you are using <a href="//zappysys.com/products/ssis-powerpack/ssis-rest-api-web-service-task/" target="_blank" rel="noopener">REST API Task</a> then you can use <strong>Url from Connection</strong> Access Mode. And on connection manager specify UserId and password to pass Basic <strong>Authorization Header </strong></p>
<p>Advantages of this method are..<br />
1) Its very simple<br />
2) Credentials are encrypted in SSIS Package</p>
<blockquote><p><strong>NOTE:</strong> We recommend using <strong>https</strong>:// Urls whenever possible otherwise your web request can be decoded in plain text by any servers sitting between you and target and possibly they can get your password by decoding base64 header.</p></blockquote>
<div><img decoding="async" class="figureimage" title="SSIS REST API Task - Pass Base64 Encoded HTTP Authorization Header" src="https://zappysys.com/blog/wp-content/uploads/2015/08/how-to-set-base64-encoded-authorization-header-for-http-web-request-1.png" alt="SSIS REST API Task - Pass Base64 Encoded HTTP Authorization Header" /></div>
<div></div>
<div><strong>Analyze Base64 Encoded HTTP Authorization Header generated by HTTP Connection Manager</strong></div>
<div>You can analyze Webrequest in some 3rd party Free Debugging tools such as Fiddler (<a href="https://zappysys.com/blog/how-to-use-fiddler-to-analyze-http-web-requests/" target="_blank" rel="noopener">Check this article</a>). As you see how its sending Authorization header in Base64 encoded string.</div>
<div></div>
<div><img decoding="async" class="figureimage" title="Base64 Encoded HTTP Basic Authorization Header View in Fiddler" src="https://zappysys.com/blog/wp-content/uploads/2015/08/how-to-set-base64-encoded-authorization-header-for-http-web-request-2.png" alt="Base64 Encoded HTTP Basic Authorization Header View in Fiddler" /><br />
Base64 Encoded HTTP Basic Authorization Header &#8211; View in Fiddler</div>
<h4>Using SSIS JSON/XML Source  (Pass Basic credentials using Connection Manager)</h4>
<p>You can use HTTP Connection manager in <a href="//zappysys.com/products/ssis-powerpack/ssis-json-file-source/" target="_blank" rel="noopener">JSON Source</a> and <a href="//zappysys.com/products/ssis-powerpack/ssis-xml-source/" target="_blank" rel="noopener">XML Source</a> too. Only difference is you have to check Use Credentials checkbox and select HTTP connection manager from available connection managers dropdown.</p>
<ol>
<li>Select AccessMode as &#8220;File Path or Web URL&#8221;</li>
<li>Enter API URL</li>
<li>Check &#8220;Use Credentials&#8221; option</li>
<li>Click &#8220;New&#8221; next to Connection dropdown or select New &#8220;ZS-HTTP&#8221; connection from dropdown</li>
<li>Configure HTTP Connection as below (i.e. Enter URL, Select Basic Auth, Enter UserID, Password)</li>
<li>Clock OK on HTTP connection manager UI to save and now Test JSON or XML Source UI by clicking Preview (Assuming no other configuration needed)</li>
</ol>
<div id="attachment_1676" style="width: 972px" class="wp-caption alignnone"><a href="//zappysys.com/blog/wp-content/uploads/2015/08/ssis-json-source-rest-api-http-basic-authentication-pass-userid-password.png"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-1676" class="size-full wp-image-1676" src="https://zappysys.com/blog/wp-content/uploads/2015/08/how-to-set-base64-encoded-authorization-header-for-http-web-request-3.png" alt="SSIS JSON Source - Passing Basic Credentials (Supply UserID / Password) using HTTP Connection" width="962" height="757" /></a><p id="caption-attachment-1676" class="wp-caption-text">SSIS JSON Source &#8211; Passing Basic Credentials (Supply UserID / Password) using HTTP Connection</p></div>
<h3>Manual approach &#8211; Supplying Authorization where UserID/Password encoded as Base64</h3>
<p>Our <a href="//zappysys.com/products/ssis-powerpack/ssis-json-file-source/" target="_blank" rel="noopener">JSON Source</a>, <a href="//zappysys.com/products/ssis-powerpack/ssis-xml-source/" target="_blank" rel="noopener">XML Source</a> and <a href="//zappysys.com/products/ssis-powerpack/ssis-rest-api-web-service-task/" target="_blank" rel="noopener">REST API Task </a> they all support passing BASE64 Encoded String for Authorization header (see below screenshot). Setting up userid and password in HTTP Connection Manger would do same trick as setting up it manually.</p>
<p>To encode any Header value in BASE64 format you simply have to add BASE64ENC format specifier after variable name.</p>
<p>Example: {{User::varUserAndPassword<strong>,BASE64ENC</strong>}}</p>
<p>&nbsp;</p>
<div><img decoding="async" class="figureimage" title="SSIS JSON Source Task - Pass Base64 Encoded HTTP Authorization Header" src="https://zappysys.com/blog/wp-content/uploads/2015/08/how-to-set-base64-encoded-authorization-header-for-http-web-request-4.png" alt="SSIS JSON Source Task - Pass Base64 Encoded HTTP Authorization Header" /><br />
SSIS JSON Source Task &#8211; Pass Base64 Encoded HTTP Authorization Header</div>
<div><img decoding="async" class="figureimage" title="Base64 Encoded HTTP Basic Authorization Header View in Fiddler" src="https://zappysys.com/blog/wp-content/uploads/2015/08/how-to-set-base64-encoded-authorization-header-for-http-web-request-5.png" alt="Base64 Encoded HTTP Basic Authorization Header View in Fiddler" /></div>
<h2>Reference</h2>
<p>Wikipedia Article &#8211; <a href="https://en.wikipedia.org/wiki/Basic_access_authentication" target="_blank" rel="noopener">HTTP Basic Authorization Header</a></p>
<h2>Download FREE SSIS Components</h2>
<p><a href="https://zappysys.com/products/ssis-powerpack/"><img decoding="async" src="//zappysys.com/wp-content/uploads/2016/10/slider-ssis-powerpack-1.png" /></a></p>
<p>The post <a href="https://zappysys.com/blog/how-to-set-base64-encoded-authorization-header-for-http-web-request/">Calling REST API in SSIS with Basic Authentication / Userid-Password (BASE64 Authorization header)</a> appeared first on <a href="https://zappysys.com/blog">ZappySys Blog</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
