Что такое квота oracle
Пользователям, которые не имеют системной привилегии UNLIMITED TABLESPACE , нужно назначить квоту прежде, чем они смогут создать объекты в табличном пространстве.
Квоты могут быть:
Определенным значением в мегабайтах или килобайтах
Квота является допуском пространства в данном табличном пространстве. По умолчанию у пользователя нет никакой квоты на любое из табличных пространств. У Вас есть три опции для того, чтобы предоставить квоту пользователю на табличное пространство.
Unlimited: Позволяет пользователю использовать все доступное место в табличном пространстве
Value: Число в килобайтах или мегабайтах, которые может использовать пользователь. Это не гарантирует, что пространство доступно для пользователя. Это значение может быть больше или меньше, чем текущее место, которое доступно в табличном пространстве.
Системная привилегия UNLIMITED TABLESPACE: Переопределяет все отдельные квоты табличных пространств и дает пользователю неограниченную квоту для всех табличных пространств, включая SYSTEM и SYSAUX. Эту привилегию нужно предоставлять с осторожностью.
Отметьте: Предоставление роли RESOURCE включает предоставление этой привилегии.
Не следует назначать квоту пользователям для табличных пространств SYSTEM и SYSAUX. Как правило, только пользователи SYS и SYSTEM должны иметь право создавать объекты в табличных областях SYSTEM и SYSAUX.
Не нужно назначать квоту на присвоенное временное табличное пространство, а также на любое из табличных пространств отката. Вам не нужна квота, чтобы можно было вставлять, обновлять и удалять данные в базе данных Oracle. Единственные пользователи, которые нуждаются в квоте, - это учетные записи, которым принадлежат объекты базы данных. Это типично, когда при установке кода программы установщик создает учетные записи базы данных, которые будут владеть объектами. Только эти учетные записи нуждаются в квоте. Другим пользователям базы данных можно предоставить разрешение, чтобы использовать эти объекты без квоты.
Экземпляр Oracle проверяет квоту, когда пользователь создает или расширяет сегмент.
Для действий, которые предназначены для пользовательской схемы, только те действия, которые используют место в табличном пространстве, проверяются на ограничение квоты. Действия, которые не используют место в присвоенном табличном пространстве, не влияют на квоту (например, создание представлений или использование временных табличных пространств).
Квота добавляется, когда объекты, принадлежавшие пользователю, удаляются с предложением PURGE или когда объекты в корзине, принадлежавшие пользователю, очищаются.
Свойство quota используется для установки предела по объему пространства, занимаемого файловой системой. Также предусмотрено свойство reservation , которое гарантирует наличие определенного объема пространства для файловой системы. Оба свойства применяются в отношении набора данных, в котором они установлены, и дочерних элементов этого набора данных.
Таким образом, при установке квоты для набора данных tank/home общий объем пространства, используемого tank/home и всеми дочерними элементами, не может превышать эту квоту. Аналогичным образом, при настройке резервируемого пространства для tank/home система tank/home и все ее дочерние элементы будут использовать это пространство. Объем пространства, используемого набором данных и всеми его дочерними элементами, указывается в свойстве used .
Свойства refquota и refreservation могут использоваться для управления пространством файловой системы (без учета пространства, потребленного дочерними элементами, например снимками и клонами).
В данной версии Solaris можно установить квоту user или group для объема пространства, используемого файлами, относящимися к отдельному пользователю или группе. Свойства квот для пользователей или групп не могут быть установлены для тома в файловой системе до версии 4 или в пуле до версии 15.
При выборе механизма настройки квот и резервирования пространства, который лучше всего подходит для управления вашими файловыми системами, учитывайте следующие факторы :
Свойства quota и reservation удобны для управления пространством, используемым наборами данных.
Свойства refquota и refreservation предназначены для управления пространством, используемым наборами данных и снимками.
Если указать для свойства refquota или refreservation значение, которое больше, чем значение свойства quota или, соответственно, reservation, то это значение не вступит в силу. Если настроено значение для свойства quota или refquota, то операции, пытающиеся использовать более высокое значение, будут заканчиваться сбоем. Допускается превышение значения quota, если оно больше значения refquota. Если отдельные блоки снимка испорчены, то можно превысить значение quota до того, как будет превышено значение refquota.
Квоты пользователя или группы предоставляют более простой способ управления дисковым пространством для множества учетных записей пользователей, например, в университетах.
Для получения подробной информации о настройке квот и резервируемого пространства см. Установка квот в файловых системах ZFS и Настройка резервируемого пространства в файловых системах ZFS.
Установка квот в файловых системах ZFS
Для настройки и просмотра квот ZFS используются команды zfs set и zfs get . В следующем примере для tank/home/bonwick установлена квота 10 ГБ.
Квоты ZFS также влияют на выходные данные команд zfs list и df . Пример:
Следует отметить, что, несмотря на наличие в tank/home свободного пространства 33,5 ГБ, системам tank/home/bonwick и tank/home/bonwick/ws предоставляется только 10 ГБ свободного пространства, поскольку настроена квота для tank/home/bonwick .
Установить квоту меньше, чем используется для набора данных в настоящее время, невозможно. Пример:
Для набора данных можно настроить свойствоrefquota, ограничивающее объем доступного набору пространства. Этот жесткий лимит не включает пространство, используемое дочерними элементами, такими как снимки и клоны. Пример:
Кроме того, для набора данных можно установить еще одну квоту для управления пространством, которое используется снимками. Пример:
В данном случае studentA может достичь жесткого предела, определяемого свойством refquota (10 ГБ), но может удалить файлы для восстановления, даже если существуют снимки.
В приведенном выше примере команда zfs list отображает меньшую квоту (10 и 20 ГБ). Чтобы увидеть обе квоты, используйте команду zfs get . Пример:
Настройка квот пользователя или группы в файловой системе ZFS
Для настройки квоты пользователя или группы используются команды zfs userquota и zfs groupquota .
Отображение текущей квоты quota или group выполняется следующим образом:
Просмотр информации об общем использовании пространства пользователя или группы можно выполнить с помощью запроса следующих свойств:
Если требуется получить информацию об использовании пространства пользователя или группы по отдельности, используется запрос для следующих свойств:
Свойства квоты user и group не отображаются с помощью команд zfs get all dataset, которые используются для вывода перечня всех свойств файловой системы.
Удаление квот user или group выполняется следующим образом:
Квоты ZFS user и group имеют следующие функции:
При настройке в файловой системе квота user или group, установленная в родительской файловой системе, не наследуется автоматически дочерней файловой системой.
Однако квота user или group применяется при создании клона или снимка файловой системы, имеющий квоту user или group. Таким же образом квота user или group включается в файловую систему при создании потока с помощью команды zfs send даже без параметра -R .
Пользователи без соответствующих прав имеют доступ только к их собственному дисковому пространству. Пользователь типа root или пользователь, получивший права userused или groupused, может иметь доступ к информации о пространстве для учетных записей любого пользователя или группы.
Свойства userquota и groupquota невозможно настроить для томов ZFS, в файловой системе версии ниже 4 или в пуле версии ниже 15.
Для обзора квот пользователей в среде NFS может использоваться старая команда quota , например там, где смонтирована файловая система ZFS. Без указания параметров при выполнении команды quota выходные данные отображаются только в том случае, если превышена квота пользователя. Пример:
В случае сброса квоты, и если ограничение квоты более не превышается, для обзора квоты пользователя требуется использовать команду quota -v . Пример:
Oracle может ограничить количество дискового пространства, доступного для хранения объектов схемы. Квота (quota) определяет максимальное пространство, которое пользователь может использовать в каждом табличном пространстве (нулевая квота делает табличное пространство недоступным). По умолчанию ни один пользователь не имеет квоты ни в каком табличном пространстве, поэтому, следовательно, не может создавать объекты, даже если имеет соответствующие привилегии.
§ Чтобы пользователь мог создавать или увеличивать размер объектов в собственной схеме, он должен иметь квоту на использование соответствующего табличного пространства
§ Если пользователь имеет привилегию на объекты другой схемы (например, привилегию на вставку строк в таблицу другого пользователя), квота в табличном пространстве не требуются
§ Квота на использование временного табличного пространства пользователю не нужна, т.к. все объекты, которые автоматически создаются во временных сегментах, являются собственностью пользователя SYS
Табличное пространство по умолчанию, временное табличное пространство и квоты на использование табличного пространства указываются при создании пользователя (предложений QUOTA может быть несколько – по одному для каждого табличного пространства).
CREATE USER пользователь IDENTIFIED BY пароль | EXTERNALLY>
[DEFAULT TABLESPACE табличное_пространство]
[TEMPORARY TABLESPACE табличное_пространство]
[QUOTA целое | UNLIMITED> ON табличное_пространство]
[QUOTA целое | UNLIMITED> ON табличное_пространство]
…
DEFAULT TABLESPACE – устанавливает табличное пространство по умолчанию для объектов пользователя
TEMPORARY TABLESPACE – устанавливает временное табличное пространство для временных сегментов
QUOTA – разрешает пользователю занимать пространство в указанном табличном пространстве
целое – задает квоту в Кбайтах или Мбайтах (M)
UNLIMITED – разрешает пользователю выделять в указанном табличном пространстве неограниченное пространство
SQL> CREATE USER student IDENTIFIED BY tbd
DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp
QUOTA 15M ON users QUOTA 5M ON system;
Профили и ограничение использования ресурсов
Каждому пользователю базы данных назначается профиль (profile), который задает ограничения на использование некоторых системных ресурсов, доступных пользователю. Системные ресурсы, на которые можно задать ограничение, включают:
§ Количество одновременных сеансов пользователя
§ Время использования центрального процессора для сеанса или отдельного SQL утверждения
§ Количество логического ввода/вывода для сеанса или отдельного SQL утверждения
§ Время бездействия, разрешенное для сеанса пользователя
§ Время соединения с базой данных для сеанса пользователя
§ Ограничения на использование пароля, такие, как блокировка пароля после заданного числа неудачных попыток соединения с базой данных, время жизни пароля, возможность переиспользования и т.д.
Различные профили могут быть созданы и назначены индивидуально каждому пользователю базы данных. Пользователи, которым профиль не назначается явно, используют профиль по умолчанию. Ограничение использования ресурсов предотвращает чрезмерное потребление общих системных ресурсов базы данных.
Лимиты профилей могут контролироваться на уровне сеанса, на уровне команды, или на обоих уровнях.
§ Лимиты уровня сеанса контролируются для каждого соединения. Если превышен лимит уровня сеанса:
§ выполняется откат команды;
§ результаты выполнения предыдущих команд остаются в силе;
§ разрешаются только команды COMMIT, ROLLBACK или завершение сеанса;
§ никакие дальнейшие действия в текущем сеансе выполнены быть не могут.
§ Лимиты уровня команды контролируются для каждой команды SQL (и для каждого подзапроса). Если превышен лимит уровня команды:
§ обработка команды прекращается;
§ выполняется откат команды;
§ результаты выполнения предыдущих команд остаются в силе;
§ соединение пользователя с базой данных остается установленным.
Ресурсы, контролируемые на уровне сеанса:
Общее процессорное время в сотых долях секунды
Число одновременных сеансов для одного пользователя
Время соединения в минутах
Максимальный период бездействия в минутах
Число блоков данных (физическое и логическое чтение)
Частная область в SGA (только для многопотокового сервера)
Ресурсы, контролируемые на уровне команды:
Процессорное время на команду в сотых долях секунды
Число прочитанных блоков данных (физическое и логическое чтение)
Создание профиля
Для создания профиля используется SQL команда CREATE PROFILE
профиль – имя профиля
UNLIMITED – пользователь может использовать ресурс без ограничений
DEFAULT – для профиля копируется значение из профиля DEFAULT
SQL> CREATE PROFIE student_profile LIMIT
Назначение профиля
Профиль назначается при создании пользователя, несколько профилей одновременно пользователю назначить нельзя.
CREATE USER пользователь IDENTIFIED BY
[DEFAULT TABLESPACE табличное_пространство]
[TEMPORARY TABLESPACE табличное_пространство]
[QUOTA целое | UNLIMITED> ON табличное_пространство]
[QUOTA целое | UNLIMITED> ON табличное_пространство]
…
PROFILE профиль
PROFILE профиль – назначает пользователю указанный профиль
Пользователи, которым не назначен профиль, имеют профиль DEFAULT, который всегда существует в базе данных и является профилем по умолчанию. Кроме того, для любого профиля все не заданные явно значения берутся из профиля DEFAULT.
Настройка резервируемого пространства в файловых системах ZFS
Настройка резервируемого пространства ZFS подразумевает распределение пространства пула, гарантированно доступного набору данных. Таким образом, зарезервировать для набора данных пространство, которое в настоящее время не доступно в пуле, невозможно. Общий объем всех указанных резервирований не может превышать объем неиспользуемого пространства в пуле. Для настройки и просмотра резервируемого пространства ZFS используются команды zfs set и zfs get . Пример:
Настройка резервируемого пространства ZFS может повлиять на выходные данные команды zfs list . Пример:
Обратите внимание, что система tank/home использует пространство объемом 5 ГБ, несмотря на то, что общий объем пространства, доступного для tank/home и ее дочерних элементов, значительно меньше 5 ГБ. Используемое пространство отражает пространство, зарезервированное для tank/home/moore . Настройки резервируемого пространства учитываются при отображении занятого пространства родительского набора данных и проверяются на соблюдение установленных квот и прочих резервирований.
Набор данных может использовать больше пространства, чем определено в настройке резервируемого пространства, при условии наличия доступного незарезервированного пространства в пуле и соблюдении установленной для набора данных квоты. Пространство, зарезервированное для набора данных, не может быть занято другим набором данных.
Настройки резервируемого пространства не суммируются. Это означает, что при втором вызове команды zfs set для определения резервируемого пространства суммирование зарезервированного объема не выполняется. Напротив, вторая настройка заменяет собой первую.
Свойство refreservation позволяет зарезервировать для набора данных пространство, без учета пространства, используемого снимками и клонами. Резервирование refreservation учитывается в пространстве, используемом родительскими наборами данных, и сопоставляется с квотами и резервированием для родительских наборов данных. Пример:
Можно также настроить резервирование пространства для того же набора данных, чтобы гарантировать пространство для набора данных и для снимков. Пример:
Обычное резервирование учитывается в пространстве, используемом родительским элементом.
В приведенном выше примере команда zfs list отображает меньшую квоту (10 и 20 ГБ). Чтобы увидеть обе квоты, используйте команду zfs get . Пример:
Если установлено свойство refreservation, то иметь снимок разрешается только при наличии в пуле достаточного свободного пространства (за пределами данного резервирования) для размещения текущего объема байт referenced в наборе данных.
Рассматриваемые вопросы
Следующие термины имеют отношение к администрированию пользователей базы данных. Они отражают вопросы, которые будут рассмотрены в этом уроке:
Учетная запись пользователя базы данных (database user account) - средство упорядочения прав владения и доступа к объектам БД.
Пароль (password) - используется при аутентификации пользователей, выполняемой базой данных Oracle.
Привилегия (privilege) - право выполнения команд SQL определенного типа или право доступа к объекту другого пользователя.
Роль (role) - именованная группа связанных привилегий, предоставляемая пользователям или другим ролям.
Профиль (profile) - именованный набор ограничений на использование базы данных и ресурсов экземпляра.
Квота (quota) - ограничение на общее пространство, которое может быть предоставлено в данном табличном пространстве. Это один из способов контроля использования ресурсов пользователями.
Учетные записи пользователей базы данных
Чтобы получить доступ к базе данных, необходимо указать правильное имя пользователя БД и успешно пройти процедуру аутентификации, как того требует учетная запись этого пользователя. Oracle рекомендует, чтобы каждый пользователь имел свою учетную запись в базе данных. Это лучше всего помогает устранять бреши в безопасности и предоставляет информацию для проведения аудита операций. Однако в редких случаях пользователи могут совместно использовать общую учетную запись в базе данных. При этом операционная система и приложения должны обеспечить соответствующую безопасность базы данных.
Каждая учетная запись пользователя содержит:
Уникальное имя пользователя. Это имя не может содержать более 30 символов, не может содержать специальные символы и должно начинаться с буквы.
Метод аутентификации. Наиболее общий метод аутентификации - это использование пароля. Кроме того, база данных Oracle 10g поддерживает и другие методы аутентификации (биометрический, а также использующие сертификаты и маркеры (token authentication).
Табличное пространство по умолчанию. В нем пользователи создают свои объекты, если в команде не указывается другое табличное пространство. Отметим, что наличие такого табличного пространства не подразумевает, что пользователь имеет привилегию создания объектов в этом табличном пространстве и что у него есть квота использования этого табличного пространства при создании объектов. Обе эти возможности предоставляются отдельно.
Временное табличное пространство. Место для создания пользователями временных объектов, например, промежуточных результатов сортировок и временных таблиц.
Профиль пользователя. Набор ограничений пользователя, накладываемых на пароли и системные ресурсы.
Группа потребителей. Используется ресурсным менеджером.
Статус блокирования. Пользователи получают доступ к базе данных только при условии, что их учетная запись "разблокирована".
Предопределенные учетные записи SYS и SYSTEM
Пользователям SYS и SYSTEM по умолчанию предоставлена роль DBA (роль администратора базы данных).
Кроме того, пользователь SYS имеет все привилегии с атрибутом WITH ADMIN OPTION, а также является владельцем словаря данных. При подсоединении к пользователю SYS необходимо использовать фразу AS SYSDBA. Любой пользователь, которому предоставлена привилегия SYSDBA, может подсоединиться с использованием учетной записи SYS, указав для этого фразу AS SYSDBA. Только "привилегированным" пользователям, обладающим привилегией SYSDBA или SYSOPER, разрешено запускать и останавливать экземпляр базы данных.
По умолчанию пользователю SYSTEM предоставлена роль DBA, но не выделена привилегия SYSDBA.
Подсказка по наилучшему практическому подходу. В соответствие с принципом выделения наименьших привилегий эти пользователи не используются для выполнения рутинных операций. Для пользователей, которым необходимы привилегии АБД, создаются свои отдельные учетные записи и выделяются требуемые привилегии. Например, Джим использует пользователя jim с небольшими привилегиями и "привилегированного" пользователя jim_dba. Такой подход позволяет применить метод наименьших привилегий, устраняет совместное использование учетных записей и дает возможность осуществлять аудит отдельных действий.
SYS и SYSTEM - обязательные пользователи базы данных. Их нельзя удалить.
Создание пользователя
Oracle Enterprise Manager позволяет сопровождать перечень пользователей, которым разрешен доступ к базе данных. После перехода на страницу Users можно создавать, удалять и изменять установочные параметры пользователя.
Чтобы создать пользователя:
1. В Database Control выберите Administration > Schema > Users & Privileges > Users.
2. Щелкните на кнопке Create.
Введите требуемые данные. Звездочкой помечены обязательные элементы, например, имя пользователя (поле Name).
Дополнительные сведения об аутентификации приводятся на следующих страницах.
Кроме того, позднее в этом уроке будут рассмотрены профили.
Назначайте каждому пользователю табличное пространство по умолчанию и временное табличное пространство. Это позволит контролировать месторасположение создаваемых объектов, когда пользователь не указывает табличное пространство, в котором должен быть создан объект.
Если для создаваемого пользователя не указывается постоянное табличное пространство, тогда используется табличное пространство, определенное в системе по умолчанию. Подобным образом, если не указано временное табличное пространство, пользователю назначается определенное в системе по умолчанию временное табличное пространство.
Аутентификация пользователей
Аутентификация (authentication) означает проверку идентичности кого-то или чего-то (пользователя, устройства и других объектов), кто хочет использовать данные, ресурсы или приложения. Она производится для установления доверительного отношения (trust relationship) перед дальнейшим взаимодействием. Кроме того, аутентификация предоставляет возможность идентификации, позволяя связывать доступ и действия со определенными личностями (identities). После аутентификации процесс авторизации (authorization) может предоставить или ограничить уровни доступа и действия, разрешенные данному объекту.
При создании пользователя необходимо решить, какой метод аутентификации будет использоваться. Этот метод позднее может быть изменен.
Password (метод аутентификации с использованием пароля)
Этот метод также принято называть аутентификацией, выполняемой базой данных Oracle, в которой каждый пользователь создается вместе с паролем. Этот пароль должен указываться пользователем при попытке установления соединения. Когда администратор назначает пароль, он должен сразу же установить для него истечение срока годности (expire). Это заставит пользователя изменить пароль при первом соединении. Однако при этом необходимо позаботиться о том, чтобы пользователь имел возможность изменить пароль. Некоторые приложения не позволяют это сделать.
Пароль всегда автоматически и прозрачно шифруется при установлении сетевого соединения (в архитектуре клиент/сервер и сервер/сервер). Для шифрования пароля перед передачей его по сети применяется модифицированный алгоритм DES (Data Encryption Standard).
External (метод внешней аутентификации)
Этот метод также принято называть аутентификацией, выполняемой на уровне операционной системы. При использовании этого метода пользователи могут соединяться с Oracle более просто, без указания имени и пароля. База данных полагается на операционную систему или на службу сетевой аутентификации, когда ограничивает доступ к учетным записям пользователей БД. Пароль базы данных не используется при этом виде установления соединения. Этот метод аутентификации может использоваться, если это позволяет сделать операционная система или сетевая служба. Когда такое возможно, установите в параметре инициализации OS_AUTHENT_PREFIX значение префикса, используемого в именах пользователей Oracle. Этот префикс Oracle подставляет к началу наименования учетной записи каждого пользователя операционной системы. По умолчанию значение параметра - OPS$, что обеспечивает совместимость с предыдущими версиями сервера Oracle. Когда пользователь ОС пытается подсоединиться, Oracle соединяет префикс с именем пользователя в ОС, а затем сопоставляет полученную строку с именами пользователей в базе данных.
Например, предположим, что значение параметра следующее:
OS_AUTHENT_PREFIX=OPS$
Когда пользователь операционной системы с именем tsmith подсоединяется к базе данных Oracle и аутентифицируется на уровне ОС, Oracle проверяет, что в базе данных есть соответствующий пользователь OPS$tsmith и, если это так, разрешает соединение пользователя. При всех ссылках на пользователя, аутентифицируемого на уровне операционной системы, необходимо указывать префикс (OPS$tsmith).
Примечание: текстовое значение параметра OS_AUTHENT_PREFIX в некоторых ОС зависит от регистра символов. Дополнительную информацию об этом параметре см. в документации Oracle, относящейся к конкретной ОС.
Global (метод глобальной аутентификации)
Это строгая аутентификация, проводимая с помощью опции Oracle Advanced Security. Глобальная аутентификация позволяет идентифицировать пользователей биометрически, на основе сертификатов х509, маркерных устройств (token devices) и с помощью Oracle Internet Directory. Дополнительная информация об этих усовершенствованных методах аутентификации рассматривается в курсе Oracle Enterprise Identity Management.
Аутентификация администраторов
Безопасность на уровне операционной системы. В UNIX и Linux администраторы базы данных по умолчанию входят на уровне ОС в группу install. Таким образом им предоставляются привилегии, необходимые для создания и удаления файлов БД.
Администраторы и обеспечение безопасности. Авторизация при подсоединении с привилегией SYSDBA или SYSOPER осуществляется с помощью парольного файла или привилегий и прав доступа на уровне операционной системы. При аутентификации на уровне ОС база данных не проверяет введенное имя пользователя и пароль. Аутентификация на уровне ОС применяется, когда отсутствует парольный файл, когда введенное имя пользователя и пароль не находятся в этом файле, а также когда не предоставляются имя пользователя и пароль.
Когда аутентификация с помощью парольного файла завершается успешно, тогда вход в систему производится на основе имени пользователя Если же успешная аутентификация происходит на основе средств ОС, тогда регистрация соединение вида CONNECT / не соотносится с определенным пользователем.
Примечание. Аутентификация на уровне ОС имеет более высокий приоритет по сравнению с аутентификацией на основе парольного файла. Поэтому, если вы подсоединены в операционной системе как пользователь, входящий в группу OSDBA или OSOPER, тогда установление соединения с привилегией SYSDBA или SYSOPER, осуществляется без учета введенного имени и пароля пользователя.
Разблокирование учетной записи пользователя и переустановка пароля
В ходе инсталляции сервера, включающей создание БД, или при отдельном создании базы данных можно разблокировать и перенастроить учетные записи многих пользователей Oracle, используемых для поддержки функциональных возможностей. Если это не было сделано при создании БД, разблокировать пользователя и переустановить пароль можно на странице Users. Выберите для этого нужного пользователя и выполните операцию Unlock User.
Если вы находитесь на странице Edit Users, тогда такие действия производятся следующим образом:
1. Укажите новый пароль в полях Enter Password и Confirm Password.
2. Выберите статус Unlocked.
3. Щелкните на кнопке Apply, чтобы переустановить пароль пользователя и разблокировать его учетную запись.
Привилегия - это право на выполнение конкретной команды SQL или право доступа к объектам других пользователей. Oracle предоставляет возможность дифференцированного контроля разрешенных и запрещенных операций пользователя в базе данных. Привилегии делятся на две категории: системные и объектные.
Системные привилегии (system privileges) Каждая системная привилегия, предоставленная пользователю, позволяет ему выполнять в базе данных конкретные операции или классы операций. Например, создание табличных пространств - это системная привилегия. Системные привилегии могут быть предоставлены администратором или кем-то, кому явно предоставлены права по сопровождению привилегий. Имеется более 100 системных привилегий. Многие системные привилегии содержат фразу ANY.
Объектные привилегии (object privileges). Каждая объектная привилегия, выданная пользователю, позволяет ему выполнять конкретные действия над определенным объектом (например, таблицей, представлением, последовательностью, процедурой, функцией или пакетом). Без специального разрешения пользователи имеют доступ только к своим собственным объектам. Объектные привилегии могут быть предоставлены владельцем объекта либо кем-то, кому явно предоставлено право выдавать привилегии на объект.
Системные привилегии
Чтобы предоставить системные привилегии, щелкните на ссылке Systems Privileges, расположенной на странице Edit User. Выберите необходимые привилегии из списка доступных привилегий и переместите их, щелкнув на стрелке Move, в окно списка Selected System Privileges.
Предоставление привилегии с фразой ANY означает, что действие привилегии не ограничивается схемой пользователя. Например, привилегия CREATE TABLE позволяет пользователю создавать таблицы, но только в своей собственной схеме. Привилегия SELECT ANY TABLE разрешает пользователю делать запросы к таблицам, принадлежащим другим пользователям.
Отметка, сделанная в поле Admin Option, дает право этому пользователю быть администратором привилегии и выдавать ее другим пользователям.
Перед предоставлением системных привилегий тщательно обсудите требования безопасности. Некоторые системные привилегии обычно предоставляются только администраторам. К ним относятся:
RESTRICTED SESSION; эта привилегия разрешает пользователю подсоединяться к базе данных, когда она открыта и находится в режиме ограниченного доступа.
SYSDBA и SYSOPER; эти привилегии разрешают останавливать и запускать экземпляр базы данных, выполнять восстановление, а также решать другие задачи по сопровождению базы данных. Привилегия SYSOPER позволяет выполнять основные операционные задачи, но без возможности просмотра данных пользователей. Эта привилегия содержит следующие системные привилегии:
- STARTUP и SHUTDOWN
- CREATE SPFILE
- ALTER DATABASE OPEN/MOUNT/BACKUP
- ALTER DATABASE ARCHIVELOG
- ALTER DATABASE RECOVER (только полное восстановление; для неполного восстановления, например, UNTIL TIME I CHANGE | CANCEL | CONTROLFILE требуется подсоединение с привилегией SYSDBA)
- RESTRICTED SESSION
Системная привилегия SYSDBA дает право выполнять неполное восстановление и удалять базу данных. Пользователь, использующий системную привилегию SYSDBA при подсоединении, устанавливает соединение как пользователь SYS.
DROP ANY ; такие привилегии разрешают пользователям удалять объекты, находящиеся в схемах, принадлежащих другим пользователям.
CREATE, MANAGE, DROP, ALTER TABLESPACE; эти привилегии позволяют производить действия по администрированию табличных пространств, включая создание, удаление и изменение их атрибутов.
CREATE ANY DIRECTORY; база данных Oracle предоставляет возможность разработчикам вызывать из PL/SQL внешний код (например, программу из библиотеки С). Средством обеспечения безопасности служит объект типа DIRECTORY, представляющий собой виртуальный каталог, с которым должна быть связана директория операционной системы, в которой находится код. Имея привилегию CREATE ANY DIRECTORY, пользователь потенциально может вызвать нарушающий безопасность кодовый объект.
Привилегия CREATE ANY DIRECTORY дает пользователю право создавать объект DIRECTORY (с правами доступа read и write) для любого каталога, к которому может обратиться владелец программного обеспечения Oracle. Это означает, что пользователь может вызвать внешние процедуры из таких директорий. Кроме того, пользователь может попытаться напрямую читать или писать в файл базы данных, например, .в оперативный журнал или файлы аудита. Стратегия безопасности, принятая в организации, должна препятствовать неправильному применению подобных привилегий, которые предоставляют такие мощные возможности.
GRANT ANY OBJECT PRIVILEGE; эта привилегия позволяет пользователю предоставлять разрешения на доступ к объектам, которые ему не принадлежат.
ALTER DATABASE и ALTER SYSTEM; это очень мощные по предоставляемым возможностям привилегии, позволяющие изменять базу данных и экземпляр Oracle, например, переименовывать файл данных и очищать (flush) кэш буферов.
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot
Для настройки и просмотра квот ZFS используются команды zfs set и zfs get . В следующем примере для tank/home/bonwick установлена квота 10 ГБ.
Квоты ZFS также влияют на выходные данные команд zfs list и df . Пример:
Следует отметить, что, несмотря на наличие в tank/home свободного пространства 33,5 ГБ, системам tank/home/bonwick и tank/home/bonwick/ws предоставляется только 10 ГБ свободного пространства, поскольку настроена квота для tank/home/bonwick .
Установить квоту меньше, чем используется для набора данных в настоящее время, невозможно. Пример:
Для набора данных можно настроить свойствоrefquota, ограничивающее объем доступного набору пространства. Этот жесткий лимит не включает пространство, используемое дочерними элементами, такими как снимки и клоны. Пример:
Кроме того, для набора данных можно установить еще одну квоту для управления пространством, которое используется снимками. Пример:
В данном случае studentA может достичь жесткого предела, определяемого свойством refquota (10 ГБ), но может удалить файлы для восстановления, даже если существуют снимки.
В приведенном выше примере команда zfs list отображает меньшую квоту (10 и 20 ГБ). Чтобы увидеть обе квоты, используйте команду zfs get . Пример:
Настройка квот пользователя или группы в файловой системе ZFS
Для настройки квоты пользователя или группы используются команды zfs userquota и zfs groupquota .
Отображение текущей квоты quota или group выполняется следующим образом:
Просмотр информации об общем использовании пространства пользователя или группы можно выполнить с помощью запроса следующих свойств:
Если требуется получить информацию об использовании пространства пользователя или группы по отдельности, используется запрос для следующих свойств:
Свойства квоты user и group не отображаются с помощью команд zfs get all dataset, которые используются для вывода перечня всех свойств файловой системы.
Удаление квот user или group выполняется следующим образом:
Квоты ZFS user и group имеют следующие функции:
При настройке в файловой системе квота user или group, установленная в родительской файловой системе, не наследуется автоматически дочерней файловой системой.
Однако квота user или group применяется при создании клона или снимка файловой системы, имеющий квоту user или group. Таким же образом квота user или group включается в файловую систему при создании потока с помощью команды zfs send даже без параметра -R .
Пользователи без соответствующих прав имеют доступ только к их собственному дисковому пространству. Пользователь типа root или пользователь, получивший права userused или groupused, может иметь доступ к информации о пространстве для учетных записей любого пользователя или группы.
Свойства userquota и groupquota невозможно настроить для томов ZFS, в файловой системе версии ниже 4 или в пуле версии ниже 15.
Для обзора квот пользователей в среде NFS может использоваться старая команда quota , например там, где смонтирована файловая система ZFS. Без указания параметров при выполнении команды quota выходные данные отображаются только в том случае, если превышена квота пользователя. Пример:
В случае сброса квоты, и если ограничение квоты более не превышается, для обзора квоты пользователя требуется использовать команду quota -v . Пример:
Читайте также: