0

I was triying to configure a Linked Service in Azure Data Factory (ADF) using ADF GUI and when I type the password of the DB I want to connect to I get following error message:

Connection failed
Expecting connection string of format "key1=value1; key2=value2"

If I configure it to take this password from a Keyvault I get following error message:

The value of the property '' is invalid: 'Format of the initialization string does not conform to specification starting at index 105

I have tried to connect to this DB using DBeaver and I can conect without a problem so the URL, password and User are correct and I think that the problem is in the password string because it contains a semi colon (;), my password is like this:

pass(GdA;+pass

So I think that the problem is that I have to scape semi colon character in order to configure that Linked Service (If I remove this semi colon I get a login error). I have tried what other posts said: 1 and 2 but I still can not configure this Linked Service.

Maybe I have to try to create this Linked Service using the Azure CLI but do you have any other proposal?

Thanks in advance.

EDIT: Addition of anonymez linked service JSON:

{
"name": "LS_P_Oracle_BAS",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
    "description": "Test",
    "annotations": [],
    "type": "Oracle",
    "typeProperties": {
        "connectionString": "host=zzz.net;port=1521;servicename=yyy.com;user id=USER",
        "encryptedCredential": "eyJDcmVkZW50aWFsSWQiOiJmZTI3NDU4MS1iNWYyLTQ0YmItYTcwYS0wNzQxZTFkOWY5NTkiLCJWZXJzaW9uIjoiMi4wIiwiQ2xhc3NUeXBlIjoiTWljcm9zb2Z0LkRhdGFQcm94eS5Db3JlLkludGVyU2VydmljZURhdGFDb250cmFjdC5DcmVkZW50aWFsU1UwNkNZMTQifQ=="
    },
    "connectVia": {
        "referenceName": "INTEGRATIONRUNTIME",
        "type": "IntegrationRuntimeReference"
    }
}
}

EDIT2: Connection configuration using Keyvault:

{
"name": "LS_P_Oracle_BAS",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
    "description": "Test",
    "annotations": [],
    "type": "Oracle",
    "typeProperties": {
        "connectionString": "host=yyy.net;port=1521;ServiceName=zzz.com;user id=USER_READER",
        "password": {
            "type": "AzureKeyVaultSecret",
            "store": {
                "referenceName": "LS_P_KeyVault_yyy",
                "type": "LinkedServiceReference"
            },
            "secretName": "BAS-reader-password"
        }
    },
    "connectVia": {
        "referenceName": "INTEGRATIONRUNTIME",
        "type": "IntegrationRuntimeReference"
    }
}
}

The error that I get with this second linked service JSON:

The value of the property '' is invalid: 'Format of the initialization string does not conform to specification starting at index 105.'. Format of the initialization string does not conform to specification starting at index 105.
AngryCoder
  • 396
  • 3
  • 15
  • I tried creating an Azure SQL server password as you mentioned (with semi column ; in it) and was able to create and connect to Azure SQL linked service without issues. What is the database linked service you are trying to create? Could you please check if your port number is correct? If possible please share the connection string (or complete linked service JSON code) with dummy username and password. Also try to validate the connection string using a test client application to make sure your connection string format is correct. – Kranthi Pakala Apr 08 '20 at 03:24
  • Hi and thanks for your answer. I have added linked service JSON code to my answer. I have tried to connect to this DB using Dbeaver with same credentials, hostname, service principal, port number and the connection was successful. – AngryCoder Apr 08 '20 at 10:22

1 Answers1

1

After further investigation on this issue, it is identified as a bug in ADF Oracle connector, which cannot handle properties that contain semi colon. Current ETA for the bug fix deployment is end of June (Note: This is tentative date)

Unfortunately there is no workaround at the moment other than changing the password (avoiding semi colon in connection properties) until the fix is deployed.

I will keep below MSDN thread updated as soon as I have further updates regarding this fix.

MSDN thread: https://social.msdn.microsoft.com/Forums/en-US/10a3454f-69b8-41bb-9af3-8846f44f6dfe/scape-character-in-azure-password?forum=AzureDataFactory

We appreciate you patience and sincere apologizes for all the inconvenience caused.

Kranthi Pakala
  • 1,288
  • 5
  • 10