2014-04-04 18 views
6

Czy jest jakiś sposób, że można zaszyfrować hasło w log4j.propertiesJak mogę zaszyfrować hasło w pliku log4j.properties?

następuje moim appender

log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender 
log4j.appender.DB.URL=jdbc:mysql://localhost:3306/anilpractice 
log4j.appender.DB.driver=com.mysql.jdbc.Driver 
log4j.appender.DB.user=root 
[email protected] 
log4j.appender.DB.sql=INSERT INTO logs VALUES('%x','%d{dd MMM yyyy HH:mm:ss}','%C','%p','%m') 
log4j.appender.DB.layout=org.apache.log4j.PatternLayout 

Proszę mi pomóc w jaki sposób można zaszyfrować tag .password?

dziękuję wszystkim.

+0

Powinieneś umieścić zaszyfrowane hasło w pliku log4j, zamiast wykonywać operację szyfrowania. – Masudul

+0

Jak mogę połączyć się z bazą danych za pomocą zaszyfrowanego hasła? Jak mogę określić y do bazy danych, w której używam zaszyfrowanego hasła? Czy możesz wyjaśnić na przykładzie? – ANILBABU

Odpowiedz

1

Dzięki Bogu, wreszcie jakieś rozwiązanie, aby utrzymać zaszyfrowane hasło w log4j.properties

Co wszystko co musimy zrobić, to

Replikacja JDBCAppender klasę log4j.jar.

zmodyfikować definicję

public void setPassword(String password) 
    { 
      this.databasePassword = password; 
    } 

w JDBCAppender

w zależności od potrzeb i zastąpić tej klasy w log4j.jar.

1

Nie sądzę, że to możliwe. Nawet jeśli jest to możliwe, należy rozważyć następujące kwestie:

Jeśli możesz ustanowić połączenie tylko za pomocą zaszyfrowanego hasła, jego hasło nie jest szyfrowane, ponieważ każdy, kto skopiuje zaszyfrowane hasło, może połączyć się z twoją bazą danych. Różnica polega na tym, że hasło jest prezentowane w inny sposób i może być mniej czytelne dla ludzi, ale nadal w pełni przydatne.

Lepiej utworzyć użytkownika bazy danych z ograniczonymi uprawnieniami do zapisywania tylko w tabeli rejestrowania. W ten sposób skradzione hasło nie może zaszkodzić twojej bazie danych.

Powiązane problemy