Развертывание службы данных ADO.NET

Как лучше всего защитить службы данных ADO.NET? Кто-нибудь использовал это в производстве, если да, какие параметры безопасности вы использовали?


person user80855    schedule 13.04.2009    source источник


Ответы (3)


Вот запись в блоге, в которой объясняется подробнее, как защитить службу данных ADO .NET.

person tbreffni    schedule 13.10.2009

@tbreffni публикует хорошую запись в блоге. В дополнение к этому в вашей службе данных ado.net вы устанавливаете правила доступа к сущностям, чтобы контролировать, как предоставляется доступ для различных сущностей в базовой модели данных сущностей.

Предполагая, что у вас есть следующий код:

public class Northwind : DataService<NorthwindEntities>
{
    public static void InitializeService(IDataServiceConfiguration
                                                   config)
    {
        config.SetEntitySetAccessRule("*", EntitySetRights.All);
    }
}

Метод SetEntitySetAccessRule позволяет ссылаться либо на всю модель сущности, либо только на определенный набор сущностей, а затем определять разрешения на основе перечисления EntitySetRights. В перечислении присутствуют следующие значения:

Нет Запрещает все права на доступ к данным.

ReadSingle Авторизация для чтения отдельных элементов данных.

ReadMultiple Авторизация для чтения наборов данных.

WriteAppend Авторизация для создания новых элементов данных в наборах данных.

WriteReplace Авторизация для замены данных.

WriteDelete Разрешение на удаление элементов данных из наборов данных.

WriteMerge Авторизация для объединения данных.

AllRead Разрешение на чтение данных.

AllWrite Разрешение на запись данных.

Все Авторизация для создания, чтения, обновления и удаления данных.

Пошаговое руководство по использованию служб Microsoft ADO.NET проходит через этот процесс здесь. Перечисление EntitySetRights задокументировано здесь.

person t3rse    schedule 14.10.2009

Вы имеете в виду безопасные отдельные типы запросов или всю службу? Если весь сервис, то вы можете использовать стандартные методы защиты IIS, такие как Windows Authentication. В контролируемой среде Windows, где веб-служба использует службы, вы можете настроить один идентификатор домена в качестве авторизованного пользователя между полями. Разумеется, используйте SSL для обеспечения безопасности с точки зрения шифрования данных.

person CodeGrue    schedule 08.10.2009