KnigaRead.com/

W Cat - SQL за 24 часа

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн W Cat, "SQL за 24 часа" бесплатно, без регистрации.
Перейти на страницу:

Пользователь может изменить имеющийся у него пароль Точный синтаксис оператора для изменения пароля можно узнать из документации той реализации языка, которую вы используете. В Oracle для этого обычно используется оператор ALTER USER.


Сеансы доступа к базе данных

Сеанс доступа пользователя к базе данных начинается с момента его подключения к ней и заканчивается после отключения от базы данных. В течение времени, когда пользователь остается подключенным к базе данных (т. е. в ходе сеанса доступа), он имеет возможность осуществлять с данными базы данных рахчичные действия, например выполнение запросов и транзакций.

Сеанс SQL инициируется пользователем при подключении его машины-клиента к серверу с помощью оператора CONNECT С момента начала сеанса SQL пользователь имеет возможность выполнить любое число транзакций вплоть до момента его отключения от базы данных, когда сеанс доступа прекращается.

Пользователь имеет возможность явным образом подключаться к базе данных и отключаться от нее (тем самым соответственно начиная и заканчивая сеанс доступа к данным) с помощью следующих команд.

CONNECT TO DEFAULT | CTPOKA1 [ AS CTPOKA2 ] [ USER CTPOKA3 ]

DISCONNECT DEFAULT | CURRENT | ALL | СТРОКА

SET CONNECTION DEFAULT | СТРОКА

He забывайте о том, что синтаксис операторов зависит от реализации языка. Кроме того, в большинстве реализаций пользователю не приходится вводить команды начала и окончания сеанса доступа вручную В большинстве случаев пользователю приходится иметь дело с поставляемыми производителем базы данных или третьей стороной программами, запрашивающими имя пользователя и пароль и осуществляющими подключение к базе данных и отключение от нее

Сеансы доступа к данным могут автоматически отслеживаться - и часто действительно отслеживаются - администраторами базы данных или другими уполномоченными представителями управленческого звена, заинтересованными в получении информации об активности пользователей базы данных. При наблюдении за пользовательской активностью сеансы доступа пользователей ассоциируются с их учетными записями При этом сеанс доступа представляется как отдельный процесс главного компьютера


Удаление учетных записей пользователей базы данных

Удаление учетной записи потьзователя из базы данных или ликвидация возможности его доступа к данным осуществляется парой простых команд Здесь, однако, опять следует отметить, что ввиду отсутствия для этих команд стандартов, необходимо обратиться к документации той реализации SQL, которую вы используете.

К методам ликвидации возможности доступа пользователя к данным можно отнести следующие

• Изменение пароля пользователя

• Удаление учетной записи пользователя из базы данных

• Отмена ранее разрешенных пользователю привилегий доступа к данным

В некоторых реализациях SQL для удаления учетной записи пользователя из базы данных может использоваться команда DROP.

DROP USER ИМЯ_ПОЛЬЗОВАТЕЛЯ [ CASCADE ]

Во многих реализациях языка имеется команда REVOKE, являющаяся противоположностью команды GRANT и позволяющая отменить ранее назначенные пользователю привилегии. В некоторых реализациях SQL команда отмены привилегий имеет следующий синтаксис.

REVOKE PRIV1 [, PRIV2, ... ] FROM ИМЯ_ПОЛЬЗОВАТЕЛЯ

Средства, доступные пользователю

Некоторые утверждают, что для того, чтобы составлять запросы к базе данных, совсем не обязательно знать SQL. В некотором отношении с таким утверждением можно согласиться, но знание SQL определенно не окажется лишним при составлении запроса, даже при наличии средств графического интерфейса пользователя. Хотя при наличии графического интерфейса пользователя его непременно следует использовать, всегда полезно знать, что происходит за кулисами.

Графический интерфейс пользователя обычно имеет своей целью автоматическое создание программного кода SQL на основе информации, получаемой от пользователя посредством диалоговых окон, ответов на запросы и выбора опций. Существуют подобные средства и для создания отчетов, могут существовать формы для построения запросов, выполнения операций ввода, обновления и удаления данных, а также средства для представления данных в виде диаграмм и графиков. Существуют средства, призванные помочь администратору базы данных осуществлять мониторинг производительности базы данных, а также средства, позволяющие удаленный доступ к базе данных. Некоторые из этих средств поставляются производителями баз данных, другие же - независимыми производителями.


