SQLAzureで非常に便利な「CREATEASCOPYOF」コマンドを使用して、SQLAzureデータベースをバックアップするための小さなアプリを作成しました。例えば
CREATE DATABASE MyNewDB AS COPY OF MyOldDB
このコマンドは、管理者ログイン(サーバーの作成時に取得する最初のログイン)で実行します。 私の質問:上記のコマンドを実行するために新しいログインに必要な最小限の権限は何ですか?
これまでのところ、これが私が行ったことです。
-- IN MASTER DB --
CREATE LOGIN DBCreator WITH PASSWORD = '?????????????'
CREATE USER DBCreator FROM LOGIN DBCreator;
EXEC sp_addrolemember 'dbmanager', 'DBCreator';
-- IN MyOldDB --
-- (I ran this stuff when the previous commands didn't do it) --
CREATE USER DBCreator FROM LOGIN DBCreator;
EXEC sp_addrolemember 'db_datareader', 'DBCreator'; --
そして、上記のCREATEDATABASEコマンドを実行したときの結果は次のとおりです。
CREATE DATABASE permission denied in database 'MyOldDB'.