#oracle #grant
#Oracle #sql-grant
Вопрос:
Я пытаюсь предоставить привилегии в Oracle для новой группы пользователей, чтобы иметь возможность 1. читать, 2. обновлять и 3. добавлять записи.
Я думаю, что у меня есть оператор SQL для этого (см. Ниже), Но затем я хочу сделать так, чтобы этот новый пользователь мог, в свою очередь, передавать эти привилегии другим пользователям?
Пока у меня есть:
ПРЕДОСТАВЬТЕ SELECT, INSERT, UPDATE, DELETE
ДЛЯ Example_Table
ДЛЯ New_User_Group;
Пожалуйста, помогите!
Комментарии:
1. @Andrew Sayer показал вам, как это сделать. Но я бы настоятельно предостерег вас от этого. Это огромный риск для безопасности. Если вы хотите, чтобы у других были эти привилегии, предоставьте им ту же роль (NEW_USER_GROUP). Кстати, в oracle нет понятия «группа пользователей».
2. спасибо @EdStevens — я студент, поэтому на данный момент это теоретически, но я действительно ценю совет.
3. У меня несколько иной взгляд на это, чем у Эда Стивенса. Предоставление «с опцией предоставления» представляет собой огромный риск для безопасности, если это делается бездумно. Это нормально, если оно используется по назначению. На самом деле это относится к любому инструменту в любой отрасли. Большой риск для безопасности возникает, когда этот инструмент используется как ярлык для чего-то другого; но бывают случаи, когда вам может потребоваться более детальный доступ к «предоставлению», чем просто предоставление ролей влево и вправо.
Ответ №1:
Используйте with grant option
предложение https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/GRANT.html#GUID-20B4E2C0-A7F8-4BC8-A5E8-BE61BDC41AC3