protected $_paymentData;
protected $_scopeConfig;
protected $logger;
public function __construct(
\Magento\Framework\Model\Context $context,
\Magento\Framework\Registry $registry,
\Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory,
\Magento\Framework\Api\AttributeValueFactory $customAttributeFactory,
\Magento\Payment\Helper\Data $paymentData,
\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
\Magento\Payment\Model\Method\Logger $logger,
\Magento\Framework\Module\ModuleListInterface $moduleList,
\Magento\Framework\Stdlib\DateTime\TimezoneInterface $localeDate,
\Magento\Directory\Model\CountryFactory $countryFactory,
\Stripe\Stripe $stripe,
\Inchoo\Stripe\Model\StripeFactory $stripeFactory,
array $data = array()
) {
parent::__construct(
$context,
$registry,
$extensionFactory,
$customAttributeFactory,
$paymentData,
$scopeConfig,
$logger,
$moduleList,
$localeDate,
null,
null,
$data
);
$this->_scopeConfig = $scopeConfig;
$this->logger = $logger;
$this->initializeData($data);
}
public function getPaymentKey(){
$key= $this->_scopeConfig->getValue('payment/webpay/keyid');
echo $key;
exit;
}
Résultat d'écho: idfrk3-45pfnrkhwneirgplbmisniepssnie: hirtw45 True Key - 'p92GBhcQl7TklHOsWcxBk4eOmL6wpQWBG9nT2Qcf'
magento2
system-configuration
Magento2 Devloper
la source
la source
\Magento\Framework\App\Config\ScopeConfigInterface::getValue
renverra la valeur déchiffrée. LorsqueScopeConfigInterface::getValue
renvoie une valeur chiffrée, l'option de configuration est mal configurée . Une implémentation correcte d'une valeur de configuration chiffrée est:Ici, nous ajoutons une valeur de configuration obscure dans le chemin que
payment/webpay/keyid
les choses critiques ici garantissent lefield
hastype="obscure"
et les utilisationsMagento\Config\Model\Config\Backend\Encrypted
dubackend_model
. C'est ainsi que Magento sait utiliser un champ de formulaire masqué et crypter toute entrée utilisateur lors de la sauvegarde.L'ajout
backend_model="Magento\Config\Model\Config\Backend\Encrypted"
ici indique à Magento que la valeur de configuration doit être déchiffrée lors de la récupération avecScopeConfigInterface::getValue
Cela ajoute le chemin de configuration à la baie sensible et empêche la valeur du chemin d'être incluse lors du vidage de la configuration du magasin.
la source
Si n98-magerun2.phar est installé, vous pouvez obtenir une valeur de configuration déchiffrée avec quelque chose comme:
Vous pouvez également définir des valeurs de configuration chiffrées à partir de la ligne de commande avec quelque chose comme:
Vous pouvez obtenir n98-magerun2.phar à partir d'ici: https://github.com/netz98/n98-magerun2
la source
You can try with below method for payment encryption method to get value
,Vous devez remplacer
\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
par le chemin de classe ci-dessous,\Magento\Payment\Gateway\ConfigInterface
cela fonctionne bien,la source
Si vous souhaitez décrypter une valeur à l'aide d'une clé: Mettez le code ci-dessous dans decrypt-config-value.php à la racine de votre projet magento.
Exécutez php decrypt-config-value.php à l' aide de la console ou //yourwebsite.com/decrypt-config-value.php à l'aide d'un navigateur.
la source
Essayez avec le code ci-dessous pour la valeur de décodage json,
la source