
- •Содержание
- •1 Введение
- •1.1 Краткие сведения об объекте автоматизации
- •1.3 Задачи crm
- •1.4 Основные функции и характеристики системы
- •1.5 Обзор существующих crm систем
- •1.5.1 Компас: Маркетинг и Менеджмент.
- •1.7 1С Предприятие 7.7
- •1.7.1 Встроенный язык системы
- •1.7.2 Язык Запросов
- •1.8 Субд Oracle Enterprise Edition 9.2.0.1
- •1.9 Средство проектирования баз данных PowerDesigner 11
- •1.10.1 Doa компонент доступа к Oracle.
- •1.11 Выбор генератора отчетов
- •1.11.1 Вывод
- •2 Специальная часть
- •2.1 Архитектура автоматизированной системы
- •2.2 Выбор средства реализации уровня бд
- •2.3 Реализация уровня сервера (бд)
- •2.3.1 Основные понятия
- •2.3.2 Особенности реализации
- •2.3.3.1 Пример fgac в Oracle
- •2.3.2.2 Другие подходы реализации fgac
- •2.4 Проектирование базы данных
- •2.4.1 Концептуальная модель данных
- •2.4.2 Физическая модель данных
- •2.6.2 Технологии com и ole
- •2.6.3 Особенности использования Delphi и 1c
- •2.6.3.1 Функция, осуществляющая создание и инициализацию экземпляр 1с
- •2.6.3.2 Описание методов экземпляра 1с
- •Детали реализации импорта
- •2.6.5 Код процедуры импорта
- •2.7 Технические характеристики автоматизированной системы
- •2.7.1 Клиент
- •2.7.2 Сервер
- •2.8 Функции программы и интерфейс пользователя
- •2.8.1 Общий вид программы при запуске
- •2.8.2 Общие особенности программы
- •2.8.3 Вид основных справочников
- •2.9 Декомпозиция и анализ бизнес-процессов
- •3. Тестирование
- •3.1. Справочник “Клиент”
- •3.2. Напоминания
- •3.3. Отчеты
- •3.3.1. Понятие abc анализа
- •4.2. Построение ленточного графика этапов проектирования (График Ганта)
- •4.3. Материальные затраты
- •4.3.1. Затраты на оплату труда
- •4.3.2. Дополнительная заработная плата
- •4.3.3. Единый социальный налог
- •4.3.4. Затраты на электроэнергию
- •4.3.5. Затраты на содержание и эксплуатацию оборудования.
- •4.3.6. Амортизационные отчисления
- •4.3.7. Накладные расходы
- •4.4 Оценка эффекта от внедрения ас
- •5. Безопасность жизнедеятельности и охрана труда
- •5.1. Характеристика объекта
- •5.1.1. Характеристика оборудования
- •5.2. Характеристика опасных и вредных факторов
- •5.3. Нормализация санитарно-гигиенических условий труда
- •5.3.1. Микроклимат производственных помещений
- •5.3.2 Воздухообмен производственных помещений
- •5.3.3. Освещение производственных помещений
- •5.3.4. Шум рабочего помещения
- •5.4. Производственные излучения
- •5.5. Электробезопасность
- •5.6. Пожарная безопасность
- •Вывод: Условия пожарной безопасности в аудитории чп “Паздникова” обеспечены для предотвращения очагов пожаров.
- •5.7. Обеспечение безопасности в условиях чс
- •5.7.1. Эвакуация
- •5.8. Вывод по разделу
- •6. Заключение
- •Список используемой литературы
- •Приложение 1 “Принятые термины и обозначения”
2.3 Реализация уровня сервера (бд)
2.3.1 Основные понятия
Схема (Schema) – коллекция объектов БД. Имеется у каждого пользователя СУБД Oracle. Имеет одноименное название с именем пользователя.
Табличное пространство – один или группа файлов содержащих данные. Табличное пространство относится к схема в отношении один ко многим.
2.3.2 Особенности реализации
СУЬД Oracle имеет много принципиальных отличий по сравнению с другими СУБД. Первое это что бросилось в глаза, что один Экземпляр Oracle поддерживает только одну базу данных, в отличи от MSSQL, mySQL, InterBase. Для запуска новой базы будет запушен новый экземпляр базы данных. Но после дальнейшего изучения СУБД Oracle, ситуация прояснилась. Старый подход с создание новой базы для каждого нового приложения здесь не желателен. Принцип разработки в Oracle следующий:
Создать экземпляр БД
Войти под пользователем SYS или SYSTEM
Создать нового пользователя (в нашем случаи CRM). Назначить ему права разработчика (создание любых объектов в пределах своей схемы)
Создание всех объектов баз данных в схеме CRM под пользователем CRM
Создание роль обычного пользователя (crm-operator). Назвонить ему право на соединение, и соответствующие права на объекты схемы CRM.*
Создаем пользователей и присваиваем им созданную роль
При разработки клиента необходимо при обращении к объектам базы данных указывать схему.
2.3.3 FGAC в Oracle
В СУБД Oracle технология тщательного контроля доступа достаточно развита.
Начиная с Oracle 8i, позволяет во время выполнения динамически добавлять условие (конструкцию WHERE) ко всем запросам, обращенным к таблице или представлению базы данных. Это дает возможность процедурно изменять запрос во время выполнения, другими словами, динамически создавать представление. С помощью контекстов приложений можно безопасно добавлять в среду информацию (например, роль пользователя в отношении приложения) и обращаться к этой информации в процедуре или условии.
В различных публикациях средства FGAC описываются под различными названиями. Обычно используются следующие:
Детальный контроль доступа (Fine Grained Access Control);
Виртуальная приватная база данных (Virtual Private Database — VPD);
Защита на уровне строк (Row Level Security), или пакет DBMS_RLS (этот PL/SQL пакет реализует соответствующие возможности).
Преимущества использования средств тщательного контроля доступа — простота сопровождения, реализация этих средств на сервере, возможность развития приложений и упрощение их разработки и т.д.
2.3.3.1 Пример fgac в Oracle
Предположим, существуют правила защиты, определяющие, какие строки могут просматривать различные группы пользователей. Правила защиты позволяют разработать условие проверки, учитывающее, кто зарегистрирован и какую роль он имеет в системе. Средства тщательного контроля доступа позволяют переписать простой запрос
SELECT * FROM EMP следующим образом:
Таблица 2.2 - Правила защиты
Пользователь зарегистрирован как... |
Запрос переписывается так...
|
Комментарии
|
Сотрудник |
select * from (select * from emp where ename = USER) |
Рядовые сотрудники могут просматривать только собственные записи, |
Руководитель подразделения |
select * from (select * from emp where mgr = (select empno from emp where ename = USER) or ename = USER ) |
Руководители подразделений могут просматривать свои записи и записи сотрудников своего подразделения, |
Сотрудники отдела кадров. |
select * from (select * from emp where deptno = SYS_CONTEXT('OurApp', 'ptno') ) |
Сотрудники отдела кадров могут видеть все записи в данном подразделении. В этом примере представлен способ получения значений переменных из контекста приложения с помощью встроенной функции SYS_CONTEXT(). |
Средства тщательного контроля доступа позволяют с помощью одной таблицы и одной хранимой процедуры справиться с задачей, для решения которой могло бы понадобиться несколько представлений или триггеров, или большой объем специализированной обработки в приложениях.