Ошибка при подключении: «ORA-28040: No matching authentication protocol exception»
Пробую подключить Grails проект к Oracle БД 12c. Но когда запускаю приложение, то получаю исключение:
Caused by: org.apache.commons.dbcp.SQLNestedException:
Cannot create PoolableConnectionFactory (ORA-28040:
No matching authentication protocol)
Нашёл предлоаемое решение и попробовал отредактировать .ora файл, но безуспешно. Добавил следующее в sqlnet.ora и пробовал установливать значения 10,11,12 :
SQLNET.ALLOWED_LOGON_VERSION=10 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10 SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
, но с никаким из них не заработало. Может кто-то помочь с этой проблемой? Свободный перевод ORA-28040: No matching authentication protocol exception от участника @Aman Adhikari
Отслеживать
задан 26 мая 2020 в 12:42
51.6k 201 201 золотой знак 63 63 серебряных знака 245 245 бронзовых знаков
ассоциация:stackoverflow.com/q/24100117
26 мая 2020 в 14:06
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
В оф. документации эта ошибка упомянута в контексте Oracle RAC, но решение действительно так же для некластерной БД:
Bug 14575666
In 12.1, the default value for the SQLNET.ALLOWED_LOGON_VERSION parameter has been updated to 11. This means that database clients using pre-11g JDBC thin drivers cannot authenticate to 12.1 database servers unless the SQLNET.ALLOWED_LOGON_VERSION parameter is set to the old default of 8.This will cause a 10.2.0.5 Oracle RAC database creation using DBCA to fail with the ORA-28040: No matching authentication protocol error in 12.1 Oracle ASM and Oracle Grid Infrastructure environments.
Workaround:
Set SQLNET.ALLOWED_LOGON_VERSION=8 in the $crs_home/network/admin/sqlnet.ora file.
Предложенное решение: установить SQLNET.ALLOWED_LOGON_VERSION=8 на сервере БД.
В этом ответе ссылка на фэйк QA, поэтому перенёс только полезный комментарий под ним.
Комментарий:
Да, в моём случае это решило проблему, но возникла другая: invalid username/password , когда пытался подключится в JDeveloper 10 к Oracle БД 12c.
В итоге решил так:
- SQLNET.ALLOWED_LOGON_VERSION=8
- SQLNET.AUTHENTICATION_SERVICES (NONE)
- ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE
- ALTER USER XY IDENTIFIED BY Pass (так как меняется регистро-чуствительность)
Database Error Messages
No common authentication protocol was found between the database client and server.
Action
Set the values of the SQLNET.ALLOWED_LOGON_VERSION_SERVER and SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters on both the client and on the server to values that match the minimum software version supported in the system. This error is also raised when the client is authenticating to a user account which was created without a verifier suitable for the client software version. In this situation, the password of the account must be reset to generate the required verifier and allow the authentication to proceed successfully.
Previous Releases
Release 21c, 19c
No matching authentication protocol
Cause
There was no acceptable authentication protocol for either client or server.
Action
The administrator should set the values of the SQLNET.ALLOWED_LOGON_VERSION_SERVER and SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters, on both the client and on the server, to values that match the minimum version software supported in the system. This error is also raised when the client is authenticating to a user account which was created without a verifier suitable for the client software version. In this situation, that account’s password must be reset, in order for the required verifier to be generated and allow authentication to proceed successfully.
- © Oracle
- About Oracle
- Contact Us
- Products A-Z
- Terms of Use & Privacy
Resolving [Oracle]ORA-28040: «No matching authentication protocol» errors when connecting to MDM 12.0 from an Oracle 19 client
Why am I getting [Oracle]ORA-28040: No matching authentication protocol when connecting to MDM from my Oracle 19 client?
We have the below Oracle client versions. If we are using 19.11.1.0.0 we are not receiving any authentication protocol error. H owever, for the other Oracle client versions, we are getting «No matching authentication protocol» error.
Oracle Client Version :
- 19.11.1.0.0
- 19.13.0.0.0
- 19.14.0.0.0
- 19.15.0.0.0(32 bit)
Cause
MDM 12.0 supports Oracle Database 19c- (19.3) and future fix packs so the clients should be able to connect to MDM 12.0.
It is not the actual Oracle client version that is causing the error, it is a configuration setting in the sqlnet.ora file.
Answer
Modify the sqlnet.ora file and s et SQLNET.ALLOWED_LOGON_VERSION_SERVER=11 at the network level then try the connection again.
ORA_EXCEL
API Oracle PL/SQL to Excel XSLX Самый мощный PL/SQL Excel API в мире.
- RU
- EN
- DE
- ES
- JP
- Домой
- Цены
- Примеры
- _Hello world
- _Запрос на экспорт листа
- _Семейство шрифтов, цвет и размер
- _Пользовательский формат ячейки
- _Горизонтальное и вертикальное выравнивание
- _Жирный, курсив и подчеркивание
- _Границы со стилями и цветами
- _Объединять и выравнивать ячейки
- _Перенос текста
- _Ширина столбца и высота строки
- _Несколько листов
- _Несколько документов
- _Экспорт из выбора
- _Добавить 1.048.576 строк на лист
- _Сохранить лист в файл XLSX
- _Сохранить лист в BLOB
- _Установить размер листовой бумаги
- _Отступ слева и справа от текста
- _Неограниченное количество листов на документ
- _Установить цвет фона ячейки
- _Установить ширину столбца
- _Установить высоту строки
- _Задать поля листа
- _Задать заголовок листа и текст нижнего колонтитула
- _Установить комментарий к ячейке
- _Фильтровать ячейки
- _Повернуть текст
- _Скрыть столбцы и строки
- _Установить формулы столбца
- _Установить портрет или альбомную ориентацию
- _Установить ячейку как гиперссылку
- _Группировать столбцы
- _Сохранить BLOB в файл
- _Стоп-кадр по вертикали
- _Стоп-кадр по горизонтали
- _Стиль ячейки
- _Установить автора документа
- _Установить систему дат
- _Читать документ xlsx
- _Установить активную ячейку
- _Список — проверка данных
- _Целое число — проверка данных
- _Десятичное число — проверка данных
- _Дата — проверка данных
- _Время — проверка данных
- _Длина текста — проверка данных
- add_sheet
- add_row
- query_to_sheet
- set_row_height
- set_cell_value
- set_cell_font
- set_default_font
- set_cell_bold
- set_cell_italic
- set_cell_underline
- set_cell_color
- set_cell_bg_color
- set_cell_align_left
- set_cell_align_right
- set_cell_align_center
- set_cell_vert_align_top
- set_cell_vert_align_middle
- set_cell_vert_align_bottom
- set_column_width
- set_cell_border_top
- set_cell_border_bottom
- set_cell_border_left
- set_cell_border_right
- set_cell_border
- set_cell_wrap_text
- merge_cells
- merge_rows
- set_cell_format
- set_cell_formula
- set_cell_rotate_text
- set_sheet_margins
- set_sheet_landscape
- set_sheet_paper_size
- set_sheet_header_text
- set_sheet_footer_text
- set_cell_hyperlink
- set_cell_indent_left
- set_cell_indent_right
- set_cell_comment
- hide_column
- hide_row
- set_cells_filter
- save_to_file
- save_to_blob
- set_1904_date_system
- set_1900_date_system
- set_document_author
- add_style
- set_cell_style
- freeze_panes_horizontal
- freeze_panes_vertical
- blob_to_file
- group_columns
- set_cell_validation_list
- set_cell_validation_integer
- set_cell_validation_decimal
- set_cell_validation_date
- set_cell_validation_time
- set_cell_validation_text_len
Код ошибки базы данных Oracle ORA-28040 Описание
База данных: 11g Выпуск 1
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 11g Выпуск 1
Код ошибки: ORA-28040
Описание: No matching authentication protocol
Причина: No acceptible authentication protocol for both client and server
Действие: Administrator should set SQLNET_ALLOWED_LOGON_VERSION parameter on both client and servers to values that matches the minimum version supported in the system.База данных: 10g Выпуск 1
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 10g Выпуск 2
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 11g Выпуск 2
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 12c Выпуск 1
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 12c Выпуск 2
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 18c Выпуск 1
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.База данных: 19c Выпуск 1
Код ошибки: ORA-28040
Описание: Нет соответствующего протокола аутентификации
Причина: Не было приемлемого протокола аутентификации ни для клиента, ни для сервера.
Действие: Администратор должен установить значения параметров SQLNET.ALLOWED_LOGON_VERSION_SERVER и SQLNET.ALLOWED_LOGON_VERSION_CLIENT, как на клиенте, так и на сервере, в значения, которые соответствуют минимальной версии программного обеспечения, поддерживаемой в системе. Эта ошибка также возникает, когда клиент проходит аутентификацию для учетной записи пользователя, которая была создана без верификатора, подходящего для версии программного обеспечения клиента. В этой ситуации пароль этой учетной записи необходимо сбросить, чтобы сгенерировать требуемый верификатор и разрешить успешную аутентификацию.
Библиотека кодов ошибок базы данных Oracle
- _10gR1 Коды ошибок
- _10gR2 Коды ошибок
- _11gR1 Коды ошибок
- _11gR2 Коды ошибок
- _12cR1 Коды ошибок
- _12cR2 Коды ошибок
- _18cR1 Коды ошибок
- _19cR1 Коды ошибок