Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
D
docs
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
core
docs
Commits
5626915d
Commit
5626915d
authored
1 year ago
by
Yaroslav Dynnikov
Browse files
Options
Downloads
Patches
Plain Diff
access_control.md: track formal requirements
parent
effa2a77
No related branches found
Branches containing commit
No related tags found
Tags containing commit
1 merge request
!382
access_control.md: address formal requirements
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
docs/tutorial/access_control.md
+71
-1
71 additions, 1 deletion
docs/tutorial/access_control.md
with
71 additions
and
1 deletion
docs/tutorial/access_control.md
+
71
−
1
View file @
5626915d
...
...
@@ -29,6 +29,11 @@
### Объекты доступа {: #access_objects }
<!--
7.
1 В СУБД 6, 5, 4 классов защиты должны быть реализованы дискреционный
и ролевой методы управления доступом.
-->
Picodata является распределенной СУБД, и управление доступом происходит
централизованно на всем кластере. Для управления доступом в Picodata
используются дискреционный и ролевой методы. Объектами доступа являются:
...
...
@@ -39,6 +44,14 @@ Picodata является распределенной СУБД, и управл
-
`role`
–
[
роль
](
#roles
)
-
`procedure`
–
[
процедура
](
#proc_access
)
<!--
Дискреционный метод управления доступом субъектов доступа объектам
доступа СУБД (БД, таблица, запись или столбец, поле, представление,
процедура (программный код) или иные объекты доступа) должен
осуществляться на основе настраиваемых списков управления доступом
(матриц управления доступом).
-->
Доступ к объектам предоставляется на основе настраиваемого списка
управления доступом (access control list, ACL), который определяет,
какими привилегиями обладает каждый субъект (пользователь или роль).
...
...
@@ -74,8 +87,27 @@ Picodata предоставляет несколько встроенных уч
коммуникация между инстансами кластера
-
`guest`
— неавторизованный пользователь
<!--
Ролевой метод управления доступом должен быть реализован для следующих
ролей пользователей СУБД:
-
администратор СУБД,
-
администратор БД (администратор информационной системы),
-
пользователь БД (пользователь информационной системы).
-->
#### Администратор СУБД {: #admin }
<!--
СУБД должна обеспечивать наделение администратора СУБД следующими правами:
-
создавать учетные записи пользователей СУБД;
-
модифицировать, блокировать и удалять учетные записи пользователей СУБД;
-
назначать права доступа пользователям СУБД к объектам доступа СУБД;
-
управлять конфигурацией СУБД;
-
создавать, подключать БД.
-->
Администратором СУБД является встроенный пользователь
`admin`
.
Администратор СУБД является _суперпользователем_ и обладает следующими
...
...
@@ -106,6 +138,17 @@ GRANT DROP ROLE TO "admin"
#### Администратор БД {: #db_admin }
<!--
СУБД должна обеспечивать наделение администратора БД следующими правами:
-
создавать учетные записи пользователей БД;
-
модифицировать, блокировать и удалять учетные записи пользователей БД;
-
управлять конфигурацией БД;
-
назначать права доступа пользователям БД к объектам доступа БД;
-
создавать резервные копии БД и восстанавливать БД из резервной копии;
-
создавать, модифицировать и удалять процедуры (программный код), хранимые в БД.
-->
Наделить пользователя СУБД правами Администратора БД можно следующим
набором SQL-команд:
...
...
@@ -120,7 +163,7 @@ GRANT CREATE PROCEDURE TO <grantee>
-
создавать учетные записи пользователей БД
-
модифицировать, блокировать и удалять учетные записи пользователей БД
-
управлять конфигурацией БД
-
управлять конфигурацией БД
<!-- схемой данных -->
-
назначать права доступа пользователям БД к объектам доступа БД
-
создавать резервные копии БД и восстанавливать БД из резервной копии
-
создавать, модифицировать и удалять хранимые процедуры
...
...
@@ -151,6 +194,14 @@ GRANT DROP ON PROCEDURE <procedure name> TO <owner>
#### Пользователь БД {: #db_user }
<!--
СУБД должна обеспечивать наделение пользователя БД следующими правами:
-
создавать и манипулировать объектами доступа БД (таблица, запись или
столбец, поле, представление и иные объекты доступа);
-
выполнять процедуры (программный код), хранимые в БД.
-->
Picodata позволяет наделить пользователя БД следующими правами:
-
создавать и манипулировать таблицами БД
...
...
@@ -330,6 +381,15 @@ REVOKE <role name> FROM <grantee>
## Управление доступом к таблицам {: #tables_access }
<!--
Списки управления доступом (матрицы управления доступом) должны
позволять задавать разрешение или запрет пользователям и процедурам
(программному коду), хранимым в БД, выполнять следующие операции в
отношении объектов доступа СУБД (БД, таблица, запись или столбец, поле,
представление или иные объекты доступа): создание, модификация,
удаление, чтение.
-->
В Picodata доступно создание и удаление таблиц. Над таблицами можно
совершать операции чтения и записи. Для ограничения доступа к операциям
с таблицами в Picodata доступны привилегии
`CREATE`
,
`DROP`
,
`READ`
,
...
...
@@ -357,6 +417,16 @@ REVOKE <priv> ON TABLE <table name> FROM <grantee>
## Управление доступом к процедурам {: #proc_access }
<!--
Списки управления доступом (матрицы управления доступом) должны
позволять задавать разрешение или запрет пользователям СУБД выполнять
следующие операции в отношении процедур (программного кода), хранимых в
БД:
-
создание;
-
модификация, удаление, исполнение.
-->
Для того, чтобы пользователь в Picodata мог создавать
[
процедуры
](
../overview/glossary.md#stored_procedure
)
, ему требуется
соответствующая привилегия от Администратора СУБД:
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment