SQL Security
Доступ к базе осуществляется - созданием учетной записи с указанием соответствующих прав в базе SQL-сервера и правильным составлением строки подключения SQL-серверу.
На первом этапе надо создать логин для доступа к SQL-серверу. Предолагается, что SQL работает в смешанном режиме - по базе Wundows и SQL логинов. Иначе все нижесказанное смысла просто не имеет. Тогда достаточно создать в ConnectionString параметр Integrated Security=SSPI и коннект произойдет автоматически, т.к. на группу администраторы уже предусмотрен вход в SQL c правами администратора. Итак для начала создается логин для входа в SQL.
На втором этапе необходимо создать логин уже в конкретной базе. По идее с этим логином теперь уже можно приконнектится к базе, но для работы программ этого недостаточно. Обьясняется это тем, что разрешения на доступ к конкретным обьектам базе для нового логина не проставлены. Зато они автоматически проставлены как надо для пользователя базы dbo. Поэтому на третьем этапе остается только добавить на вновь созданный логин те же права, которые уже проставил сам SQL-сервер для пользователя dbo. Конечно это не гарантирует правильной работы программ. Надо четко понимать для какого юзера мы создаем обьекты в базе.
Теперь осталось составить правильно строку подключения к серверу. Строка подключения состоит из "argument = value", разделенных точкой с запятой. Если подключение делается через ADO, то некоторые параметры ADO откусывает для себя, а остальные передает без изменения дальше. Cначала для установления коннекта с драйвером, затем непосредственно OLE DB или ODBC драйверу SQL-сервера. О разнице между OLE DB или ODBC почитайте:здесь.
Примечание. Common OLE DB Providers
MSDASQL | OLE DB provider for ODBC. Connects to existing ODBC data sources, either with a System DSN or from connection string parameters. This is the default, if no provider is specified. |
Microsoft.Jet.OLEDB.3.51 | Access data provider. Connects to Jet databases. |
SQLOLEDB | SQL Server OLE DB data provider. |
MSDAORA | OLE DB provider for Oracle. |
MSIDXS | Provider for Microsoft® Indexing Service. |
ADSDSOObject | Microsoft® Active Directory™ Services provider. |
SNAOLEDB | OLE DB provider for Microsoft® SNA Server (requires SNA Server Client). |
MSDataShape | Hierarchical recordset service provider. |
MSPersist | Persisted recordset (local storage) service provider. |
MS Remote | RDS disconnected recordset service provider. |
MSDAOSP | Simple OLE DB provider. This provider can be used as the basis of custom providers that you create. |
|