次の方法で共有


チュートリアル:サーバー管理者とユーザー ロールを構成する

このチュートリアルでは、SQL Server Management Studio (SSMS) を使用して Azure のサーバーに接続し、サーバー管理者とモデル データベース ロールを構成します。 また、 表形式モデル スクリプト言語 (TMSL) についても説明します。 TMSL は、1200 以上の互換性レベルの表形式モデル用の JSON ベースのスクリプト言語です。 これを使用して、多くの表形式モデリング タスクを自動化できます。 TMSL は PowerShell でよく使用されますが、このチュートリアルでは SSMS で XMLA クエリ エディターを使用します。 このチュートリアルでは、次のタスクを実行します。

  • ポータルからサーバー名を取得する
  • SSMS を使用してサーバーに接続する
  • サーバー管理者ロールにユーザーまたはグループを追加する
  • モデル データベース管理者ロールにユーザーまたはグループを追加する
  • 新しいモデル データベース ロールを追加し、ユーザーまたはグループを追加する

Azure Analysis Services のユーザー セキュリティの詳細については、「 認証とユーザーのアクセス許可」を参照してください。

[前提条件]

Azure portal にサインインする

ポータルにサインイン します

サーバー名を取得する

SSMS からサーバーに接続するには、まずサーバー名が必要です。 サーバー名はポータルから取得できます。

Azure portal>サーバー >Overview>Server name で、サーバー名をコピーします。

Azure でサーバー名を取得する

SSMS で接続する

残りのタスクでは、SSMS を使用してサーバーに接続して管理します。

  1. SSMS >Object エクスプローラーで、[ 接続>Analysis Services] をクリックします。

    繋ぐ

  2. [ サーバーへの接続 ] ダイアログ ボックスの [ サーバー名] に、ポータルからコピーしたサーバー名を貼り付けます。 [認証] で、[MFA サポートを使用した Active Directory ユニバーサル] を選択し、ユーザー アカウントを入力して Connect キーを押します。

    SSMS で接続する

    ヒント

    MFA サポートを使用して Active Directory ユニバーサルを選択することをお勧めします。 この種類の認証では、 非対話型および多要素認証がサポートされます。

  3. オブジェクト エクスプローラーで、展開してサーバー オブジェクトを表示します。 右クリックすると、サーバーのプロパティが表示されます。

    SSMS のオブジェクト エクスプローラー

サーバー管理者ロールにユーザー アカウントを追加する

このタスクでは、Microsoft Entra ID のユーザーまたはグループ アカウントをサーバー管理者ロールに追加します。 セキュリティ グループを指定する場合は、 obj:groupid@tenantidを使用します。

  1. オブジェクト エクスプローラーで、サーバー名を右クリックし、[プロパティ] をクリックします。

  2. [ Analysis Server のプロパティ ] ウィンドウで、[ セキュリティ>追加] をクリックします。

  3. [ ユーザーまたはグループの選択 ] ウィンドウで、Microsoft Entra ID にユーザーまたはグループ アカウントを入力し、[ 追加] をクリックします。

    サーバー管理者の追加

  4. [ OK] をクリックして、 Analysis Server のプロパティを閉じます。

    ヒント

    ポータルで Analysis Services 管理者 を使用して、サーバー管理者を追加することもできます。

モデル データベース管理者ロールにユーザーを追加する

このタスクでは、モデルに既に存在するユーザーまたはグループ アカウントを Internet Sales Administrator ロールに追加します。 このロールには、adventureworks サンプル モデル データベースに対するフル コントロール (管理者) アクセス許可があります。 このタスクでは、作成したスクリプトで CreateOrReplace TMSL コマンドを使用します。

  1. オブジェクト エクスプローラーでDatabases>adventureworks>Roles を展開します。

  2. [Internet Sales Administrator] を右クリックし、[スクリプト ロールとして>作成または置換を>新しいクエリ エディター ウィンドウへ]をクリックします。

    [新しいクエリ エディター] ウィンドウ

  3. XMLAQuery で、"memberName" の値を Microsoft Entra ID のユーザーまたはグループ アカウントに変更します。 既定では、サインインしているアカウントが含まれています。ただし、既にサーバー管理者であるため、独自のアカウントを追加する必要はありません。

    XMLA クエリの TMSL スクリプト

  4. F5 キーを押してスクリプトを実行します。

新しいモデル データベース ロールを追加し、ユーザーまたはグループを追加する

このタスクでは、TMSL スクリプトの Create コマンドを使用して、新しい Internet Sales Global ロールを作成し、ロールの 読み取り アクセス許可を指定し、Microsoft Entra ID からユーザーまたはグループ アカウントを追加します。

  1. オブジェクト エクスプローラーでadventureworks を右クリックし、[新しいクエリ>XMLA] をクリックします。

  2. 次の TMSL スクリプトをコピーしてクエリ エディターに貼り付けます。

    {
    "create": {
      "parentObject": {
        "database": "adventureworks",
       },
       "role": {
         "name": "Internet Sales Global",
         "description": "All users can query model data",
         "modelPermission": "read",
         "members": [
           {
             "memberName": "globalsales@adventureworks.com",
             "identityProvider": "AzureAD"
           }
         ]
       }
      }
    }
    
  3. "memberName": "globalsales@adventureworks.com"オブジェクトの値を、Microsoft Entra ID のユーザーまたはグループ アカウントに変更します。

  4. F5 キーを押してスクリプトを実行します。

変更を確認する

  1. オブジェクト エクスプローラーで、サーバー名をクリックし、[最新の情報に更新] をクリックするか、F5 キーを押します。

  2. [データベース>adventureworks>Roles を展開します。 前のタスクで追加したユーザー アカウントと新しいロールの変更が表示されていることを確認します。

    オブジェクト エクスプローラーで確認する

リソースをクリーンアップする

不要になったら、ユーザーまたはグループのアカウントとロールを削除します。 これを行うには、 ロールのプロパティ>メンバーシップ を使用してユーザー アカウントを削除するか、ロールを右クリックして [削除] をクリック します

次のステップ

このチュートリアルでは、Azure AS サーバーに接続し、SSMS の adventureworks サンプル モデルのデータベースとプロパティを調べる方法について説明しました。 また、SSMS スクリプトと TMSL スクリプトを使用して、既存のロールと新しいロールにユーザーまたはグループを追加する方法についても説明しました。 サーバーとサンプル モデル データベースに対してユーザーアクセス許可が構成されたので、Power BI などのクライアント アプリケーションを使用して、ユーザーと他のユーザーがそれに接続できます。 詳細については、次のチュートリアルに進んでください。