phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

Jak zaszyfrować konkretną kolumnę w tabeli MySQL?

Poszukaj tutaj listy możliwych funkcji szyfrowania:

http://dev.mysql.com/doc/refman /5.1/pl/encryption-functions.html

Możesz utworzyć wyzwalacz dla aktualizacji i sprawdzić tam pole accessable . Coś takiego:

CREATE TRIGGER crypt_trg BEFORE UPDATE ON table FOR EACH ROW
BEGIN
  IF new.accessable = 0 THEN
    SET new.msg := ENCRYPT(new.msg, 'key');
  ELSE
    SET new.msg := DECRYPT(new.msg, 'key');
  END IF;
END;

Możesz również zaktualizować wszystkie istniejące rekordy w tabeli za pomocą tego zapytania:

UPDATE table SET msg = IF(accessable = 0, ENCRYPT(msg, 'key'), DECRYPT(msg, 'key'));

Możesz więc wybrać rekordy dla swojego kodu PHP:

SELECT msg_id, user_id, time, IF(accessable = 0, DECRYPT(msg, 'key'), msg) msg
FROM table

UPD. Również tutaj było podobne pytanie:

Kolumny zaszyfrowane MySQL



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. jak uzyskać zdalny dostęp do phpmyadmina

  2. błąd phpmyadmin 13 odmowa pozwolenia

  3. Jak zainstalować i zabezpieczyć phpMyAdmin na Ubuntu 16.04

  4. Jaki jest prosty sposób na importowanie dużej bazy danych do mysql za pomocą phpmyadmina?

  5. MySQL nie pokazuje baz danych utworzonych w phpMyAdmin