この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 10498|答える: 0

[出典] SQL Serverでユーザーのオブジェクト権限や役割を照会します

[リンクをコピー]
掲載地 2015/01/28 16:33:32 | | |
SQL Serverにおけるオブジェクト権限およびユーザーの役割の照会[@more@]

-- ユーザーのオブジェクト権限を照会する
exec sp_helprotect NULL、『UserName』
-- ユーザーの役割を問い合わせる
執行sp_helpuser「ユーザー名」
-- 指定されたシステム役割を持つユーザーを問い合わせる
執行sp_helpsrvrolemember「sysadmin」
-- ネストされた役割はクエリ可能です
tree_roles は
(
選択role_principal_id、member_principal_id
sys.database_role_membersから
ここで member_principal_id = USER_ID(「ユーザー名」)
全員連合
c.role_principal_id選択c.member_principal_id
FROM sys.database_role_members c
インナージョインtree_roles
tree_roles.member_principal_id = c.role_principal_id
)
SELECT distinct USER_NAME(role_principal_id) RoleName
tree_rolesより
-- 他の権限に関連する基本テーブル
システムユーザーから*
syspermissions から * を選択します
-- 私のSQL Serverインスタンスにアクセスできるのは誰ですか?
選ぶ
nameはUserName、type_descはUserType、is_disabledはIsDisabledとして
sys.server_principalsより
ここでtype_desc('WINDOWS_LOGIN', 'SQL_LOGIN')
UserType、名前、IsDisabledによる順番
――誰が私のデータベースにアクセスできる?
選ぶ
dp.name UserName、dp.type_desc UserType、sp.name LoginName、sp.type_desc LoginType
sys.database_principals DPより
sys.server_principals 結合 sp on dp.principal_id = sp.principal_id
ユーザータイプによる順序付け
sys.database_principalsから*を選択
-- サーバーの役割
選ぶ
p.name UserName、p.type_desc UserType、pp.name ServerRoleName、pp.type_desc ServerRoleType
sys.server_role_members役から
roles.member_principal_id = p.principal_id に対して p sys.server_principals 結合
sys.server_principals PPに roles.role_principal_id = pp.principal_id
ここで pp.name('sysadmin')に入ります
ServerRoleName、UserName による順番
-- データベースの役割
選ぶ
p.name UserName、p.type_desc UserType、pp.name DBRoleName、pp.type_desc DBRoleType、pp.is_fixed_role IfFixedRole
sys.database_role_members役から
roles.member_principal_id sys.database_principals に結合 = p.principal_id
roles.role_principal_id sys.database_principalsページに = pp.principal_id
ここで pp.name は('db_owner', 'db_datawriter')
――これらのユーザーは何ができるのでしょうか?
選ぶ
grantor.name GrantorName、dp.state_desc StateDesc、dp.class_desc ClassDesc、dp.permission_name PermissionNameとして
OBJECT_NAME(major_id) ObjectName, GranteeName = grantee.name
sys.database_permissions DPより
dp.grantee_principal_id sys.database_principals助成先に参加 = grantee.principal_id
dp.grantor_principal_id sys.database_principalsの出場者に参加 = grantor.principal_id
ここでpermission_name「%UPDATE%」のようなものを






先の:SQLSERVERサーバー構成
次に:comboBox セットは読み取り専用(セレクトのみ)
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com