Резюме

Любая база данных имеет своих пользователей, и не важно сколько их - один или тысячи. Именно для пользователей и создаются базы данных. Процесс управления пользователями можно разбить на три главных этапа. Сначала необходимо создать учетную запись пользователя в базе данных. После этого пользователя необходимо наделить привилегиями сообразно тем задачам, которые пользователь предположительно будет решать в рамках базы данных. Наконец, после того, как доступ к данным пользователю будет уже не нужен, необходимо либо удалить из базы данных его учетную запись, либо отменить ранее предоставленные ему привилегии.

Выше были рассмотрены некоторые из наиболее часто возникающих задач управления пользователями базы данных. При этом мы сознательно не вдавались в детали, поскольку в рамках различных баз данных конкретные формы процесса управления пользователями могут сильно отличаться друг от друга. Тем не менее, хотя многие из используемых для управления пользователями команд не обсуждаются и не определяются стандартом ANSI SQL в деталях, стандартными оказываются заложенные в основу этих команд концепции.


Вопросы и ответы

Имеются ли стандартные команды SQL для добавления пользователей в базу данных?

Некоторые команды и концепции определены стандартом ANSI, хотя в каждой реализации языка предлагаются свои команды, средства и правила добавления в базу данных пользователей.

Можно ли временно лишить пользователя права доступа к базе данных, не удаляя его учетную запись из базы данных?

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

Может ли пользователь изменить предложенный ему пароль?

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


Практикум

Задания практических занятий разделены на тесты и упражнения. Тесты предназначены для проверки общего уровня понимания рассмотренного материала. Упражнения дают возможность применить на практике идеи, обсуждавшиеся в ходе текущего урока, в комбинации с идеями из предыдущих уроков. Мы рекомендуем ответить на тестовые вопросы и выполнить упражнения прежде, чем продолжать дальнейшее чтение книги. Ответы можно проверить по Приложению Б, "Ответы".


Тесты

1. С помощью какой команды инициируется сеанс доступа к данным базы данных?

2. С помощью какой команды можно удалить схему, все еще содержащую объекты?

3. С помощью какого оператора можно отменить назначенные пользователю привилегии?

4. Какая команда создает группу таблиц, представлений и привилегий?


Упражнения

1. Опишите по шагам процесс предоставления доступа к базе данных новому пользователю.

19-й час Обеспечение сохранности данных

В ходе этого урока мы с вами поговорим о средствах SQL, призванных помочь обеспечить надежное хранение данных в реляционных базах данных. Каждая реализация языка предлагает для этого свои команды, но в их основе лежат одни и те же принципы, определенные стандартом ANSI По поводу синтаксиса этих команд, как и за конкретными рекомендациями по поводу защиты данных, следует обратиться к документации той реализации SQL, которую вы используете

Основными на этом уроке будут следующие темы.

• Защита данных

• Защита данных и управление доступом

• Привилегии доступа к системе

• Привилегии доступа к объектам

• Предоставление привилегий пользователям

• Отмена привилегий

• Особенности системы защиты в базах данных


Что такое защита данных?

Защита данных в базах данных означает просто защиту данных от несанкционированного доступа к ним. Несанкционированный доступ включает и доступ к данным пользователей, имеющих право доступа не ко всем данным базы данных, а только к их части. К защите данных относятся и действия, направленные на недопущение несанкционированного подключения к базе данных и распределения привилегий В базе данных имеется целая иерархия пользователей, начиная от проектировщиков базы данных, людей, ответственных за ее работу (таких, как администратор базы данных), программистов и до конечных пользователей. И хотя конечные пользователи обычно являются пользователями с наиболее ограниченными привилегиями, именно для них создаются базы данных. Каждый пользователь получает в базе данных свой уровень доступа и этот уровень должен содержать минимум привилегий, необходимых для решения поставленных перед этим пользователем задач.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*