ロールの追加
適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric SQL Database
この記事では、SQL Server Management Studio または Transact-SQL を使用して、SQL Server のログインとデータベース ユーザーにロールを割り当てる方法について説明します。 SQL Server で権限を効率的に管理するには、ロールを使用します。 ロールに権限を割り当て、そのロールに対してユーザーとログインの追加および削除を行います。 ロールを使用すると、権限をユーザーごとに個別に管理する必要がありません。
SQL Server では、4 種類のロールをサポートしています。
固定サーバー ロール
ユーザー定義サーバー ロール
固定データベース ロール
ユーザー定義データベース ロール
SQL Server では、固定ロールは自動的に使用可能になります。 固定ロールには、一般的なタスクを実行するのに必要な権限があります。 固定ロールの詳細については、次のリンクを参照してください。 ユーザー定義ロールはユーザーが作成するもので、権限を選択してカスタマイズできます。 ユーザー定義ロールの詳細については、次のリンクを参照してください。
SQL Server Management Studio を使用します。
Note
このセクションの 2 つの手順は、SQL Server にのみ適用されます。
固定サーバー ロールにメンバーを追加する
オブジェクト エクスプローラーで、固定サーバー ロールを編集するサーバーを展開します。
[セキュリティ] フォルダーを展開します。
[サーバー ロール] フォルダーを展開します。
編集するロールを右クリックし、 [プロパティ]をクリックします。
[ Server Role Properties ダイアログ ボックスで、 Members ページを選択し、 Add を選択します。
[サーバー ログインまたはロールの選択] ダイアログ ボックスで、 [選択するオブジェクト名を入力してください (例)]に、このサーバー ロールに追加するログインまたはサーバー ロールを入力します。 または、 Browse... を選択し、 [オブジェクトのブロウズ ] ダイアログ ボックスで使用可能なすべてのオブジェクトを選択します。 OKを選択して、[サーバー ロールのプロパティ] ダイアログ ボックスに戻ります。
[OK] を選択します。
ユーザー定義データベース ロールにメンバーを追加する
オブジェクト エクスプローラーで、ユーザー定義のデータベース ロールを編集するサーバーを展開します。
[データベース] フォルダーを展開します。
ユーザー定義のデータベース ロールを編集するデータベースを展開します。
[セキュリティ] フォルダーを展開します。
[ロール] フォルダーを展開します。
[データベース ロール] フォルダーを展開します。
編集するロールを右クリックし、 [プロパティ]をクリックします。
[ Database Role Properties -database_role_name ] ダイアログ ボックスの [ General ] ページで、[追加 選択。
[データベース ユーザーまたはロールの選択] ダイアログ ボックスで、 [選択するオブジェクト名を入力してください (例)]に、このデータベース ロールに追加するログインまたはデータベース ロールを入力します。 または、 Browse... を選択し、 [オブジェクトのブロウズ ] ダイアログ ボックスで使用可能なすべてのオブジェクトを選択します。 OK を選択して、Database ロールのプロパティ -database_role_name ダイアログ ボックスに戻ります。
[OK] を選択します。
Transact-SQL の使用
固定サーバー ロールにメンバーを追加する
オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。
標準バーで、 [新しいクエリ] を選択します。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。
ALTER SERVER ROLE diskadmin ADD MEMBER [Domain\Juan] ; GO
詳細については、「ALTER SERVER ROLE (Transact-SQL)」を参照してください。
ユーザー定義データベース ロールにメンバーを追加する
オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。
標準バーで、 [新しいクエリ] を選択します。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。
ALTER ROLE Marketing ADD MEMBER [Domain\Juan] ; GO
詳細については、「ALTER ROLE (Transact-SQL)」を参照してください。
アクセス許可
データベースに対する ALTER ANY ROLE アクセス許可、ロールに対する ALTER アクセス許可、または db_securityadminのメンバーシップが必要です。
Microsoft Fabric の SQL データベースでは、Fabric の [アイテムの書き込み] アクセス許可を持つユーザー/アプリは、任意のアクセス許可を付与できます。
制限事項
- データベース ロールの名前を変更しても、ロールの ID 番号、所有者、権限は変わりません。
- データベース ロールは、
sys.database_role_members
およびsys.database_principals
カタログ ビューに表示されます。 - Microsoft Fabric の SQL データベースでは、データベース レベルのユーザーとロールのみがサポートされます。 Microsoft Fabric の SQL データベースでは、データベース ユーザーの Microsoft Entra ID のみがサポートされている認証方法です。 詳細については、「 Microsoft Fabric の SQL データベースでの認証」を参照してください。