...
Java connector is a critical middle-ware component used for communication between SAP and Azure SQL. Please follow the installation steps described in the Java Connector Setup.
Minimum required Java connector version is 222.
...
Azure BLOB storage is required as intermediate storage during data transfer. Please follow this guide to create the storage Azure BLOB.
Master Key
To allow BULK INSERT into database tables from the BLOB container, Azure SQL needs to store Database Scoped Credentials.
SAS token used for authentication to BLOB container is used for creation or update of these credentials, but to store this sensitive information securely, Azure SQL requires the use of Master Key.
This can be simply created by executing a query:
|
Specific password passwords can be chosen during Master Key creation.
More information in the official Microsoft documentation https://docs.microsoft.com/en-us/sql/t-sql/statements/create-master-key-transact-sql?view=sql-server-ver15.
...
To use OAuth authentication, there needs to be an application registration resulting in Tenant ID, Client ID, and Secret strings. OAuth profile setup is documented in OAuth 2.0 Authentication.
Afterward, the registered application Display Name can be added as a DB user:
|
To enable OAuth 2.0 authentication from the SAP side, an OAuth RFC destination needs to be created.
b) Database user authentication
The other option is to use authentication using a standard database user. You can use the built-in admin created during pool creation, or a dedicated technical user created later on.
...
Download JDBC driver for SQL server
Download the JDBC driver from the MS JDBC Download site. Upload the .jar file to the sub-directory under /sapmnt
filesystem, so it's available to each application server.
The default directory for the driver is /sapmnt/<SID>/global/security/dvd_conn/mssql/
, but it can be changed freely, as long as every application server will have access to it via the same SAP logical path/file.
The default SAP logical file (of type DIR) used to address directory with JDBC driver is /DVD/DEF_MSSQL_DRIVER
.
...
Storage ID | Logical identifier of the storage (maximum 10 characters) |
Referenced storage | Azure BLOB storage ID serving as staging directory during data transfer |
Java connector RFC | RFC destination for communication with Java connector |
Java call repeat | Number of times failed JDBC calls are repeated |
Repeat delay (seconds) | Delay between repeated JDBC calls |
Dedicated SQL endpoint | Database server name as specified in JDBC connection details |
JDBC Port | Port for JDBC connection, 1433 is currently fixed port number |
Database name | Database name as specified in JDBC connection details |
Database schema | Database schema to be used (default is DBO) |
Enable update | Not in use (for future implementation) |
Use extended escaping | Encapsulates data contents in special characters to avoid possible problems during BULK INSERT to Azure SQL table |
Driver path | SAP Logical path defined via transaction FILE. Consists of concatenation of Logical File Path and Logical File Name. Example: |
Login timeout (seconds) | Time interval in seconds during which the JDBC driver is trying to establish a connection |
Fetch Size | Default size of fetch rows from the server using by JDBC driver (e.g. 500) |
Hints | Additional parameters added to JDBC connection string |
Connection pool size | Size of connection pool used by connection pooling in JCo |
OAuth 2.0 profile | Profile for OAuth 2.0 setup |
b) JDBC user/password authentication
...