Hello Vincents Goldmanis,
Thanks for raising this question in Q&A forum.
I understand that you are using an Amazon Redshift v1.0 linked service with the Azure Integration Runtime (Auto-Resolve IR), and you are encountering the error SSL error: certificate verify failed when trying to read data, even though the "Test Connection" succeeds. You also mentioned that you cannot use a Self-Hosted IR.
This error typically occurs because the legacy Redshift v1.0 connector in Azure Data Factory is based on an older ODBC driver that may not trust the newer CA certificates used by AWS Redshift, or it is failing during the "Transparent Migration" phase where ADF attempts to optimize the copy command.
Here are the recommended steps to resolve this, specifically for Azure IR:
- Use the Amazon Redshift V2 Connector (Recommended):
- The V1.0 connector is legacy. Microsoft strongly recommends using the Amazon Redshift V2 connector for new workloads.
- Action: Create a new Linked Service using the Amazon Redshift V2 type. This connector is built on top of the newer drivers and handles SSL/TLS certificates much better natively within the Azure IR environment.
- Note: The V2 connector creates a dataset typed as "Amazon Redshift" (same name in UI, but the underlying type is often different in JSON). If you edit your existing dataset, check if you can switch the Linked Service reference to the new V2 one.
- Bypass Certificate Validation (If staying on V1):
- If you must use V1 and cannot use a Self-Hosted IR to install custom certificates, you can try to disable strict SSL verification in the connection string, though this is less secure.
- In your Linked Service, look for "Encryption Method" or "Additional Connection Properties".
- Try adding
EncryptionMethod=1;ValidateServerCertificate=0;to the connection string or additional properties. This tells the driver to use encryption but not to validate the server's certificate chain (which is failing because the Azure IR doesn't have the specific Redshift CA trusted).
- EncryptionMethod Property:
- Ensure your connection string explicitly sets
EncryptionMethod=1(SSL). Sometimes the default negotiation fails if not explicitly forced.
- Ensure your connection string explicitly sets
- Check "Unload" Settings:
- The error mentions "connector transparent migration". This implies ADF might be trying to use the
UNLOADcommand to S3 for performance (which is the default efficient copy method). - Ensure the S3 bucket you are using for staging (if configured) is accessible and that the Redshift cluster has permission to write to it. Sometimes SSL errors mask underlying permission issues during the UNLOAD handshake.
- The error mentions "connector transparent migration". This implies ADF might be trying to use the
Summary: The most robust fix is to switch your Linked Service to the Amazon Redshift V2 connector, which is designed to fix these exact driver obsolescence issues on the Azure IR.
If helps, approve the answer.
Best Regards,
Jerald Felix