0

sysadminロールを持つ資格情報でSQL Server(2016、オンプレミス)DBを使用するには、アプリケーション(NextGen ERH)が必要です。ユーザーがDBをシングルユーザーモードに設定しないようにします

私たちの必要性は、ハイテクユーザーがDBをシングルユーザーモードにするのを防ぐことです。そのようなことが起こり、将来の事態を防ぐために気付いたことがあります。

ですから、どうすれば達成できるのでしょうか? Revoke alter any database from username - これは役に立ちませんでしたが、ユーザーはDBをシングルユーザーモードに設定できます。

DBユーザーはWindows認証ではなくSQLサーバーに対してローカルです。

+3

sysadminが何もしないようにすることはできません。 – DavidG

+1

^^^まさにそうです。より少ない権限でユーザーを作成します。 –

+0

インフラチームにそのような製品を販売するのは苦労します –

答えて

0

あなたがシングルユーザーモードから、データベース全体を防ぎたい場合は、データベースになりたい場合は、2005

ALTER DATABASE 'your_database_name_goes_here' SET MULTI_USER 

より大きいSQL Serverのバージョンでは、以下のコード

exec sp_dboption 'your_database_name_goes_here', 'single user', 'FALSE' 

を使用することができますsysadminのみでシングルサーバモードに設定すると、以下のコードを使用できます。

ALTER DATABASE 'your_database_name_goes_here' 
SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE 

もしt彼はハイテクユーザーがsysadminロールに属していない場合、上記のコードはdbをシングルユーザーモードに設定することができません。

EDITは、オブジェクトエクスプローラで

  • SSMSを使用してマルチユーザーモードにデータベースを設定するSQL Serverデータベース エンジンのインスタンスに接続し、そのインスタンスを展開します。
  • 変更するデータベースを右クリックし、[プロパティ]をクリックします。
  • [データベースのプロパティ]ダイアログボックスで、[オプション]ページをクリックします。
  • [アクセス制限]オプションから[複数]を選択します。
  • 他のユーザーがデータベースに接続している場合は、Open Connectionsメッセージが表示されます。プロパティーを変更して他の接続をすべて閉じるには、「はい」をクリックします。
+0

sp_dboptionはSQL Server 2005のもので、そのバージョンhttps://technet.microsoft.com /en-us/library/ms187310(v=sql.105).aspx。私たちはSQL Server 2016を使用していますが、忘れていました – vyarovoy

+0

ALTER DATABASE 'your_database_name_goes_here' SET MULTI_USERを代替として使用できます –

+0

シングルユーザーモードに戻って戻す方法はすべて明確です。最初の質問は、(例えば、権限を取り消すことによって)ユーザがシングルモードでDBを設定するのを防ぐ方法でした。特殊条件 - ユーザーにはsysadmin dbロールがあります。 – vyarovoy

関連する問題