自定义Magento管理员配置密码加密

koj*_*iro 5 magento password-encryption

我需要sftp服务器的密码作为我正在处理的Magento模块的配置字段.添加字段非常简单,但Magento实际上并没有因为它有一个frontend_type而加密该值password.

<sftp_password translate="label">
    <label>SFTP Password</label>
    <frontend_type>password</frontend_type>
    <sort_order>170</sort_order>
    <show_in_default>1</show_in_default>
    <show_in_website>1</show_in_website>
    <show_in_store>1</show_in_store>
</sftp_password>
Run Code Online (Sandbox Code Playgroud)

我无法找到有关如何正确加密此值的文档.如何在密码存储在数据库中时确保密码加密?

Ren*_*art 14

<sftp_password translate="label">
      <label>SFTP Password</label>
       <frontend_type>obscure</frontend_type>
      <backend_model>adminhtml/system_config_backend_encrypted</backend_model>
      <sort_order>10</sort_order>
      <show_in_default>1</show_in_default>
      <show_in_website>1</show_in_website>
      <show_in_store>0</show_in_store>
</sftp_password>

// assuming that getConfigData return Mage::getStoreConfig($path, $storeId);
$this->getConfigData('sftp_password'); 
Run Code Online (Sandbox Code Playgroud)

frontend_type:密码与模糊

隐藏扩展密码,但出于安全考虑,它将实际密码的长度替换为'*'s6,'*'s因此您无法分辨密码的长度

请参见/ lib/Varien/Data/Form/Element /

阅读更多@ XML for Admin Configurations

  • 模糊扩展密码..请参阅我更新的帖子了解更多信息 (2认同)