Nombres de entidad de seguridad del servicio (SPN) en conexiones de cliente (ODBC)

Se aplica a: síSQL Server (todas las versiones admitidas) SíAzure SQL Database SíInstancia administrada de Azure SQL síAzure Synapse Analytics síAlmacenamiento de datos paralelos

En este tema se describen las funciones y atributos ODBC que admiten nombres principales de servicio (SPN) en aplicaciones cliente. Para obtener más información sobre los SPN en aplicaciones cliente, vea Service Principal Name (SPN) Support in Client Connections y Get Mutual Kerberos Authentication.

Palabras clave de cadena de conexión

Las siguientes palabras clave de cadena de conexión permiten a las aplicaciones cliente especificar un SPN.

Palabra clave Value
ServerSPN SPN del servidor. El valor predeterminado es una cadena vacía, que hace que SQL Server Native Client use el valor predeterminado, SPN generado por controlador.
FailoverPartnerSPN SPN del asociado de conmutación por error. El valor predeterminado es una cadena vacía, que hace que SQL Server Native Client use el valor predeterminado, SPN generado por controlador.

Atributos de conexión

Los siguientes atributos de conexión permiten que las aplicaciones cliente especifiquen un SPN y consulten el método de autenticación.

Nombre Tipo Uso
SQL_COPT_SS_SERVER_SPN

SQL_COPT_SS_FAILOVER_PARTNER_SPN
SQLTCHAR, lectura/escritura Especifica el SPN del servidor. El valor predeterminado es una cadena vacía, que hace que SQL Server Native Client use el valor predeterminado, SPN generado por controlador.

Este atributo solo podrá consultarse una vez que se haya establecido mediante programación o una vez que se haya abierto una conexión. Si se intenta consultar este atributo en una conexión que no está abierta y el atributo no se ha establecido mediante programación, se devuelve SQL_ERROR y se registra un error de diagnóstico con SQLState 08003 y el mensaje "Conexión no abierta".

Si se intenta establecer este atributo cuando hay una conexión abierta, se devuelve SQL_ERROR y se registra un error de diagnóstico con SQLState HY011 y el mensaje "Operación no válido en este momento".
SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD SQLTCHAR, solo lectura Devuelve el método de autenticación que utiliza la conexión. El valor devuelto a la aplicación es el valor que Windows devuelve a SQL Server Native Client. Los valores posibles son:

"NTLM", que se devuelve cuando una conexión se abre mediante la autenticación NTLM.

"Kerberos", que se devuelve cuando una conexión se abre mediante la autenticación Kerberos.



Este atributo solamente puede leerse para una conexión abierta que use la autenticación de Windows. Si se intenta leer antes de que se haya abierto una conexión, se devuelve SQL_ERROR y se registra un error con SQLState 08003 y el mensaje "Conexión no abierta".

Si este atributo se consulta en una conexión que no utilizó la autenticación de Windows, se devuelve SQL_ERROR y se registra un error con SQLState HY092 y el mensaje "Identificador de opción/atributo no válido (SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD solamente está disponible para conexiones de confianza)".

Si no puede determinarse el método de autenticación, se devuelve SQL_ERROR y se registra un error con SQLState HY000 y el mensaje "Error general".
SQL_COPT_SS_MUTUALLY_AUTHENTICATED SQLSMALLINT, solo lectura Devuelve SQL_TRUE si el servidor de la conexión se autenticó mutuamente; de lo contrario, devuelve SQL_FALSE.

Este atributo solamente puede leerse para una conexión abierta. Si se intenta leer antes de que se haya abierto una conexión, se devuelve SQL_ERROR y se registra un error con SQLState 08003 y el mensaje "Conexión no abierta".

Si este atributo se consulta para una conexión que no usó la autenticación de Windows, se devuelve SQL_FALSE.

Compatibilidad con la función ODBC para especificar SPN

Las siguientes funciones ODBC admiten aplicaciones cliente y SPN:

Consulte también

SQL Server Native Client (ODBC)