000035456 - RSA Archer 6.x SQL Datafeed gives ODBC error with TLS1.2

Document created by RSA Customer Support Employee on Sep 4, 2017
Version 1Show Document
  • View in full screen mode

Article Content

Article Number000035456
Applies ToRSA Product Set: Archer
RSA Product/Service Type: Archer
RSA Version/Condition: 6.x
 
IssueODBC Transporter feed won't work when TLS 1.0 is disabled in environment.
Unable to connect to database. Please ensure the connection string contains valid information. Server does not exist or access denied.
Load fields error:
User-added image
Datafeed error
User-added image
Log error
<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
    <System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
        <EventID>3</EventID>
        <Type>3</Type>
        <SubType Name="Error">0</SubType>
        <Level>2</Level>
        <TimeCreated SystemTime="2017-08-09T17:54:29.0469692Z" />
        <Source Name="ArcherTech.DataFeed" />
        <Correlation ActivityID="{06060ce5-743e-4630-94e9-9a4dbf44f8cd}" />
        <Execution ProcessName="ArcherTech.JobFramework.Job" ProcessID="30464" ThreadID="1" />
        <AssemblyVersion>6.2.301.1003</AssemblyVersion>
        <Channel />
        <Computer>USGAYNEML1C</Computer>
    </System>
    <ApplicationData>
        <TraceData>
            <DataItem>
                <TraceRecord Severity="Error" xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord">
                    <TraceIdentifier>ArcherTech.DataFeed</TraceIdentifier>
                    <Description>Unexpected error occurred while executing data feed.</Description>
                    <AppDomain>ArcherTech.JobFramework.Job.exe</AppDomain>
                    <ContextData>
                        <LogReferenceId>080917-175429-0469</LogReferenceId>
                        <DataFeedId>4439</DataFeedId>
                        <DataFeedName>test</DataFeedName>
                        <DataFeedHistoryId>4418</DataFeedHistoryId>
                    </ContextData>
                    <Exception>
                        <ExceptionType>System.Data.Odbc.OdbcException, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
                        <Message>ERROR [08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.
ERROR [01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
</Message>
                        <Source>
                        </Source>
                        <StackTrace>   at System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
   at System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection, OdbcConnectionString connectionOptions)
   at System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions)
   at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal&amp; connection)
   at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
   at System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.Odbc.OdbcConnection.Open()
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
   at ArcherTech.DataFeed.Transporters.DbQueryInfo.PerformQuery(NetworkCredentialWrapper credentials, Func`2 applyTokens, DataFeedContext context)
   at ArcherTech.DataFeed.Transporters.DbQueryTransporter.ExecuteInternal()
   at ArcherTech.DataFeed.ComponentModel.DataFeedActivity.Execute()</StackTrace>
                    </Exception>
                </TraceRecord>
            </DataItem>
        </TraceData>
    </ApplicationData>
</E2ETraceEvent>
CauseUsing old odbc driver in datafeed. Old driver does not support turning off TLS1.0.
User-added image
ResolutionDownload SQL Server Native Client 11.0 to webserver. 
https://www.microsoft.com/en-us/download/details.aspx?id=36434 (or current SQL Server ODBC driver)
User-added image
Replace the name in your connection string.
User-added image
This will resolve the issue.
 

Attachments

    Outcomes