Spec-Zone.ru › MySQL Connectors 1.0

5.9 Варианты аутентификации

Connector/ODBC поддерживает различные методы аутентификации, включая:

  • Стандартная аутентификация с использованием имени пользователя и пароля MySQL, например .

  • Протокол аутентификации Kerberos для аутентификации без пароля. Для получения дополнительной информации об аутентификации Kerberos, см. .

    Поддержка добавлена в Connector/ODBC 8.0.26 для клиентов Linux и 8.0.27 для клиентов Windows.

  • OpenID Connect поддерживается с помощью плагина аутентификации на стороне клиента authentication_openid_connect_client, подключающегося к MySQL Enterprise Edition с плагином аутентификации authentication_openid_connect.

    Требуемый параметр подключения openid-token-file определяет путь к файлу, содержащему токен идентификации в формате JWT. Поддерживаются методы подключения TLS, сокеты и общая память.

    Поддержка добавлена в Connector/ODBC 9.1.0.

  • Многофакторная аутентификация (MFA) с использованием параметров подключения PASSWORD1 (псевдоним PASSWORD), PASSWORD2 и PASSWORD3. Дополнительно существуют псевдонимы PWD1, PWD2 и PWD3.

    Поддержка добавлена в Connector/ODBC 8.0.28.

  • Поддерживается аутентификация на основе FIDO, и Connector/ODBC поддерживает плагин на основе FIDO. См. общую документацию для требований к установке и подробностей реализации.

    Примечание

    Поддержка плагина authentication_webauthn была добавлена в Connector/ODBC 8.2.0. Поддержка плагина authentication_fido была добавлена в 8.0.29, устарела в 8.2.0 и удалена в 8.4.0.

    Пример использования обратного вызова:

    // SQL_DRIVER_CONNECT_ATTR_BASE is not defined in all driver managers.
    // Therefore use a custom constant until it becomes a standard.
    #define MYSQL_DRIVER_CONNECT_ATTR_BASE 0x00004000
    
    // Custom constants used for callback
    #define CB_FIDO_GLOBAL MYSQL_DRIVER_CONNECT_ATTR_BASE + 0x00001000
    #define CB_FIDO_CONNECTION MYSQL_DRIVER_CONNECT_ATTR_BASE + 0x00001001
    
    // Usage example
    // Callback function inside code:
    void user_callback(const char* msg)
    {
       // Do something ...
    }
    SQLHENV henv = nullptr;
    SQLAllocHandle(SQL_HANDLE_ENV, nullptr, &henv);
    
    // Set the ODBC version to 3.80 otherwise the custom constants don't work
    SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION,
    (SQLPOINTER)SQL_OV_ODBC3_80, 0);
    
    SQLHDBC hdbc = nullptr;
    SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
    
    // CB_FIDO_X is either CB_FIDO_GLOBAL or CB_FIDO_CONNECTION
    SQLSetConnectAttr(hdbc, CB_FIDO_X, &user_callback, SQL_IS_POINTER);
    
    SQLDriverConnect(hdbc, hwnd, conn_str, ....);
    
    

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/connector-odbc-en/connector-odbc-configuration-authentication.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API