Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Роли ORACLE, редактирование таблицы.... 
V
    Опции темы
Vas
Дата 28.11.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 29.6.2005
Где: Stavropol region

Репутация: нет
Всего: 28



Уважаемые гуру! Подскажите пожалуйста, если есть пользователь, в его схеме или не в его не важно, есть очень много таблиц пусть тысяча.
Как по простому запретить ему редактирование трех таблиц из всех, не уж то надо всем таблицам прописывать гранты типа
Код

grant select on Table to user;
grant insert on Table to user;

у пользователя стоит select any table и так далее. Если я пропишу select только для нужных таблиц, перекроют ли они привилегию insert any table?


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
ols
Дата 28.11.2006, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 24.8.2006
Где: Прага

Репутация: 1
Всего: 1



Хех smile вспоминается религиозная война как раз на эту тему правда на другом форуме smile ссылки на другие форумы давать можно? 
Как раз про запрещающие гранты smile 
Имхо это не нужно! 
Дать на кучу таблиц гранты за исключением пары штук можно простым скриптом наподобие: 
Код

begin
  for i in (select owner, table_name from dba_tables where owner = ... and table_name not in (...)) 
  loop
    execute immediate 'grant select, insert, delete, update on '||i.owner||'.'||i.table_name||' to user';
  end loop;
end;
/


удачи
PM MAIL WWW   Вверх
LSD
Дата 28.11.2006, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Цитата(Vas @  28.11.2006,  11:08 Найти цитируемый пост)
в его схеме или не в его не важно

Это как раз важно!
Цитата
The REVOKE statement can revoke only privileges and roles that were previously granted directly with a GRANT statement. You cannot use this statement to revoke:
  • Privileges or roles not granted to the revokee
  • Roles or object privileges granted through the operating system
  • Privileges or roles granted to the revokee through roles

Отобрать у пользователя права на его собственные объекты нельзя.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Vas
Дата 28.11.2006, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 29.6.2005
Где: Stavropol region

Репутация: нет
Всего: 28



LSD, спасибо, хорошее замечание  smile 


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
3x3
Дата 1.12.2006, 03:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 261
Регистрация: 17.9.2006

Репутация: 2
Всего: 8



Цитата(Vas @ 28.11.2006,  16:48)
LSD, спасибо, хорошее замечание  smile

Вынесите объекты в другую схему, а этим подонкам - вьюхи грант на селект только.


--------------------
Зачем платить больше,
когда можно заплатить дважды?
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.0667 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.