2009-05-28 15 views
3

sp_password sql server 2000のsprocは、db_accessadmin db_securityadminデータベースロールのメンバシップとsecurityadminサーバーロールのメンバシップを必要とするだけで、ユーザーは古いパスワードを知らなくてもパスワードを変更できます。しかし、SQL Server 2005/2008では、BOLはこれを行うための "CONTROL SERVER"パーミッションがユーザに必要であると言います。 CONTROL SERVER権限はユーザーにどのような権限を与えますか?SQL Server 2008 CONTROL SERVER権限

アップデート:私はこれを見つけた:

制御サーバは、SQL Server 2005のような新しい許可され、それはsysadmin固定サーバーロールのメンバであるとして同じアクセス権を付与します。 - http://www.sqlservercentral.com/blogs/brian_kelley/archive/2009/02/24/detecting-when-a-login-has-implicit-access-to-a-database.aspx

更新: ドキュメントが間違っている判明。 SQL Server 2000のように、SQL Server 2008 sp_passwordは、db_accessadmin & db_securityadminデータベースロールのメンバシップとsecurityadminサーバーロールのメンバシップを必要とするように見えるため、古いパスワードを知らなくてもパスワードを変更できます。

答えて

2

this MSDN pageにCONTROL SERVERの影響を受ける特定のセキュリティ保護対象のリストを参照してください。

+1

私はそのページを見つけたと思うが、私はそのテーブルを逃した - ありがとう! –

1

CONTROL SERVERのセキュリティの意味については、このブログのsysadminと比較して完全な説明があります:"CONTROL SERVER vs. sysadmin/sa: permissions, system procedures, DBCC, automatic schema creation and privilege escalation - caveats"

CONTROL SERVERを持つプリンシパルは、そこに表示されているsysadminへの権限を簡単に昇格できることに注意することが重要です。

さらに "sysadmin" -serverロールが必要なすべてのプロシージャの一覧。