значение «принято» значительно снизит безопасность вашей базы данных, сделав ее уязвимой для любых атак со стороны любого приложения, которое имеет к ней доступ. В лучшем случае нужно изменить приложение, чтобы оно использовало ENCRYPTION как «обязательное».
ользую Oracle Linux PAAS Linux-сервер для моей машины БД (Oracle 11g) и имею сервер приложений Linux, где я могу запускать все свои Java-приложения.
Предположим, у меня есть веб-приложение на основе Spring, которое может подключаться к машине с облачной БД. Я попытался получить доступ к схеме в Toad для оракула, она работает, как и ожидалось, но когда я пытаюсь нажать на БД для получения данных из приложения, выдает ошибку ниже.
java.sql.SQLException: Io exception: Oracle Error ORA-12650
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:420)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:154)
at GetConnection.main(GetConnection.java:35)
Я также попытался расширить доступ к сервису от SID до имени сервиса в машине БД. Все равно выдают ту же ошибку. Тот же код отлично работает на другой облачной машине, которую мы установили. Но эта облачная машина была сделана командой оракула, и большинство из них по умолчанию.
Пожалуйста, поделитесь своим предложением, чтобы исправить эту проблему.