Свойства инициализации и авторизации
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
OLE DB Driver for SQL Server интерпретирует свойства инициализации и авторизации OLE DB следующим образом:
Идентификатор свойства | Description |
---|---|
DBPROP_AUTH_CACHE_AUTHINFO | OLE DB Driver for SQL Server не кэширует сведения о проверке подлинности. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_AUTH_ENCRYPT_PASSWORD | Драйвер OLE DB для SQL Server использует стандартные механизмы безопасности Microsoft SQL Server для скрытия паролей. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_AUTH_INTEGRATED | Если DBPROP_AUTH_INTEGRATED задано значение NULL, строка null или значение SSPI VT_BSTR, драйвер OLE DB для SQL Server использует режим проверки подлинности Windows для авторизации доступа пользователей к базе данных SQL Server, заданной DBPROP_INIT_DATASOURCE и свойствами DBPROP_INIT_CATALOG. Если задано значение VT_EMPTY (по умолчанию), используется безопасность SQL Server. Имя входа и пароль SQL Server указаны в свойствах DBPROP_AUTH_USERID и DBPROP_AUTH_PASSWORD. |
DBPROP_AUTH_MASK_PASSWORD | Драйвер OLE DB для SQL Server использует стандартные механизмы безопасности SQL Server для скрытия паролей. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_AUTH_PASSWORD | Пароль, назначенный имени входа SQL Server. Это свойство используется при выборе проверки подлинности SQL Server для авторизации доступа к базе данных SQL Server. |
DBPROP_AUTH_PERSIST_ENCRYPTED | OLE DB Driver for SQL Server не шифрует данные проверки подлинности при сохранении. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO | Драйвер OLE DB для SQL Server сохраняет значения для проверки подлинности, включая образ пароля (если указано). Шифрование не предусмотрено. |
DBPROP_AUTH_USERID | Имя входа SQL Server. Это свойство используется при выборе проверки подлинности SQL Server для авторизации доступа к базе данных SQL Server. |
DBPROP_INIT_ASYNCH | OLE DB Driver for SQL Server поддерживает асинхронную инициализацию. При установке разряда DBPROPVAL_ASYNCH_INITIALIZE в свойстве DBPROP_INIT_ASYNCH метод IDBInitialize::Initialize становится неблокирующим вызовом. Дополнительные сведения о выполнении асинхронных операций см. в этой статье. |
DBPROP_INIT_CATALOG | Имя существующей базы данных SQL Server, к которой необходимо подключиться. |
DBPROP_INIT_DATASOURCE | Сетевое имя сервера под управлением экземпляра Microsoft SQL Server. Если на компьютере запущено несколько экземпляров SQL Server, то для подключения к определенному экземпляру SQL Server значение DBPROP_INIT_DATASOURCE указывается в формате \\имя_сервера\имя_экземпляра. Escape-последовательность \\ используется для обратной косой черты. |
DBPROP_INIT_GENERALTIMEOUT | Указывает количество секунд до запроса, отличного от инициализации источника данных и выполнения команд, время ожидания. Значение 0 указывает бесконечное время ожидания. Поставщики, работающие над сетевыми подключениями или в распределенных или трансактированных сценариях, могут поддерживать это свойство, чтобы сообщить включенному компоненту время ожидания, если существует длительный запрос. Временем ожидания для инициализации источника данных или выполнения команд по-прежнему управляют свойства DBPROP_INIT_TIMEOUT и DBPROP_COMMANDTIMEOUT, соответственно. Свойство DBPROP_INIT_GENERALTIMEOUT доступно только для чтения, и при попытке присвоить ему значение в dwstatus возвращается ошибка DBPROPSTATUS_NOTSETTABLE. |
DBPROP_INIT_HWND | Дескриптор Windows из вызывающего приложения. Действительный дескриптор окна необходим для инициализации диалогового окна, если разрешен запрос свойств инициализации. |
DBPROP_INIT_IMPERSONATION_LEVEL | OLE DB Driver for SQL Server не поддерживает корректировку уровня олицетворения. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_INIT_LCID | Драйвер OLE DB для SQL Server проверяет код языка и возвращает ошибку, если код языка не поддерживается или не установлен в клиенте. |
DBPROP_INIT_LOCATION | При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_INIT_MODE | При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_INIT_PROMPT | OLE DB Driver for SQL Server поддерживает все режимы запросов на инициализацию источника данных. OLE DB Driver for SQL Server по умолчанию использует для этого свойства значение DBPROMPT_NOPROMPT. |
DBPROP_INIT_PROTECTION_LEVEL | Драйвер OLE DB для SQL Server не поддерживает уровень защиты подключений к экземплярам SQL Server. При попытке задать значение этого свойства OLE DB Driver for SQL Server возвращает значение DB_S_ERRORSOCCURRED. Элемент dwStatus структуры DBPROP указывает DBPROPSTATUS_NOTSUPPORTED. |
DBPROP_INIT_PROVIDERSTRING | Ознакомьтесь с разделом "Строка OLE DB Driver for SQL Server" далее в этой статье. |
DBPROP_INIT_TIMEOUT | Драйвер OLE DB для SQL Server возвращает ошибку при инициализации, если подключение к экземпляру SQL Server невозможно установить в течение указанного количества секунд. |
В определяемом поставщиком наборе свойств DBPROPSET_SQLSERVERDBINIT драйвер OLE DB для SQL Server определяет указанные ниже дополнительные свойства инициализации.
Идентификатор свойства | Description |
---|---|
SSPROP_AUTH_ACCESS_TOKEN1 | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание. Маркер доступа, используемый для проверки подлинности в идентификаторе Microsoft Entra. ПРИМЕЧАНИЕ. Это ошибка, чтобы указать это свойство, а также UID , PWD Trusted_Connection или Authentication строка подключения ключевые слова или соответствующие свойства/ключевые слова. |
SSPROP_AUTH_MODE1 | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание. Указывает используемую проверку подлинности SQL или Microsoft Entra. Допустимые значения:
ПРИМЕЧАНИЕ. Ключевое ActiveDirectoryIntegrated слово также можно использовать для проверка подлинности Windows в SQL Server. Оно заменяет ключевые слова проверки подлинности Integrated Security или Trusted_Connection . Рекомендуется присвоить ключевому слову Authentication (или его соответствующему свойству) значение ActiveDirectoryIntegrated в приложениях, использующих ключевые слова Integrated Security или Trusted_Connection (или их соответствующие свойства). Это позволит активировать новое поведение проверки сертификата и шифрования.ПРИМЕЧАНИЕ. Рекомендуется, чтобы приложения, использующие SQL Server проверку подлинности, задали значение ключевого Authentication слова (или соответствующего свойства), чтобы SqlPassword включить новое поведение шифрования и проверки сертификатов. |
SSPROP_AUTH_OLD_PASSWORD | Тип: VT_BSTR R/W: запись По умолчанию: VT_EMPTY Описание: текущий или истекший срок действия пароля. Дополнительные сведения см. в статье Смена пароля программным способом. |
SSPROP_INIT_APPNAME | Тип: VT_BSTR R/W: чтение и запись Описание: имя клиентского приложения. |
SSPROP_INIT_AUTOTRANSLATE | Тип: VT_BOOL R/W: чтение и запись По умолчанию: VARIANT_TRUE Описание: преобразование символов OEM/ANSI. VARIANT_TRUE: драйвер OLE DB для SQL Server преобразует символьные строки ANSI, отправляемые с клиента на сервер и обратно (через Юникод), чтобы свести к минимуму проблемы сопоставления символов национального алфавита в кодовых страницах на клиенте и сервере. Данные типа DBTYPE_STR, передаваемые в переменную, параметр или столбец в экземпляре SQL Server, имеющем тип char, varchar или text, преобразуются в Юникод с использованием кодовой страницы ANSI (ACP) клиента, а затем преобразуются из Юникода в символьную строку с использованием ACP сервера. Sql Server char, varchar или текстовые данные, отправленные клиенту, DBTYPE_STR переменная преобразуется из символа в Юникод с помощью сервера ACP, а затем преобразуется из Юникода в символ с помощью клиентского ACP. В версиях драйвера OLE DB, начиная с 18.6.4 и 19.1, приведенные выше преобразования также применяются к данным, передаваемым между элементом CharVal структуры SSVARIANT и экземпляром переменной SQL Server sql_variant, параметром или столбцом. Эти преобразования выполняются на клиенте драйвером OLE DB Driver for SQL Server. Для этого на клиенте должна быть доступна та же кодовая страница, что используется на сервере. Следующие параметры не влияют на преобразования, выполняемые для этих передач. Данные переменной типа DBTYPE_WSTR в Юникоде передаются из клиента на сервер в объекты типа char, varchar или text. Данные типов char, varchar или text передаются с сервера в клиент в переменные типа DBTYPE_WSTR в Юникоде. Данные переменных типа DBTYPE_WSTR в кодировке ANSI передаются из клиента на сервер в Юникоде в переменные типа nchar, nvarchar или ntext. Данные в Юникоде типов char, varchar или text передаются с сервера в клиент в переменные типа DBTYPE_WSTR в кодировке ANSI. VARIANT_FALSE. Драйвер OLE DB для SQL Server не выполняет преобразования символов. Драйвер OLE DB для SQL Server не выполняет преобразование клиентских данных из переменных типа DBTYPE_STR в кодировке ANSI при передаче в переменные, параметры или столбцы типов char, varchar или text на сервере. Преобразование данных типов char, varchar или text при передаче с сервера в клиент в переменные DBTYPE_STR не выполняется. Аналогичным образом, в версиях драйвера OLE DB, начиная с 18.6.4 и 19.1, преобразование данных, передаваемых между элементом CharVal структуры SSVARIANT и экземпляром переменной SQL Server sql_variant, параметром или столбцом, не выполняется. Если клиент и экземпляр SQL Server используют разные APS, расширенные символы могут быть неправильно интерпретированы. |
SSPROP_INIT_CONNECT_RETRY_COUNT | Тип: VT_I4 R/W: чтение и запись По умолчанию: 1 Описание: управляет количеством попыток повторного подключения в случае потери соединения. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения. |
SSPROP_INIT_CONNECT_RETRY_INTERVAL | Тип: VT_I4 R/W: чтение и запись Значение по умолчанию: 10 Описание: указывает количество секунд между попытками повторного подключения при утере соединения. Дополнительные сведения см. в разделе Устойчивость бездействующего подключения. |
SSPROP_INIT_CURRENTLANGUAGE | Тип: VT_BSTR R/W: чтение и запись Описание: имя языка SQL Server. Указывает язык, используемый для выбора и форматирования системных сообщений. Язык должен быть установлен на компьютере под управлением экземпляра SQL Server или инициализации источника данных. |
SSPROP_INIT_DATATYPECOMPATIBILITY | Тип: VT_UI2 R/W: чтение и запись По умолчанию: 0 Описание. Включает совместимость типов данных между приложениями SQL Server и ActiveX Data Object (ADO). Если установлено значение 0 (по умолчанию), то используется та же обработка типов данных, которая применяется поставщиком. Если используется значение 80, обработка типов данных использует только типы данных SQL Server 2000 (8.x). Пример использования объектов ADO с OLE DB Driver for SQL Server см. в этой статье. |
SSPROP_INIT_DISCOVEREDSERVERSPN | Тип: VT_BSTR R/W: чтение Описание: используется для запроса имени субъекта-службы сервера для подключения. (версия 18.6.3 или более поздняя) |
SSPROP_INIT_ENCRYPT1 | Тип: VT_BSTR R/W: чтение и запись По умолчанию: Mandatory Описание: указывается, следует ли шифровать данные, передаваемые по сети. Если включено принудительное шифрование протокола, то шифрование данных производится всегда, независимо от значения SSPROP_INIT_ENCRYPT. Если оно отключено, а для свойства SSPROP_INIT_ENCRYPT заданы значения Mandatory или Strict , то шифрование будет выполняться.Если принудительное шифрование протокола отключено, а для свойства SSPROP_INIT_ENCRYPT задано значение Optional , то шифрование не будет выполняться. Допустимые значения: Optional , Mandatory и Strict . Сведения о версиях 18.x.x см. в статье об основных различиях версий MSOLEDBSQL. |
SSPROP_INIT_FAILOVERPARTNER | Тип: VT_BSTR R/W: чтение и запись Описание: указывает имя партнера по обеспечению отработки отказа для зеркального отображения базы данных. Является свойством инициализации и может быть задано только перед инициализацией. После инициализации оно будет возвращать имя партнера по обеспечению отработки отказа (если есть), возвращенное сервером-источником. Это позволяет смарт-приложениям кэшировать последний определенный сервер резервного копирования. Но следует учитывать, что данные обновляются только при первой установке подключения (или при возобновлении, если используется пул) и могут устареть в случае длительных подключений. После установления соединения приложение может запросить этот атрибут, чтобы идентифицировать партнера по обеспечению отработки отказа. Если сервер-источник не имеет партнера по обеспечению отработки отказа, то это свойство вернет пустую строку. Дополнительные сведения см. в статье Зеркальное отображение базы данных. |
SSPROP_INIT_FAILOVERPARTNERSPN | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание: указывает имя участника-службы для партнера по обеспечению отработки отказа. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком. |
SSPROP_INIT_FILENAME | Тип: VT_BSTR R/W: чтение и запись Описание: указывает имя первичного файла присоединяемой базы данных. Эта база данных присоединяется и становится для соединения базой данных по умолчанию. Перед использованием свойства SSPROP_INIT_FILENAME необходимо указать имя базы данных в свойстве инициализации DBPROP_INIT_CATALOG. Если имя базы данных не существует, то выполняется поиск имени первичного файла, указанного в свойстве SSPROP_INIT_FILENAME, и присоединяется база данных с именем, указанным в свойстве DBPROP_INIT_CATALOG. Если база данных была подключена ранее, SQL Server не повторно прикрепить ее. |
SSPROP_INIT_HOST_NAME_CERTIFICATE | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание: имя узла для использования при проверке TLS/SSL-сертификата SQL Server. Если свойство SSPROP_INIT_HOST_NAME_CERTIFICATE не задано, драйвер использует значение свойства DBPROP_INIT_DATASOURCE в качестве имени узла для проверки TLS/SSL-сертификата SQL Server. |
SSPROP_INIT_MARSCONNECTION | Тип: VT_BOOL R/W: чтение и запись По умолчанию: VARIANT_FALSE Описание: указывает, включен ли для подключения множественный активный результирующий набор (MARS). Перед установлением соединения с базой данных этот параметр должен быть установлен в значение true. Дополнительные сведения см. в разделе Использование множественных активных результирующих наборов (MARS). |
SSPROP_INIT_MULTISUBNETFAILOVER | Тип: VT_BOOL R/W: чтение и запись По умолчанию: VARIANT_FALSE Описание. MultiSubnetFailover обеспечивает более быструю отработку отказа для всех групп доступности AlwaysOn и экземпляров отказоустойчивого кластера в SQL Server, а также значительно сокращает время отработки отказа для топологий AlwaysOn с одной и несколькими подсетями. При отработке отказа с в нескольких подсетях клиент будет выполнять попытки соединения параллельно. Дополнительные сведения см. в статье Поддержка высокой доступности и аварийного восстановления в драйвере OLE DB Driver for SQL Server. |
SSPROP_INIT_NETWORKADDRESS | Тип: VT_BSTR R/W: чтение и запись Описание. Сетевой адрес сервера, на котором выполняется экземпляр SQL Server, указанный свойством DBPROP_INIT_DATASOURCE. |
SSPROP_INIT_NETWORKLIBRARY | Тип: VT_BSTR R/W: чтение и запись Описание. Имя сетевогоlibrary (DLL), используемое для взаимодействия с экземпляром SQL Server. Не должно включать путь или расширение DLL. По умолчанию можно настроить с помощью служебной программы конфигурации клиента SQL Server. Примечание. Это свойство поддерживает только TCP и именованные каналы. Если указан префикс, то это приведет к образованию двойного префикса и вызовет ошибку, поскольку это свойство создает префиксы внутри себя. |
SSPROP_INIT_PACKETSIZE | Тип: VT_I4 R/W: чтение и запись Описание: размер пакета табличного потока данных (TDS) в байтах. Значение свойства размера пакета должно быть равно нулю или находиться в диапазоне от 512 до 32 767. Значение по умолчанию равно нулю, то есть фактический размер пакета будет определяться сервером. |
SSPROP_INIT_SERVER_CERTIFICATE | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание. Указывает путь к файлу сертификата для сопоставления с SSL-сертификатом SQL Server. Этот параметр можно использовать только при Strict включении шифрования. Допустимые форматы сертификатов: PEM, DER и CER. При указании сертификат SQL Server проверяется, проверяется, соответствует ли предоставленный сертификат точному совпадению. |
SSPROP_INIT_SERVERSPN | Тип: VT_BSTR R/W: чтение и запись По умолчанию: VT_EMPTY Описание: задает имя участника-службы для сервера. Из-за этой пустой строки OLE DB Driver for SQL Server использует имя субъекта-службы по умолчанию, создаваемое поставщиком. |
SSPROP_INIT_TAGCOLUMNCOLLATION | Тип: VT_BOOL R/W: запись По умолчанию: VARIANT_FALSE Описание: используется при обновлении базы данных, если применяются курсоры на стороне сервера. Это свойство добавляет к данным сведения о параметрах сортировки, полученные с сервера, а не кодовую страницу клиента. В настоящее время это свойство используется только процессом обработки распределенных запросов, поскольку он знает параметры сортировки данных назначения и может правильно их преобразовать. |
SSPROP_INIT_TNIR | Тип: VT_BOOL R/W: чтение и запись По умолчанию: VARIANT_TRUE Описание. При наличии нескольких IP-адресов, связанных с именем узла, TNIR влияет на последовательность подключений, когда первый разрешенный IP-адрес имени узла не отвечает. TNIR взаимодействует с MultiSubnetFailover и поддерживает различные варианты последовательности подключений. Дополнительные сведения см. в статье Использование разрешения IP-адресов прозрачной сети. |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE1 | Тип: VT_BOOL R/W: чтение и запись По умолчанию: VARIANT_FALSE Описание: используется для включения и отключения проверки сертификата сервера. Это свойство доступно для чтения и записи, но попытка его установки после установления соединения приведет к ошибке. Это свойство не используется, если на клиенте настроен запрос проверки сертификата. Однако приложение может использовать его вместе со свойством SSPROP_INIT_ENCRYPT, чтобы обеспечить шифрование соединения с сервером, даже если на клиенте не установлен сертификат и не настроен запрос проверки сертификата. Клиентские приложения могут запрашивать это свойство после открытия соединения для получения используемых параметров шифрования и проверки. Примечание. Использование шифрования без проверки сертификата обеспечивает частичную защиту от перехвата пакетов, однако не защищает от атак типа "злоумышленник в середине". Оно лишь позволяет шифровать имя входа и данные, передаваемые на сервер, без проверки сертификата сервера. Дополнительные сведения см. в разделе Шифрование и проверка сертификатов. |
SSPROP_INIT_USEPROCFORPREP | Тип: VT_I4 R/W: чтение и запись По умолчанию: SSPROPVAL_USEPROCFORPREP_ON Описание: используется хранимая процедура SQL Server. Определяет использование временных хранимых процедур SQL Server для поддержки интерфейса ICommandPrepare . Это свойство имело значение только при соединении с сервером SQL Server 6.5. Для более поздних версий это свойство не используется. SSPROPVAL_USEPROCFORPREP_OFF. Временная хранимая процедура не создается при подготовке команды. SSPROPVAL_USEPROCFORPREP_ON. При подготовке команды создается временная хранимая процедура. Временные хранимые процедуры удаляются при освобождении сеанса. SSPROPVAL_USEPROCFORPREP_ON_DROP. При подготовке команды создается временная хранимая процедура. Процедура удаляется при отмене подготовки команды методом ICommandPrepare::Unprepare, при определении новой команды для объекта команды методом ICommandText::SetCommandText или при освобождении приложением всех ссылок на команду. |
SSPROP_INIT_WSID | Тип: VT_BSTR R/W: чтение и запись Описание: строка, идентифицирующая рабочую станцию. |
[1]. Для повышения безопасности, шифрования и проверки сертификатов изменяется при использовании свойств инициализации маркера проверки подлинности или маркера доступа или соответствующих ключевых слов строка подключения. Дополнительные сведения см. в разделе о шифровании и проверке сертификатов.
В специфичном для каждого поставщика множестве свойств DBPROPSET_SQLSERVERDATASOURCEINFO драйвер OLE DB Driver for SQL Server определяет дополнительные свойства. Дополнительные сведения см. в статье Свойства сведений об источнике данных.
Строка "Драйвер OLE DB для SQL Server"
OLE DB Driver for SQL Server распознает синтаксис ODBC в значениях свойств строки поставщика. Свойство строки поставщика задается как значение свойства инициализации DBPROP_INIT_PROVIDERSTRING при установлении соединения с источником данных OLE DB. Это свойство содержит данные для подключения, определяемые поставщиком OLE DB и необходимые для установления соединения с источником данных OLE DB. В этой строке элементы разделяются точкой с запятой. За последним элементом в строке также должна стоять точка с запятой. Каждый элемент состоит из ключевого слова, символа «=» и значения, переданного при инициализации. Например:
Server=MyServer;UID=MyUserName;
Потребитель не должен использовать свойство строки поставщика с OLE DB Driver for SQL Server. Потребитель может задать любое свойство инициализации, отраженное в строке поставщика, с помощью свойств инициализации, определяемых OLE DB или драйвером OLE DB для SQL Server.
Список ключевых слов строки подключения, доступных в OLE DB Driver for SQL Server, см. в этой статье.