あるデータベース専用のユーザを作って、db_owner のロールを与えてます。
バックアップもうまくいったんで、てっきり復元もできるかと思ったら、
System.Data.SqlClient.SqlError: ユーザーにはデータベース 'データベース名' を復元する権限がありません。
重要度:14
SQL Serverエラーナンバー:3110
と怒られました。
で調べてみると、復元を実行するユーザは以下のいずれかのメンバでないとけないようです。
・dbo
・sysadminサーバロール
・dbcreatorサーバロール
dbo というのは未だにちょっと概念が分かってないんで、とりあえず dbcreater サーバロールのメンバにユーザ加えることで対応しました。
参照: