Уровень техники
Повсеместная распространенность сетей, данных и клиентов не только повысила эффективность доступа к данным для корпоративной среды, но также наложила более высокие требования администрирования и управления для предотвращения непреднамеренного доступа к сетям и данным. В настоящее время любому пользователю больше не предоставляется свободный доступ к корпоративным данным. Базы данных превратились в огромную смесь из всех типов информации, связанной с персоналом, финансовыми данными, разработкой продукта, планированием проекта и т.п. Тем не менее, сотрудникам все же необходим доступ к определенным наборам данных для предоставления требуемой информации.
В целях эффективности согласно традиционным решениям предоставляется иерархия уровней защиты, чтобы ограничить доступ к системам и данным. Системы баз данных предоставляют защиту таблиц, которая ограничивает доступ к таблицам на основании разрешений пользователей, например. Тем не менее, эти таблицы могут включать в себя большое количество строк и столбцов, некоторые из которых представляют информацию, к которой пользователю должен быть предоставлен доступ, а некоторые представляют информацию, к которой у пользователя не должно быть доступа. Другие способы ограничения доступа к таблицам включают в себя метки защиты и применение защищенных логинов для самой таблицы. Эти и другие существующие способы не предоставляют решения, которое позволило бы администратору селективно ограничивать доступ к данным, и вместе с тем выделять набор данных для доступа и просмотра пользователем.
Сущность изобретения
В настоящем разделе приведено упрощенное изложение, предназначенное для разъяснения некоторых изобретательских вариантов осуществления, описанных в настоящем документе. Данный раздел не является исчерпывающим обзором, и он не предназначен для идентификации ключевых/критических элементов или для определения границ объема настоящего изобретения. Единственной целью данного раздела является представление некоторых концепций в упрощенной форме в качестве вступления к более детальному описанию, которое следует ниже.
Раскрытая архитектура упрощает защиту на основе ячеек для каждого пользователя. Модель защиты для этой возможности включает в себя не только таблицы уровня размерности, но и расширена, чтобы включать в себя таблицы уровня ячейки. В альтернативной реализации может применяться таблица защиты уровня ячейки, похожая на фактическую таблицу в приложении базы данных.
В конкретной реализации защита уровня ячейки может применяться в приложении сервера управления производительностью. Аутентификация может выполняться удаленно службой аутентификации другого приложения, такого как серверное приложение, которое предоставляет возможности и функции, совместимые с приложением сервера управления производительностью. Тем не менее, функция авторизации может выполняться локально в приложении сервера управления производительностью.
Модель защиты может включать в себя существующие таблицы размерности, а также таблицы защиты ячейки, которые включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки и таблицу, которая включает в себя как разрешения ячейки, так и спецификаторы ячейки. Метаданные, ассоциированные с защитой, применяемой к ячейкам для данного пользователя, могут храниться локально в хранилище метаданных серверного приложения для извлечения и применения к кубу данных, который запрашивается аутентифицированным и авторизованным пользователем. После этого отфильтрованные результаты представляются пользователю.
Для достижения вышеизложенных и других целей, определенные иллюстративные аспекты описаны в связи с последующим описанием и прилагаемыми чертежами. Эти аспекты указывают различные способы, согласно которым могут быть реализованы на практике раскрытые в настоящем документе принципы, все аспекты и эквиваленты которых направлены на то, чтобы быть в объеме формулы изобретения. Другие преимущества и признаки новизны будут очевидны из следующего подробного описания и прилагаемых чертежей.
Краткое описание чертежей
Фиг.1 - иллюстрация реализуемой компьютером системы защиты данных;
Фиг.2 - иллюстрация системы, где приложение сервера управления производительностью включает в себя систему с Фиг.1;
Фиг.3 - иллюстрация защиты размерности и ячейки в таблицах данных;
Фиг.4 - иллюстрация примера набора таблиц защиты, который может быть применен для обеспечения защиты уровня ячейки;
Фиг.5 - иллюстрация схемы аутентификации и авторизации для приложения сервера управления производительностью;
Фиг.6 - иллюстрация реализуемого компьютером способа защиты данных;
Фиг.7 - иллюстрация способа аутентификации и авторизации защиты на основе ячейки;
Фиг.8 - иллюстрация способа обеспечения защиты на основе ячейки путем расширения модели защиты;
Фиг.9 - иллюстрация структурной схемы вычислительной системы, способной реализовывать защиту на основе ячейки согласно раскрытой архитектуре;
Фиг.10 - иллюстрация схематической структурной схемы примера вычислительной среды, которая реализует защиту на основе ячейки в приложении сервера управления производительностью.
Подробное описание
Раскрытая архитектура упрощает защиту на основе ячейки для каждого пользователя. Модель защиты для этой возможности включает в себя не только таблицы уровня размерности, но и расширена, чтобы включать в себя таблицы уровня ячейки. Модель защиты может включать в себя существующие таблицы размерности, а также таблицы защиты ячейки, которые включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки и таблицу, которая включает в себя как разрешения ячейки, так и спецификаторы ячейки. Метаданные, ассоциированные с защитой, применяемой к ячейкам для данного пользователя, могут храниться локально в хранилище метаданных для извлечения и применения к кубу данных, который запрашивается аутентифицированным и авторизованным пользователем. В конкретной реализации защита уровня ячейки применяется в приложении сервера управления производительностью, где аутентификация выполняется удаленным образом службой аутентификации, но функция авторизации выполняется локально в приложении сервера управления производительностью.
Ниже следует ссылка на чертежи, где одинаковые позиционные обозначения используются для ссылки на одинаковые элементы. В нижеизложенном описании в целях разъяснения приведены различные специфические детали, чтобы обеспечить полное понимание сущности изобретения. Тем не менее, следует понимать, что изобретательские варианты осуществления могут быть реализованы без этих специфических деталей. В других случаях, широко известные структуры и устройства показаны в форме блоков структурной схемы, чтобы облегчить их описание. Предполагается, что настоящее изобретение охватывает все модификации, эквиваленты и альтернативы, входящие в рамки сущности и объема формулы изобретения.
Фиг.1 представляет собой иллюстрацию реализуемой компьютером системы 100 защиты данных. Система 100 включает в себя компонент 102 определения для определения атрибутов 104 защиты для ячеек куба 106 данных. Компонент 108 хранения предоставлен для хранения атрибутов 104 как метаданных 110 защиты для приложения в кубе 106 данных на основании запроса пользователя. Система 100 также может включать в себя компонент 112 защиты для применения метаданных 110 защиты к кубу 106 данных, чтобы генерировать куб 114 защищенных данных при запросе использования.
Атрибуты 104 защиты могут быть определены для каждого пользователя, и они могут включать в себя разрешения для доступа на чтение, доступа на чтение с условием, доступа на чтение/запись или отсутствия доступа к ячейкам. Система 100 может дополнительно включать в себя пользовательский интерфейс, через который пользователь может определять атрибуты 104 защиты для пользователя согласно размерностям и мерам.
Компонент 102 определения также способствует определению атрибутов размерности и хранит эти атрибуты размерности как часть метаданных 110 защиты. Компонент 102 определения и компонент 108 хранения могут быть частью приложения управления производительностью для защиты ячеек кубов данных по каждому пользователю.
Как описано ниже, метаданные 110 защиты могут храниться как набор таблиц защиты, каждая из которых включает в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки, таблицу и разрешений ячейки, и спецификаторов ячейки.
Фиг.2 представляет собой иллюстрацию системы 200, где приложение 202 сервера управления производительностью включает в себя систему 100 с Фиг.1. Приложение 202 может представлять собой веб-приложение, доступное клиенту 204 через браузер и/или клиентское приложение, похожее на браузер. При работе, пользователь может выполнить доступ к серверному приложению 202, выполнить доступ к компоненту 102 определения, чтобы назначить атрибуты 104 защиты ячейкам данных в базе данных, например. Эти назначения, далее, хранятся как метаданные 110 защиты посредством компонента 108 хранения. Когда от пользователя, которому были присвоены атрибуты 104 защиты, принимается запрос, эти метаданные защиты извлекаются и применяются к кубу данных, чтобы создать куб защищенных данных для этого конкретного пользователя. После этого результаты запроса возвращаются пользователю в отфильтрованном состоянии на основании атрибутов 104 защиты. Следует отметить, что пользователем может быть другой программный объект (например, система или способ), которому требуется доступ к кубу 106 данных. Так, атрибуты 104 защиты могут быть назначены на основании конкретной системы или другого программного модуля.
Иначе говоря, система защиты данных приложения 202 сервера управления производительностью включает в себя компонент определения для определения атрибутов защиты для размерностей и мер куба данных, компонент хранения для хранения атрибутов как метаданных защиты в приложении управления производительностью, и компонент защиты для применения метаданных защиты к размерностям и мерам куба данных, чтобы генерировать куб защищенных данных на основании пользователя.
Метаданные защиты хранятся как набор таблиц, причем эти таблицы включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки, а также таблицу разрешений ячейки и спецификаторов ячейки. Атрибуты защиты включают в себя доступ на чтение, доступ на чтение с условием, доступ на чтение/запись, или отсутствие доступа к ячейкам, которые применяются для каждого пользователя в кубе защищенных данных и которые хранятся как таблица защиты уровня ячейки. Приложение 202 также может включать в себя пользовательский интерфейс, через который атрибуты защиты назначаются размерностям и мерам для конкретного пользователя.
Поскольку эти меры известны, пользовательский интерфейс может быть использован для определения защиты ячейки (например, доступ на чтение, доступ на чтение с условием, доступ на чтение/запись или отсутствие доступа) по мерам посредством спецификаторов размерностей. Спецификатор похож на защиту размерности. Атрибуты защиты для ячейки куба защищенных данных могут быть показаны посредством пользовательского интерфейса, когда пользователь взаимодействует с ячейкой.
Фиг.3 представляет собой иллюстрацию защиты размерности и ячейки в таблицах 300 данных. Таблица 302 иллюстрирует все строки и столбцы простой таблицы из данных географической размерности и данных измерений по продажам и стоимости. Без какой-либо защиты пользователь увидит данные в таблице 302 по областям для географических стран США, Канада и Мексика, и по измерениям для Продаж и Стоимости. Таблица 304 представляет данные, которые показаны в результате применения защиты по размерности. Так, для пользователя блокируется получение и просмотр данных для географической размерности Мексика, что также блокирует доступ к Продажам и Стоимости (не будет разрешен просмотр всей строки, как указано посредством пунктирной границы для всей строки). Таблица 306 представляет использование защиты ячейки к размерности Мексика. Пользователю разрешается видеть, что Мексика является частью результатов запроса, но пользователю не разрешается видеть значения Продаж и Стоимости. Так, защита на основе ячейки обеспечивает возможность более полной информации, но с более детальным управлением данными, которые могут быть показаны на основании пользователя, который хочет увидеть эти данные.
Фиг.4 представляет собой иллюстрацию примера набора таблиц 400 защиты, который может быть применен для обеспечения защиты уровня ячейки. Таблицы 400 защиты включают в себя как таблицы 402 размерности, так и таблицы 404 ячейки. Таблицы 402 размерности могут включать в себя таблицу 406 пользователей, таблицу 408 ролей, таблицу 410 разрешений данных, таблицу 412 разрешений модели, таблицу 414 свойств пользователя, таблицу 416 ролей пользователя и другие таблицы размерности. Таблицы 404 ячейки могут включать в себя таблицу 418 разрешений ячейки, таблицу 420 спецификаторов ячейки, таблицу 422 комбинации, которая включает в себя как спецификаторы ячейки, так и разрешения ячейки, а также другие таблицы ячейки. Таблица 420 спецификаторов ячейки может представлять собой поднабор таблицы 418 разрешений ячейки. Таблица 418 разрешений ячейки может включать в себя столбцы, такие как идентификатор разрешения ячейки, идентификатор разрешения модели, мера, разрешение и т.п. Во время внедрения (или сохранения) информация защиты из таблиц 404 ячейки используется, чтобы создать соответствующую защиту ячейки на кубах данных.
Фиг.5 представляет собой иллюстрацию схемы аутентификации и авторизации для приложения 202 сервера управления производительностью. Как указано выше, аутентификация может быть выполнена удаленной службой 502 аутентификации, которая может быть применена в сопутствующем серверном приложении, с которым инсталлируется серверное приложение 202. С другой стороны, авторизация может быть выполнена локально посредством локальной службы авторизации этого серверного приложения 202. Следует отметить, что авторизация представляет собой процесс предоставления конкретных разрешений объекту или пользователю, тогда как аутентификация представляет собой процесс установления личности относительно другого объекта. Например, личность может представлять собой клиент, пользователь, компьютер и т.п.
Для авторизации используется защита размерности и ячейки, хранимая в приложении 202 сервера управления производительностью. Чтобы использовать удаленную службу аутентификации, приложение 202 сервера управления производительностью может быть упаковано как общая служба удаленной службы, в результате чего показывается веб-служба. После того как удаленная служба аутентификации аутентифицирует пользователя, объектная модель удаленной службы может быть использована, чтобы извлечь связанную с пользователем информацию из удаленной службы. Таким образом, локальная таблица Пользователей сокращается до минимума, чтобы поддерживать сопоставление между удаленной таблицей Пользователей и локальной таблицей Идентификаторов пользователей.
Далее следует описание ряда схем последовательностей операций, представляющих иллюстративные способы для выполнения изобретательских аспектов раскрытой архитектуры. Несмотря на то что в целях простоты описания один или более способов, проиллюстрированных в настоящем документе, например, в форме блок-схем или схем последовательности операций, показаны и описаны как последовательности действий, следует понимать, что данные способы не ограничиваются заданным порядком действий, поскольку согласно некоторым вариантам осуществления некоторые действия могут происходить в ином порядке и/или одновременно с другими действиями, и порядок этих действий может отличаться от показанного и описанного в настоящем документе. Например, специалистам в данной области техники будет очевидно, что, альтернативно, способы могут быть представлены как последовательность взаимосвязанных состояний или событий, как например, в диаграмме состояний. Более того, для реализации настоящего изобретения могут потребоваться не все действия, проиллюстрированные в способе.
Фиг.6 представляет собой иллюстрацию реализуемого компьютером способа защиты данных. На этапе 600 атрибуты защиты назначаются ячейкам куба данных для конкретного пользователя. Эти атрибуты защиты могут быть предварительно определены другим пользователем, таким как администратор или другой пользователь. На этапе 602 атрибуты защиты сохраняются как метаданные. Метаданные могут локально храниться с другими метаданными. На этапе 604 принимается запрос пользователя, и этот запрос обрабатывается относительно куба данных. На этапе 606 метаданные защиты применяются к результатам запроса, чтобы возвратить отфильтрованные результаты. На этапе 608 отфильтрованные результаты показываются (представляются) пользователю.
В конкретной реализации в приложении сервера управления производительностью, атрибуты защиты могут быть определены и сохранены в хранилище метаданных сервера управления производительностью. Например, это может быть выполнено через интерфейс веб-сервиса.
Как указано выше, атрибуты защиты включают в себя атрибуты защиты размерности, связанные с пользователями, ролями, разрешениями данных, разрешениями модели, свойствами пользователя и ролями пользователя, и атрибуты защиты включают в себя атрибуты защиты ячейки, связанные с разрешениями ячейки, спецификаторами ячейки и комбинацией разрешений ячейки и спецификаторов ячейки.
Фиг.7 представляет собой иллюстрацию способа аутентификации и авторизации защиты на основе ячейки. На этапе 700 атрибуты защиты назначаются ячейкам куба данных для каждого пользователя. На этапе 702 пользователь создает и передает запрос. На этапе 704 пользователь аутентифицируется на основе удаленной службы или модуля аутентификации. На тапе 706 пользователь авторизуется на основе локальной службы или модуля авторизации. На этапе 708 метаданные защиты извлекаются и применяются на основании успешной аутентификации и авторизации пользователя.
Фиг.8 представляет собой иллюстрацию способа обеспечения защиты на основе ячейки путем расширения модели защиты. На этапе 800 модель защиты расширяется путем добавления таблицы разрешений ячейки. На этапе 802 модель защиты расширяется путем добавления таблицы спецификаторов ячейки. На этапе 804 модель защиты расширяется путем добавления комбинированной таблицы разрешений ячейки и спецификаторов ячейки. Это также может включать в себя хранение пользовательского идентификатора пользователя в таблицах, чтобы связать таблицы с пользователем.
В использованном здесь значении термины "компонент" и "система" предназначены для описания связанного с компьютером объекта - аппаратного обеспечения, комбинации аппаратного и программного обеспечения, или программного обеспечения. Например, компонент может представлять собой, но не ограничивается перечисленным, процесс, выполняемый в процессоре, процессор, жесткий диск, множество накопителей (оптических и/или магнитных носителей), объект, исполняемый элемент, поток вычислений, программа и/или компьютер. Например, компонентом может быть как приложение, выполняемое на сервере, так и сам сервер. Один или более компонентов могут быть вовлечены в процесс и/или поток выполнения, и компонент может быть локализован на одном компьютере и/или распределен между двумя или более компьютерами. Термин "пример" в использованном здесь значении обозначает "служащий в качестве примера, образца или иллюстрации". Ни один из описанных "примеров" аспектов или вариантов осуществления не может рассматриваться как предпочтительный или выгодный относительно других аспектов или вариантов осуществления.
Фиг.9 представляет собой иллюстрацию структурной схемы вычислительной системы 900, способной реализовывать защиту на основе ячейки согласно раскрытой архитектуре. Чтобы предоставить дополнительный контекст для различных аспектов, Фиг.9 и следующее описание предназначаются для представления краткого, общего описания подходящей вычислительной системы 900, в которой могут быть реализованы различные аспекты. Наряду с тем, что вышеизложенное описание приведено в общем контексте исполняемых компьютером инструкций, которые могут исполняться на одном или более компьютерах, специалистам в данной области техники будет очевидно, что изобретательский вариант осуществления также может быть реализован в комбинации с другими программными модулями и/или как комбинация аппаратного обеспечения и программного обеспечения.
В общем, программные модули включают в себя стандартные процедуры, программы, компоненты, структуры данных и т.п., которые выполняют конкретные задачи или реализуют частные абстрактные типы данных. Более того, специалистам в данной области техники будет очевидно, что изобретательские способы могут быть реализованы на практике с другими конфигурациями компьютерных систем, включая однопроцессорные или многопроцессорные компьютерные системы, миникомпьютеры, большие ЭВМ (mainframe), а также персональные компьютеры, карманные вычислительные устройства, программируемая или основанная на микропроцессорах пользовательская электроника, и т.п., причем каждое из перечисленных устройство может функционально связываться с одним или более ассоциированными устройствами.
Проиллюстрированные аспекты также могут быть реализованы в распределенных вычислительных средах, где задачи выполняются посредством удаленных устройств обработки, которые объединены через сеть связи. В распределенной вычислительной среде программные модули могут быть расположены как в локальном, так и в удаленном устройстве хранения.
Компьютер, как правило, включает в себя разнообразные машиночитаемые носители. Машиночитаемые носители могут представлять собой любые доступные носители, к которым компьютер 110 может осуществить доступ, и они включают в себя как энергозависимые, так и энергонезависимые носители, съемные и несъемные носители. В качестве примера, но не ограничиваясь перечисленным, машиночитаемые носители могут содержать компьютерные среды хранения и среды связи. "Компьютерная среда хранения" включает в себя энергозависимую и энергонезависимую, съемную и несъемную среду, реализованную посредством какого-либо способа или технологии для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Компьютерная среда хранения включает в себя, но без ограничения, ОЗУ, ПЗУ, ЭСППЗУ, флэш-память или другую технологию памяти, диски CD-ROM, цифровые универсальные диски (DVD) или иные оптические дисковые носители, магнитные кассеты, магнитные ленты, магнитные дисковые носители или другие магнитные устройства хранения, или любое другое средство, которое может быть использовано, чтобы хранить желаемую информацию, и к которой может быть выполнен доступ компьютером.
Ссылаясь на Фиг.9, вычислительная система 900 для реализации различных аспектов включает в себя компьютер 902 с процессорным блоком 904, системной памятью 906 и системной шиной 908. Системная шина 908 обеспечивает интерфейс для компонентов системы, включая, но не ограничиваясь перечисленным, системную память 906 и процессорный блок 904. Процессорный блок 904 может быть любым из различных коммерчески доступных процессоров. В качестве процессорного блока 904 могут использоваться двойные микропроцессоры и другие многопроцессорные архитектуры.
Системная шина 908 может иметь структуру шины любого типа, которая может, дополнительно обеспечивать соединение с шиной памяти (с или без контроллера памяти), периферийной шиной и локальной шиной, используя любую коммерчески доступную архитектуру шины. Системная память 906 может включать в себя энергонезависимую память 910 и/или энергозависимую память 912 (например, Оперативное Запоминающее Устройство (Random Access Memory, RAM)). Базовая Система Ввода/Вывода (Basic Input/Output System, BIOS) может храниться в энергонезависимой памяти 910 (например, ROM, EPROM, EEPROM и т.п.). BIOS представляет собой совокупность базовых стандартных процедур, которые помогают передавать информацию между элементами внутри компьютера 902, например, при запуске. Энергозависимая память 912 также может включать в себя высокоскоростное RAM, такое как статическое RAM для кэширования данных.
Компьютер 902 дополнительно включает в себя внутренний привод 914 жесткого диска (например, EIDE, SATA), у которого привод 914 жесткого диска также может быть сконфигурирован для внешнего использования в подходящем корпусе, привод 916 для магнитных гибких дисков (например, для чтения или записи на съемную дискету 918) и привод 920 оптического диска (например, для считывания диска 922 CD-ROM, или для считывания или записи на другой оптический носитель большой емкости, такой как диск DVD). Привод 914 жесткого диска, привод 916 гибких дисков и привод 920 оптического диска могут быть соединены с системой шиной 908 посредством интерфейса 924 привода жесткого диска, интерфейса 926 привода гибких дисков и интерфейса 928 оптического привода, соответственно. Интерфейс 924 привода жесткого диска для реализаций с внешним приводом может включать в себя, по меньшей мере, одну из технологий Универсальной Последовательной Шины (Universal Serial Bus, USB) и IEEE 1394.
Приводы и соответствующие машиночитаемые носители предоставляют энергонезависимое хранилище данных, структур данных, выполняемых компьютером инструкций и т.п. Для компьютера 902 приводы и носители представляют хранилище любых данных в подходящем цифровом формате. Хотя вышеизложенное описание машиночитаемого носителя относится к жесткому диску, съемному магнитному диску и съемному оптическому носителю, такому как CD или DVD, специалистам в данной области техники будет очевидно, что другие носители, которые могут быть считаны компьютером, такие как zip-диски, магнитные кассеты, карты флэш-памяти, картриджи и т.п., также могут быть использованы в иллюстративном рабочей среде, и дополнительно подобные носители могут содержать выполняемые компьютером инструкции для выполнения изобретательских способов раскрытой архитектуры.
В приводах и энергозависимой памяти 912 могут храниться некоторые программные модули, включая операционную систему 930, одну или более прикладных программ 932, другие программные модули 934 и программные данные 936. При использовании компьютера 902 в качестве серверной машины одна или более прикладных программ 932, других программных модулей 934 и программные данные 936 могут включать в себя компонент 102 определения, атрибуты защиты, куб 106 данных, компонент 108 хранения, метаданные 110 защиты, компонент 112 защиты, куб 114 защищенных данных, приложение 202 сервера управления производительностью, таблицы 300, таблицу 400 защиты, локальную службу 504 авторизации и способы с Фиг.7, 8 и 9, например.
Все или части операционной системы, приложений, модулей и/или данных могут быть кэшированы в энергозависимой памяти 912. Следует понимать, что раскрытая архитектура может быть реализована с использованием различных коммерчески доступных операционных систем или комбинаций операционных систем.
Пользователь может вводить команды и информацию в компьютер 902 через одно или более проводных/беспроводных устройств ввода, например клавиатуру 938 и указательное устройство, такое как мышь 940. Другие устройства ввода (не показаны) могут включать в себя микрофон, устройство инфракрасного дистанционного управления, джойстик, игровую клавиатуру, стилус, сенсорный экран и т.п. Эти и другие устройства ввода часто соединены с процессорным блоком 904 через интерфейс 942 устройства ввода, который соединен с системной шиной 908, но они также могут быть соединены посредством других интерфейсов, таких как параллельный порт, последовательный порт IEEE 1394, игровой порт, порт USB, инфракрасный интерфейс и т.п.
Монитор 944 или другой тип устройства отображения также соединен с системой шиной 908 посредством интерфейса, такого как видео адаптер 946. В добавление к монитору 944, компьютер, как правило, включает в себя другие периферийные устройства вывода (не показаны), такие как громкоговорители, принтеры и т.п.
Компьютер 902 может работать в сетевой среде, используя логические соединения через проводные и/или беспроводные линии с одним или более удаленными компьютерами, такими как удаленные компьютеры 948. Удаленные компьютеры 948 могут представлять собой рабочую станцию, серверный компьютер, маршрутизатор, персональный компьютер, портативный компьютер, развлекательное устройство на базе микропроцессора, одноранговое устройство или другой обычный сетевой узел, и они, как правило, включают в себя многие или все элементы, описанные по отношению к компьютеру 902, хотя для целей краткости показано только устройство 950 памяти/хранения. Показанные логические соединения включают в себя проводные/беспроводные соединения с Локальной Сетью (Local Area Network, LAN) 952 и/или более масштабными сетями, например Глобальной Сетью (Wide Area Network, WAN) 954. Подобные сетевые среды LAN и WAN являются обычными технологиями в офисах и компаниях, и они реализовывают компьютерные сети масштаба предприятия, такие как интрасети, которые могут соединяться с глобальными сетями, например сетью Интернет.
При использовании в сетевой среде LAN компьютер 902 соединен с LAN 952 через проводной и/или беспроводной сетевой интерфейс или адаптер 956. Адаптер 956 может способствовать проводной и/или беспроводной связи с LAN 952, которая также может включать в себя беспроводную точку доступа для связи с адаптером 956.
При использовании в сетевой среде WAN компьютер 902 может включать в себя модем 958, или он может быть соединен с коммуникационным сервером в WAN 954 или другим средством для установки связи через WAN 954, таким как сеть Интернет. Модем 958, который может быть внутренним или внешним проводным или беспроводным устройством, соединен с системной шиной 908 через интерфейс 942 устройства ввода. В сетевой среде программные модули, изображенные относительно компьютера 902, или их части могут храниться в удаленном устройстве 950 памяти/хранения. Очевидно, что показанные сетевые соединения представляют собой лишь примеры, и могут быть использованы другие средства для установления линий связи между компьютерами.
Компьютер 902 может осуществлять связь с проводными и беспроводными устройствами или объектами, используя стандарты семейства IEEE 802, так что обеспечивается функциональная беспроводная связь (например, по способам модуляции IEEE 802.11) беспроводных устройств с, например, принтером, сканнером, настольным и/или портативным компьютером, Персональным Цифровым Секретарем (Personal Digital Assistant, PDA), спутником связи, любым оборудованием или местом, ассоциированной с обнаруживаемой беспроводным образом меткой (например, киоск, газетный киоск, туалет), и телефоном. Это включает в себя, по меньшей мере, технологии Wi-Fi, WiMax и Bluetooth™. Так, связь может представлять собой предопределенную структуру, такую как обычная сеть или ad-hoc-сеть между, по меньшей мере, двумя устройствами. Сети Wi-Fi используют радиотехнологии семейства IEEE 802.11x (a, b, g и т.д.), чтобы обеспечивать защищенную, надежную и быструю беспроводную связь. Сеть Wi-Fi может использоваться для соединения компьютеров друг с другом, с сетью Интернет, а также с проводными сетями (которые используют мультимедийное содержимое и функции, связанные с IEEE 802.3).
Фиг.10 представляет собой иллюстрацию схематической структурной схемы примера вычислительной среды 1000, которое реализует защиту на основе ячейки в приложении сервера управления производительностью. Среда 1000 включает в себя одного или более клиентов 1002. Клиенты 1002 могут представлять собой аппаратное обеспечение и/или программное обеспечение (например, потоки, процессы, вычислительные устройства). Клиенты 1002 могут содержать cookie-объекты и/или связанную контекстную информацию, например.
Среда 1000 также включает в себя один или более серверов 1004. Серверы 1004 могут представлять собой аппаратное обеспечение и/или программное обеспечение (например, потоки, процессы, вычислительные устройства). Серверы 1004 могут содержать потоки исполнения, чтобы выполнять трансформации путем применения архитектуры, например. Одной из возможных форм связи между клиентом 1002 и сервером 1004 может быть пакет данных, адаптированный для передачи между двумя или более компьютерными процессами. Пакет данных может включать в себя cookie-объект и/или ассоциированную контекстную информацию, например. Среда 1000 включает в себя инфраструктуру 1006 связи (например, глобальную сеть, такую как сеть Интернет), которая может быть использована для способствования связи между клиентами 1002 и серверами 1004.
Связь может быть упрощена посредством проводной (включая волоконно-оптическую) и/или беспроводной технологии. Клиенты 1002 функционально связаны с одним или более хранилищами 1008 клиентских данных, которые могут быть использованы для локального хранения информации (например, cookie-объектов и/или связанной контекстуальной информации). Аналогично, серверы 1004 функционально связаны с одним или более хранилищами 1010 серверных данных, которые могут быть использованы для локального хранения информации.
Клиенты 1002 могут включать в себя клиента 204, а серверы 1004 могут включать в себя приложение 202 сервера управления производительностью и удаленную службу 502 аутентификации, например. Компонент 108 хранения может включать в себя склад 1010 серверных данных.
Выше были описаны примеры раскрытой архитектуры. Само собой разумеется, что невозможно описать все возможные комбинации компонентов или способов, однако специалистам в данной области техники будет очевидно, что возможны различные дополнительные комбинации и перестановки. Соответственно, предполагается, что настоящая изобретательская архитектура охватывает все подобные изменения, модификации и вариации, которых входят в рамки сущности и объема прилагаемой формулы изобретения. Кроме того, значение термина "включает в себя", использованного в описании или формуле изобретения, следует истолковывать во включающем смысле, аналогично термину "содержащий", использованному в пунктах формулы изобретения как переходное слово.
Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении селективного ограничения доступа к данным. Реализуемая компьютером система защиты данных, содержащая запоминающее устройство, хранящее выполняемые компьютером компоненты, включающие в себя: компонент определения для определения атрибутов защиты уровня ячейки для ячеек таблицы данных, имеющей строки и столбцы, причем атрибуты защиты уровня ячейки для ячейки, которая находится в строке, имеющей одну или более других ячеек, и в столбце, имеющем одну или более других ячеек, могут быть определены для блокирования доступа к данным этой ячейки, но разрешения доступа к данным других ячеек в этой строке и данным других ячеек в этом столбце; компонент хранения для хранения атрибутов защиты уровня ячейки в качестве метаданных защиты, и компонент защиты для применения метаданных защиты к результатам запроса от пользователя для возвращения фильтрованных результатов на основании упомянутого пользователя, и процессор для выполнения упомянутых выполняемых компьютером компонентов, хранимых в памяти. 3 н. и 17 з.п. ф-лы, 10 ил.
1. Реализуемая компьютером система защиты данных, содержащая:
запоминающее устройство, хранящее выполняемые компьютером компоненты, включающие в себя:
компонент определения для определения атрибутов защиты уровня ячейки для ячеек таблицы данных, имеющей строки и столбцы, причем атрибуты защиты уровня ячейки для ячейки, которая находится в строке, имеющей одну или более других ячеек, и в столбце, имеющем одну или более других ячеек, могут быть определены для блокирования доступа к данным этой ячейки, но разрешения доступа к данным других ячеек в этой строке и данным других ячеек в этом столбце;
компонент хранения для хранения атрибутов защиты уровня ячейки в качестве метаданных защиты, и
компонент защиты для применения метаданных защиты к результатам запроса от пользователя для возвращения фильтрованных результатов на основании упомянутого пользователя, и
процессор для выполнения упомянутых выполняемых компьютером компонентов, хранимых в памяти.
2. Система по п.1, в которой компонент защиты применяет метаданные защиты к размерностям и мерам куба данных на основании запроса пользователя.
3. Система по п.1, в которой атрибуты защиты уровня ячейки определены для каждого пользователя.
4. Система по п.1, в которой атрибуты защиты уровня ячейки включают в себя доступ на чтение, доступ на чтение с условием, доступ на чтение/запись или отсутствие доступа к ячейкам.
5. Система по п.1, дополнительно содержащая пользовательский интерфейс, с помощью которого пользователь может взаимодействовать с ячейкой куба данных для определения атрибутов защиты уровня ячейки для ячейки упомянутого куба данных.
6. Система по п.1, в которой
компонент определения определяет атрибуты защиты уровня ячейки для модели защиты, которая включает в себя существующие атрибуты размерности для куба данных,
компонент хранения хранит эти атрибуты защиты уровня ячейки и существующие атрибуты размерности для упомянутого куба данных в качестве метаданных защиты для куба данных.
7. Система по п.1, в которой метаданные защиты хранят как набор таблиц защиты, причем эти таблицы защиты включают в себя таблицы размерности и таблицы ячейки, и таблицы ячейки включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки, а также таблицу и разрешений ячейки и спецификаторов ячейки.
8. Система по п.1, в которой выполняемые компьютером компоненты являются частью приложения управления производительностью для защиты ячеек куба данных по каждому пользователю.
9. Считываемый компьютером носитель, хранящий выполняемые компьютером инструкции, которые при выполнении вынуждают компьютер выполнять реализуемый компьютером способ защиты данных, содержащий этапы:
определяют атрибуты защиты уровня ячейки для ячеек таблицы данных, имеющей строки и столбцы, причем атрибуты защиты уровня ячейки для ячейки, которая находится в строке, имеющей одну или более других ячеек, и в столбце, имеющем одну или более других ячеек, могут быть определены для блокирования доступа к данным этой ячейки, но разрешения доступа к данным других ячеек в этой строке и данным других ячеек в этом столбце;
сохраняют упомянутые атрибуты защиты уровня ячейки как метаданные защиты; и
применяют упомянутые метаданные защиты к результатам запроса от пользователя для возвращения фильтрованных результатов на основании этого пользователя.
10. Считываемый компьютером носитель по п.9, в котором метаданные защиты хранят как набор таблиц ячейки, причем эти таблицы ячейки включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки, а также таблицу и разрешений ячейки и спецификаторов ячейки.
11. Считываемый компьютером носитель по п.9, в котором атрибуты защиты уровня ячейки включают в себя доступ на чтение, доступ на чтение с условием, доступ на чтение/запись или запрет доступа к ячейкам, и метаданные защиты применяются по каждому пользователю для возвращения фильтрованных результатов в качестве куба защищенных данных для этого пользователя.
12. Считываемый компьютером носитель по п.9, дополнительно содержащий выполняемые компьютером инструкции для представления пользовательского интерфейса, через который атрибуты защиты уровня ячейки для конкретного пользователя могут быть назначены размерностям и мерам куба данных для возвращения куба защищенных данных для упомянутого конкретного пользователя.
13. Считываемый компьютером носитель по п.9, в котором фильтрованные результаты возвращают в качестве куба защищенных данных.
14. Считываемый компьютером носитель по п.9, в котором атрибуты защиты уровня ячейки для ячейки куба защищенных данных показываются, когда пользователь взаимодействует с ячейкой упомянутого куба защищенных данных.
15. Реализуемый компьютером способ защиты данных, содержащий этапы, на которых:
представляют посредством компьютерного устройства пользовательский интерфейс для назначения атрибутов защиты уровня ячейки ячейкам таблицы данных, имеющей строки и столбцы, причем атрибуты защиты уровня ячейки для ячейки, которая находится в строке, имеющей одну или более других ячеек, и в столбце, имеющем одну или более других ячеек, могут быть определены для конкретного пользователя для блокирования этому конкретному пользователю доступа к данным этой ячейки, но разрешения этому конкретному пользователю доступа к данным других ячеек в этой строке и данным других ячеек в этом столбце;
сохраняют посредством упомянутого компьютерного устройства атрибуты защиты уровня ячейки, определенные для этого конкретного пользователя, в качестве метаданных защиты в хранилище данных;
принимают посредством упомянутого компьютерного устройства запрос от упомянутого конкретного пользователя;
применяют посредством упомянутого компьютерного устройства метаданные защиты к результатам запроса, чтобы возвратить отфильтрованные результаты, на основании упомянутого конкретного пользователя; и
показывают посредством упомянутого компьютерного устройства упомянутому конкретному пользователю отфильтрованные результаты.
16. Способ по п.15, дополнительно содержащий этап, на котором определяют и сохраняют атрибуты защиты уровня ячейки в качестве метаданных защиты в хранилище данных сервера управления производительностью через интерфейс веб-сервиса, причем эти атрибуты защиты уровня ячейки включают в себя по меньшей мере одно из: доступа для чтения, доступа для чтения с условием, доступа для чтения/записи или отсутствие доступа к ячейкам, при этом атрибуты защиты применяются к размерностям и мерам куба данных по каждому пользователю.
17. Способ по п.15, дополнительно содержащий этапы, на которых сохраняют метаданные защиты в качестве набора таблиц ячейки, добавляют таблицы ячейки к модели защиты, которая включает в себя существующие таблицы измерений, при этом упомянутые таблицы ячейки включают в себя таблицу разрешений ячейки, таблицу спецификаторов ячейки, а также таблицу и разрешений ячейки и спецификаторов ячейки.
18. Способ по п.17, дополнительно содержащий этап, на котором сохраняют пользовательский идентификатор упомянутого конкретного пользователя в таблицах, чтобы связать эти таблицы ячейки с упомянутым конкретным пользователем.
19. Способ по п.15, дополнительно содержащий этапы, на которых аутентифицируют упомянутого конкретного пользователя посредством удаленной аутентификации и авторизуют упомянутого конкретного пользователя с помощью локальной авторизации.
20. Способ по п.15, в котором
метаданные защиты сохраняют в качестве набора таблиц защиты, причем таблицы защиты включают в себя таблицы размерностей и таблицы ячейки, причем таблицы размерностей включают в себя атрибуты защиты размерности, связанные с пользователями, ролями, разрешениями данных, разрешениями модели, свойствами пользователя и ролями пользователя, и таблицы ячейки включают в себя атрибуты защиты ячейки, связанные с разрешениями ячейки, спецификаторами ячейки и комбинацией разрешений ячейки и спецификаторов ячейки.
Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор | 1923 |
|
SU2005A1 |
Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор | 1923 |
|
SU2005A1 |
US 5940818 A, 17.08.1999 | |||
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
US 7243097 B1, 10.07.2007 | |||
Глоссарий по хранилищам данных, многомерному моделированию и анализу данных | |||
Директор информационной службы, №03, 2002, опубл | |||
Способ использования делительного аппарата ровничных (чесальных) машин, предназначенных для мериносовой шерсти, с целью переработки на них грубых шерстей | 1921 |
|
SU18A1 |
Авторы
Даты
2013-12-10—Публикация
2009-04-13—Подача