Имена участников-служб в клиентских запросах на установление соединения (ODBC)

В данном разделе описываются атрибуты и функции ODBC, поддерживающие имена участников-служб (SPN) в клиентских приложениях. Дополнительные сведения об именах участников-служб в клиентских приложениях см. в разделе Поддержка имени участника-службы в клиентских соединениях.

Ключевые слова в строке соединения

Следующие ключевые слова в строках соединения позволяют клиентским приложениям задать имя участника-службы.

Ключевое слово

Значение

ServerSPN

Имя участника-службы для сервера. Значением по умолчанию является пустая строка, что вынуждает собственного клиента SQL Server использовать сформированное драйвером имя участника-службы по умолчанию.

FailoverPartnerSPN

Имя участника-службы для резервного участника. Значением по умолчанию является пустая строка, что вынуждает собственного клиента SQL Server использовать сформированное драйвером имя участника-службы по умолчанию.

Атрибуты соединения

Следующие атрибуты соединения позволяют клиентским приложениям задать имя участника-службы и запросить метод проверки подлинности.

Имя

Тип

Сведения об использовании

SQL_COPT_SS_SERVER_SPN

SQL_COPT_SS_FAILOVER_PARTNER_SPN

SQLTCHAR, чтение/запись

Задает имя участника-службы для сервера. Значением по умолчанию является пустая строка, что вынуждает собственного клиента SQL Server использовать сформированное драйвером имя участника-службы по умолчанию.

Значение этого атрибута можно запросить только после того, как оно было задано программным образом, или после открытия соединения. В противном случае будет возвращено значение SQL_ERROR, и занесена в журнал диагностическая запись с кодом SQLState 08003 и сообщением «Соединение не открыто».

При попытке установить этот атрибут при открытом соединении будет возвращено значение SQL_ERROR, и в журнал будет занесена диагностическая запись с кодом SQLState HY011 и сообщением «Операция является недопустимой в данный момент».

SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD

SQLTCHAR, только чтение

Возвращает метод проверки подлинности, используемый для соединения. Приложению возвращается значение, которое Windows возвращает собственному клиенту SQL Server. Возможные значения перечислены ниже.

  • Значение «NTLM», которое возвращается в том случае, если соединение установлено с использованием проверки подлинности NTLM.

  • Значение «Kerberos», которое возвращается в том случае, если соединение установлено с использованием проверки подлинности Kerberos.

Этот атрибут можно прочитать только при открытом соединении, использующем проверку подлинности Windows. При попытке считать его до открытия соединения вернется значение SQL_ERROR и в журнал будет записана ошибка с кодом SQLState 08003 и сообщением «Соединение не открыто».

При попытке запросить значение этого атрибута при соединении, не использующем проверку подлинности Windows, будет возвращено значение SQL_ERROR, и в журнал будет занесена диагностическая запись с кодом SQLState HY092 и сообщением «Недопустимый идентификатор атрибута или параметра (метод SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD доступен только для доверительных соединений)».

Если используемый метод проверки подлинности определить не удается, будет возвращено значение SQL_ERROR, и в журнал будет занесена диагностическая запись с кодом SQLState HY000 и сообщением «Общая ошибка».

SQL_COPT_SS_MUTUALLY_AUTHENTICATED

SQLSMALLINT, только для чтения

Возвращает значение SQL_TRUE, если сервер соединения прошел взаимную проверку подлинности; иначе возвращает SQL_FALSE.

Этот атрибут можно прочитать только при открытом соединении. При попытке считать его до открытия соединения вернется значение SQL_ERROR и в журнал будет записана ошибка с кодом SQLState 08003 и сообщением «Соединение не открыто».

При попытке запросить значение этого атрибута при соединении, не использующем проверку подлинности Windows, будет возвращено значение SQL_FALSE.

Поддержка задания имен SPN с помощью функций ODBC

Следующие функции ODBC поддерживают клиентские приложения и имена SPN:

См. также

Основные понятия