Table.Grant 메서드 (ObjectPermissionSet, String, array<String )

Grants access to the specified permission on the specified columns for the specified grantee on the specified columns on the table.

네임스페이스:  Microsoft.SqlServer.Management.Smo
어셈블리:  Microsoft.SqlServer.Smo(Microsoft.SqlServer.Smo.dll)

구문

‘선언
Public Sub Grant ( _
    permission As ObjectPermissionSet, _
    granteeName As String, _
    columnNames As String() _
)
‘사용 방법
Dim instance As Table 
Dim permission As ObjectPermissionSet 
Dim granteeName As String 
Dim columnNames As String()

instance.Grant(permission, granteeName, _
    columnNames)
public void Grant(
    ObjectPermissionSet permission,
    string granteeName,
    string[] columnNames
)
public:
virtual void Grant(
    ObjectPermissionSet^ permission, 
    String^ granteeName, 
    array<String^>^ columnNames
) sealed
abstract Grant : 
        permission:ObjectPermissionSet * 
        granteeName:string * 
        columnNames:string[] -> unit  
override Grant : 
        permission:ObjectPermissionSet * 
        granteeName:string * 
        columnNames:string[] -> unit
public final function Grant(
    permission : ObjectPermissionSet, 
    granteeName : String, 
    columnNames : String[]
)

매개 변수

  • granteeName
    유형: System.String
    A String value that specifies the grantee to be granted access to the set of permissions.
  • columnNames
    유형: array<System.String[]
    A String array value that specifies the list of columns to which the set of permissions is granted.

구현

IColumnPermission.Grant(ObjectPermissionSet, String, array<String[])

The following code example shows how to grant a grantee account permission to select table elements of the second table column. The grantee account is a placeholder for any defined user accounts.

The following database schema is used for this snippet.

//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];
String[] col = new String[1];
col[0] = tb.Columns[0].Name;
col[1] = tb.Columns[1].Name

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

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]
$col = @($tb.Columns[0].Name, $tb.Columns[1].Name)

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

참고 항목

참조

Table 클래스

Grant 오버로드

Microsoft.SqlServer.Management.Smo 네임스페이스

관련 자료

테이블 생성, 변경 및 제거

테이블

CREATE TABLE(Transact-SQL)