業務でたまにしか使わず忘れがちなので、備忘としてメモさせて頂きます。
※保守では知らぬ間に権限が変更されていることが。。
##オブジェクトに読み取り権限を付与する
GRANT
GRANT SELECT ON オブジェクト名TO ユーザー名またはロール名
##オブジェクトのインサート権限を剥奪する
REVOKE
REVOKE INSERT ON オブジェクト名TO ユーザー名またはロール名
##指定したオブジェクトの権限一覧を表示する
OBJECT
SELECT
OBJECT_NAME(major_id) AS オブジェクト
,USER_NAME(grantee_principal_id) AS ユーザー
,permission_name as 権限名
,state_desc as 権限の状態
FROM sys.database_permissions
WHERE major_id = OBJECT_ID('オブジェクト名')
##指定したユーザー(ロール)の権限一覧を表示する
USER
SELECT
USER_NAME(grantee_principal_id) AS ユーザー
,OBJECT_NAME(major_id) AS オブジェクト
,permission_name as 権限名
,state_desc as 権限の状態
,USER_NAME(grantor_principal_id)
FROM sys.database_permissions
WHERE grantee_principal_id = USER_ID('ユーザー名またはロール名')
##オブジェクトの権限一覧を表示する
LIST
SELECT
OBJECT_NAME(major_id) AS オブジェクト
,USER_NAME(grantee_principal_id) AS ユーザー
,permission_name as 権限名
,state_desc as 権限の状態
FROM sys.database_permissions
where USER_NAME(grantee_principal_id) <> 'public'
and OBJECT_NAME(major_id) is not null
最後のSQLをよく使います。
間違いがありましたらご指摘ください。。