Я створив схему в SQL Azure і надав наступні дозволи на роль бази даних:
CREATE ROLE myrole AUTHORIZATION dbo;
EXEC sp_addrolemember 'myrole', 'myuser';
CREATE SCHEMA myschema AUTHORIZATION dbo;
GRANT ALTER, CONTROL, DELETE, EXECUTE, INSERT, REFERENCES, SELECT, UPDATE, VIEW
DEFINITION ON SCHEMA::myschema TO myrole;
GRANT CREATE TABLE, CREATE PROCEDURE, CREATE FUNCTION, CREATE VIEW TO myrole;
За допомогою вищезазначених дозволів myuser
можна створити / відкинути власну схему, тож для подолання проблеми я спробував дозволити ВІДНОВЛЕННЯ СКІЇ СХЕМИ. Але цей дозвіл також забороняє користувачеві створювати / скидати таблиці.
Які дозволи потрібні для того, щоб дозволити користувачеві робити що-небудь у межах своєї власної схеми, але не мати змоги створити або скинути саму схему?