Où stocker en toute sécurité les clés d'API et les mots de passe dans WordPress?

9

Je cherche à utiliser quelques API et beaucoup viennent avec des clés, des clés secrètes et des mots de passe nécessaires pour fonctionner. Où dans WordPress pouvez-vous stocker cette information? En supposant que quelqu'un puisse pirater votre base de données, est-il possible que WordPress sécurise davantage l'enregistrement de ces informations? Pensez également à la possibilité de changer ces clés si souvent que je devrais les mettre à jour sur une page d’options.

UPDATE

posée jgraup 19.12.2015 - 02:21

2 réponses

8

Il n’existe aucun moyen absolument sûr de stocker ces informations de manière permanente.
Vous avez deux options pour augmenter un peu la sécurité:

  1. Utilisez la table d'options et chiffrez les données

    Utilisez une méthode de cryptage renforcé , puis associez-la à l'un des éléments suivants:

    • votre mot de passe lorsque vous souhaitez utiliser l'appel API uniquement lorsque vous êtes connecté, ou
    • une clé secrète stockée dans votre wp-config.php - un attaquant a alors besoin du code PHP et de la base de la base de données
  2. Stocker les informations d'accès en dehors de WordPress

    Si vous utilisez un système pour un déploiement automatique, basé par exemple sur Composer et wpstarter , vous avez probablement un type de serveur de déploiement tel que Envoyer qui crée un fichier avec des variables de configuration importantes est stocké en dehors de la racine du document du serveur de site .
    Vous pouvez ensuite utiliser le backend du serveur de déploiement au lieu du backend WordPress pour modifier ces données.

Les deux options ne sont pas totalement sûres. Vous devez toujours surveiller l'utilisation actuelle de l'API pour détecter les activités non prévues. Assurez-vous qu’une personne ayant un accès complet à votre site Web ne peut compromettre le journal.

    
réponse donnée fuxia 19.12.2015 - 07:40
3

La réponse est NON. Si votre base de données peut être espionnée, votre code le sera probablement aussi. Par conséquent, même si vous cryptez des données, elles peuvent être déchiffrées.

Si vous envisagez de stocker des données sensibles, aucune solution de bas niveau ne peut vous aider. Il vous suffit de sécuriser l'ensemble de votre application pour que la question du stockage ne soit plus pertinente.

J'ai en fait rencontré un besoin de chiffrement des données. Par conséquent, si la sécurité de l'application est violée et que vous avez accès uniquement à la base de données, vous ne pouvez pas utiliser ces données, mais dans la vie réelle, vous êtes plus susceptible d'être piraté au niveau wordpress que le niveau DB.

    
réponse donnée Mark Kaplun 19.12.2015 - 08:26

Lire d'autres questions sur les étiquettes