Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Szyfrowanie Oracle Advanced Secuity z konfiguracją Spring JDBC xml

Właściwości Oracle nie są podane w API Spring DataSource, więc musisz ustawić dodatkowe właściwości po zainicjowaniu ziarna. Możesz to zrobić za pomocą klasy, która implementuje 'beanpostprocessor'. Ponadto, ponieważ jest to Spring, musisz uzyskać uchwyt do bieżącego źródła danych, aby ustawić dodatkowe właściwości bez wysadzania init fasoli. Nie możesz użyć Autowire w klasie, ponieważ wtedy PostProcessor pominie ten bean. Więc musisz rzucić fasolę. Następnie możesz użyć setConnectionProperties, aby zainicjować parametry wymagane przez Oracle, zamiast ustawiać właściwości w Spring bean, co nie zadziała i spowoduje opisany powyżej błąd.

Powinieneś także poprawić tytuł tego tematu Bezpieczeństwo-->Bezpieczeństwo. Przepraszam, jeśli formatowanie jest wyłączone, ponieważ jestem nowy w publikowaniu odpowiedzi.

@Component
public class OracleConfigurer implements BeanPostProcessor {

@Override
public Object postProcessBeforeInitialization(Object bean, String name) throws BeansException {


final Logger LOG = LoggerFactory.getLogger(OracleConfigurer.class);
    if (bean instanceof DriverManagerDataSource) {
          Properties properties = ((DriverManagerDataSource) bean).getConnectionProperties();
          if (null == properties) properties = new Properties();
                properties.put("oracle.net.encryption_types_client", "(AES256)");
                properties.put("oracle.net.crypto_checksum_client", "REQUIRED");
                properties.put("oracle.net.encryption_client", "REQUIRED");
                DriverManagerDataSource dataSource = ((DriverManagerDataSource) bean);
                dataSource.setConnectionProperties(properties);
        }
        return bean;
    }

    @Override
    public Object postProcessAfterInitialization(Object bean, String name) throws
        BeansException {
        return bean;
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. REGEXP_COUNT() Funkcja w Oracle

  2. Typ zdefiniowany przez użytkownika Oracle w definicji pakietu

  3. Autoryzacja uprawnień Oracle SQL dla wielu atrybutów i tabel za pomocą jednej instrukcji

  4. dynamiczna liczba warunku gdzie w Oracle sql

  5. Błąd niezgodności Oracle.DataAccess