前提条件 Microsoft Azure Synapse SQLにアクセスするように、Microsoft SQL Server認証、Azure Active Directory認証、マネージドID認証、 、およびサービスプリンシパル認証タイプを設定できます。
また、Microsoft Azure Synapse SQLからデータの読み取りを行うときに、サーバーレスSQLプールに接続することができます。サーバーレスSQLプールへの接続時にMicrosoft Azure Synapse SQLにアクセスするように、Microsoft SQL Server認証、Azure Active Directory認証、およびマネージドID認証タイプを設定できます。認証の詳細については、Informatica How-Toライブラリの記事「
Prerequisites to connect to a serverless SQL pool 」を参照してください。
接続プロパティを設定する前に、使用する認証のタイプに基づいて認証の詳細を用意しておく必要があります。
Azure Active Directory認証 Azure Active Directory(AAD)認証を使用してMicrosoft Azure Synapse SQLに接続するには、Azure Active Directory管理者とAzure Active Directoryユーザーを作成する必要があります。
Azure Active Directory管理者の作成 Azure Active Directoryに新しいユーザーを追加するには、管理者ロールが必要です。
Microsoft Azure Synapse SQLをホストするAADとMicrosoft SQL ServerのAzure Active Directory管理者を設定するには、次の手順を実行します。
1 資格情報を使用して、Microsoft Azureポータルにログオンします。[ダッシュボード]ページが表示されます。
2 [すべてのリソース]ページで、Microsoft Azure Synapse SQLをホストしているMicrosoft SQL Serverを選択します。3 Microsoft SQL Serverに表示された[設定]で、[Active Directory管理者] オプションを選択します。以下の図に、Active Directory管理者設定を示します。
4 [管理者の設定] をクリックします。[管理者の追加]ページが表示されます。
5 管理者として使用する電子メールIDを入力してから、[選択] をクリックします。6 [保存] をクリックします。Azure Active Directoryユーザーの作成 AADユーザーを作成し、AAD認証を使用してMicrosoft Azure Synapse SQL接続を設定するときにAADユーザー資格情報を使用します。
AADユーザーを作成するには、次の手順を実行します。
1 前の手順で作成したAzure Active Directory管理者を使用して、Microsoft Azure Synapse SQLに接続します。Microsoft SQL Server Management Studioを使用して、Microsoft Azure Synapse SQLに接続できます。
2 Microsoft SQL Server Management Studioの新しいクエリウィンドウで、次のコマンドを実行してAADユーザーを作成します:create user [user@foobar.com] from external provider;
3 次の特権をユーザーに割り当てます:CREATE USER [username] FROM EXTERNAL PROVIDER;
ALTER ROLE db_datareader ADD MEMBER [username]
ALTER ROLE db_datawriter ADD MEMBER [username]
GRANT EXECUTE TO [username]
grant ALTER ANY EXTERNAL DATA SOURCE to [username];
grant create table to [username];
grant create schema to [username];
grant select to [username];
grant update to [username];
grant insert to [username];
grant delete to [username];
grant create view to [username];
grant select on schema :: sys to [username];
grant control to [username];
EXEC sp_addrolemember 'db_owner','[username]';
ALTER ROLE db_owner ADD MEMBER [username]
サービスプリンシパル認証 サービスプリンシパル認証では、サービスプリンシパルIDを使用してAzureリソースへのアクセスを認証および承認します。サービスプリンシパル認証を使用してMicrosoft Azure Synapse SQLに接続する前に、特定の前提条件を必ず満たすようにしてください。
1 サービスプリンシパルアプリケーションを登録する。2 サーバーレスSQLプールのサービスプリンシパルユーザーを設定する。3 専用SQLプールのサービスプリンシパルユーザーを設定する。マネージドID認証 マネージドID認証では、Azure Active DirectoryのマネージドIDを使用してAzureリソースへのアクセスを安全に認証および承認します。
マネージドID認証を使用してMicrosoft Azure Synapse SQLに接続する場合、システム割り当てIDのユーザーは、そのIDを有効にした仮想マシンになります。ユーザー割り当てIDのユーザーは、Azure portalで作成したユーザーIDになります。
マネージドID認証を使用してMicrosoft Azure Synapse SQLまたはMicrosoft Azure Data Lake Storage Gen2に接続する前に、特定の前提条件を必ず満たすようにしてください。
1 Azure仮想マシンを作成する。2 Secure AgentをAzure仮想マシンにインストールする。3 Azure仮想マシンのシステム割り当てIDまたはユーザー割り当てIDを有効にする。両方のIDを有効にしてもクライアントIDが指定されていない場合は、システムで割り当てられたIDが認証に使用されます。
4 マネージドIDを追加または削除した後に、Azure仮想マシンを再起動する。サーバーレスSQLプール サーバーレスSQLプールに接続するようにMicrosoft Azure Synapse SQL接続を設定できます。サーバーレスSQLプールでは、データの格納や事前設定されたインフラストラクチャが必要となることはありません。サーバーレスSQLプールに接続するのは、Microsoft Azure Data Lake Storage Gen2に格納されているデータを参照する外部テーブルに対してクエリを実行する場合、またはOPENROWSET関数を使ったクエリを使用する場合です。
サーバーレスSQLプールに接続するには、Microsoft Azure Synapse SQL接続でサーバーレスSQLプールに対してAzure DW JDBC URL接続文字列を指定します。
サーバーレスSQLプールに接続してMicrosoft Azure Synapse SQL から読み取りを行う前に、次の前提条件を必ず満たすようにしてください。
1 Azure Analyticsサーバーレスプールワークスペースを設定します。2 サーバーレスプールワークスペースにSQLデータベースを作成します。3 次の認証タイプのJDBC URLを取得します。- Microsoft SQL Serverの認証- Azure Active Directory(AAD)認証- マネージドID認証4 サービスプリンシパル認証を使用してMicrosoft Azure Data Lake Storage Gen2に接続し、ファイルをステージングするには、サービスプリンシパルの資格情報を取得します。5 OPENROWSETクエリを使用するか、外部テーブルを作成して、ファイルからデータを読み取る手順を設定します。権限の確認 権限により、Microsoft Azure Synapse SQLで実行できる操作のアクセスレベルを定義します。
次のような権限を確認する必要があります。
• デフォルトのスキーマがアカウントレベルまたはユーザーあるいはグループレベルでMicrosoft Azure Synapse SQL に存在することを確認します。• Microsoft Azure Synapse SQL に接続して操作を正常に実行するためのdb_owner 特権、または次のようなより詳細な特権のいずれかがユーザーに付与されていることを確認します。• 接続プロパティでステージングスキーマ名を設定する場合は、次の追加の権限がユーザーに付与されていることを確認してください:• ALTER ANY SCHEMA権限を持っている場合は、Microsoft Azure Synapse SQLでマスタキー、データベーススコープ資格情報、および外部データソースを作成する必要があります。これには、データベースに対するCONTROL権限が必要であり、接続の作成時に外部データソースを指定する必要があります。また、Microsoft Azure Synapse SQLコネクタは、データベーススコープ資格情報と外部データソースを削除しません。データベーススコープ資格情報と外部データソースを手動で削除する必要があります。
• マネージドID認証を使用してMicrosoft Azure Synapse SQLに接続する場合は、仮想マシンとユーザーIDに権限を付与してください。例: GRANT CONTROL TO <virtual machine name>; およびGRANT CONTROL TO <user identity name>;