次の方法で共有


Grant メソッド (ObjectPermissionSet, String, Boolean)

特定のテーブルについて、指定した権限にアクセスする権利、およびその権限へのアクセスを他のユーザーに許可する権利を指定した権限付与対象ユーザーに与えます。

名前空間:  Microsoft.SqlServer.Management.Smo
アセンブリ:  Microsoft.SqlServer.Smo (Microsoft.SqlServer.Smo.dll)

構文

'宣言
Public Sub Grant ( _
    permission As ObjectPermissionSet, _
    granteeName As String, _
    grantGrant As Boolean _
)
'使用
Dim instance As Table
Dim permission As ObjectPermissionSet
Dim granteeName As String
Dim grantGrant As Boolean

instance.Grant(permission, granteeName, _
    grantGrant)
public void Grant(
    ObjectPermissionSet permission,
    string granteeName,
    bool grantGrant
)
public:
virtual void Grant(
    ObjectPermissionSet^ permission, 
    String^ granteeName, 
    bool grantGrant
) sealed
abstract Grant : 
        permission:ObjectPermissionSet * 
        granteeName:string * 
        grantGrant:bool -> unit 
override Grant : 
        permission:ObjectPermissionSet * 
        granteeName:string * 
        grantGrant:bool -> unit 
public final function Grant(
    permission : ObjectPermissionSet, 
    granteeName : String, 
    grantGrant : boolean
)

パラメーター

  • granteeName
    型: System. . :: . .String
    指定した権限のセットを拒否する権限付与対象ユーザーを示す String 値です。
  • grantGrant
    型: System. . :: . .Boolean
    指定した権限付与対象ユーザーに対して、テーブルの権限セットを他のユーザーに許可する権利を与えるかどうかを示す Boolean プロパティです。
    True の場合は、権限付与対象ユーザーに対し、テーブルの指定した権限セットを他のユーザーに許可する権限を付与します。False の場合、その権限を付与しません。

実装

IObjectPermission. . :: . .Grant(ObjectPermissionSet, String, Boolean)

使用例

次のコード例では、権限付与対象アカウントにテーブル要素を選択する権限を許可する方法を示します。grantee アカウントは、定義済みのユーザー アカウントに置き換えてください。

このスニペットには次のデータベース スキーマが使用されます。

//CREATE DATABASE MYTESTDB;
//GO

//USE MYTESTDB;
//GO

//CREATE TABLE TABLE1(
//    id int,
//    name varchar(32)
//);
//GO

C#

Server srv = new Server("(local)");
Database db = srv.Databases["MYTESTDB"];

Table tb = db.Tables[0];

ObjectPermissionSet objPermissionSet = new ObjectPermissionSet(ObjectPermission.Select);
objPermissionSet.Select = true;
tb.Grant(objPermissionSet, grantee, true);

Powershell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("MYTESTDB")
$tb = $db.Tables[0]

$objPermissionSet = new-object Microsoft.SqlServer.Management.Smo.ObjectPermissionSet([Microsoft.SqlServer.Management.Smo.ObjectPermission]::Select)
$objPermissionSet.Select = $TRUE
$tb.Grant($objPermissionSet, grantee, $TRUE)