SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

SSMS 19.x の Azure Active Directory 認証の機能拡張

leave a comment

従来からの SSMS (18.x まで) でも Azure Active Directory 認証をサポートしていました。

image

SSMS 19.x でも引き続き Azure Active Directory 認証をサポートしていますが、認証方式が強化されました。

image

新しく次の認証方式が追加されています。

  • Azure Active Directory – サービスプリンシパル
  • Azure Active Directory – マネージド ID
  • Azure Active Directory – 既定値

サービスプリンシパルとマネージド ID は今まではアプリケーションから使用する目的が多かったかと思いますが、最新の SSMS を使用することで対話型ログインでもこれらの資格情報を使用することができます。

SQL Server 2022 の Azure Active Diretory 認証 でもこれらの資格情報を使用することも可能となっています。

Azure Active Directory 認証の機能追加については、リリースノートに記載されています。

Azure Active Directory 認証
リレーショナル SQL インスタンスへの接続で、Azure Active Directory サービス プリンシパル、Azure Active Directory マネージド ID、Azure Active Directory の既定の認証方法がサポートされるようになりました。 "既定" では、一連の考えられるソースが認証に使用されます。たとえば、環境変数、Azure マネージド ID、ユーザーの共有トークン キャッシュ、Visual Studio、Azure CLI、Azure PowerShell などです。 詳しくは、「オプション (Azure サービス)」を参照してください

SSMS 19.x からは、データベースのアクセスにちては、System.Data.SqlClient ではなく、Microsoft.Data.SqlClient が使用されるようになっており、それに伴った機能追加とみることもできそうですね。

それぞれの接続方法については、SqlClient での Azure Active Directory 認証の使用 も読んでおくとよいかと思います。

サービスプリンシパルを使用して接続する場合は、「アプリケーション (クライアント) ID」「シークレット」を指定します。

マネージド ID の場合、システム割り当てマネージド ID の場合は、何も指定せずに接続でき、ユーザー割り当てマネージド ID の場合は、クライアント ID を指定することで接続ができます。

Azure Arc を有効にしているサーバーであれば、マネージド ID が付与されていますので、

  • Azure Arc 対応サーバー -> SQL Server 2022 にマネージド ID を使用した Azure Active Directory 認証

を実行することもできます。

マネージド ID でアクセスする場合、メタデータ経由でアクセストークンを取得しているはずですので、Azure Arc 対応サーバーでの Azure リソースに対して認証を行う の情報も参考にしておくとよいのではないでしょうか。(Windows の場合は Administrators / Hybrid agent extension applications グループのメンバーでないと マネージド ID 経由での接続はできないと思います)

最新の SSMS を使用することで今まではアプリケーション用途で使用していた ID を SSMS からも使用することができるようになりますので、SQL Server 2022 の Azure Active Directory 認証と合わせて活用方法を考えてみるとよさそうですね。

Share

Written by Masayuki.Ozawa

3月 6th, 2023 at 9:33 am

Posted in SQL Server

Tagged with

Leave a Reply