2016-12-05 2 views
1

Existe-t-il un moyen de chiffrer une colonne existante dans une table SQL Server sans modifier les autres systèmes utilisant cette colonne? Je suis sur SQL Server 2005.Chiffrer une colonne de table SQL Server existante

Je suppose qu'il est possible dans Oracle comme celui-ci (après l'activation Transparent Data Encryption)

ALTER TABLE employees  
    MODIFY (salary ENCRYPT USING '3DES168'); 
+3

SQL Server ** 2005 ** est mort - après son utilisation principale - même avec un support étendu - vous devriez ** mettre à niveau ** vers une version plus récente aussi longtemps que vous le pouvez! –

+0

@marc_s, alors quelle version a le chiffrement de données –

+1

SQL Server prend en charge le [Chiffrement de données transparent] (https://msdn.microsoft.com/library/bb934049) à partir de 2008, mais au niveau de la page, pas au niveau des colonnes. Au niveau de la colonne, vous pouvez utiliser une fonction comme ['ENCRYPTBYKEY'] (https://msdn.microsoft.com/library/ms174361), mais ce n'est pas transparent, bien que vous puissiez créer une vue sur la colonne chiffrée. Vous pouvez le faire sans changer les applications (mais pas sans interruption) en renommant la table de base, en définissant une vue dessus et en donnant à cette vue le nom de la table d'origine. DML serait fait à travers des déclencheurs. –

Répondre

-1

Vous pouvez chiffrer les données à l'aide des fonctions PHP ou toute autre fonction de la bibliothèque de scripts et de les stocker dans la Base de données MySQL. J'espère que ça aide.

+1

la question est précisément indiqué pour SQL-Server. –

+0

Cette table est utilisée par environ 7 applications, donc cherchait une solution rapide que de changer 7 applications –