
# 配置Redis访问密码
DCS提供了通过密码访问Redis的功能，确保缓存数据足够安全。同时也支持免密访问Redis的方式，您可以综合安全与便利的考虑，选择适合的Redis访问方式。
对于生产环境的系统，特别是含有用户等重要信息的缓存实例，建议配置实例密码访问Redis。
- 如果您需要修改缓存实例密码，可以参考[修改缓存实例密码]，输入旧密码并设置新密码。
- 如果您需要切换密码访问和免密访问两种Redis访问方式，或者忘记密码需要重置新密码，请参考[重置缓存实例密码]。
#### 实例密码安全使用建议
1. redis-cli连接时隐藏密码。 Linux操作系统中，如果对redis-cli指定-a选项并携带密码，则在系统日志以及history记录中会保留密码信息，容易被他人获取。建议执行redis-cli命令时不指定-a选项，等连接上Redis后，输入auth命令完成鉴权。如下示例：
   ```
   $ redis-cli -h 192.168.0.148 -p 6379
   redis 192.168.0.148:6379>auth yourPassword
   OK
   redis 192.168.0.148:6379>
   ```
   
2. 脚本使用交互式输入密码鉴权，或使用不同权限的用户管理与执行。 脚本涉及到缓存实例连接，则采用交互式输入密码。如果需要自动化执行脚本，可使用其他用户管理脚本，以sudo方式授权执行。
   
3. 应用程序中使用加密模块对Redis密码加密配置。
 
#### 约束与限制
- 只有处于"运行中"状态的Redis缓存实例支持修改或重置密码。
- 修改或重置密码后，客户端需使用更新后的密码才能连接（长连接断开重连时需要使用新密码，断开前还可以继续使用旧密码）。
- 免密访问模式的实例不支持修改密码操作，您可以通过[重置缓存实例密码]为实例设置密码。
- 为保护Redis实例的网络安全性，已开启公网访问的Redis实例不支持开启免密访问。
 
 #### 修改缓存实例密码
1. 登录[分布式缓存服务管理控制台](https://console.huaweicloud.com/dcs)。
2. 在管理控制台左上角单击![](https://support.huaweicloud.com/usermanual-dcs/zh-cn_image_0000001549115173.png)，选择实例所在的区域。
3. 单击左侧菜单栏的"缓存管理"。
4. 在需要修改密码的DCS缓存实例右侧，单击"操作"列下的"更多 \> 修改密码"。
5. 系统弹出修改密码对话框。输入"旧密码"、"新密码"和"确认密码"。 
   修改DCS缓存实例密码时，如果重复5次输入错误的旧密码，该实例账户将被锁定5分钟，锁定期间不允许修改密码，其他操作不受影响。
   DCS账号密码必须满足以下复杂度要求：
   - 密码不能为空。
   
   - 新密码与旧密码不能相同。
   
   - 密码长度在8到64位之间。
   
   - 至少必须包含如下四种字符中的三种：
     - 小写字母
     
     - 大写字母
     
     - 数字
     
     - 特殊字符包括（\`\~!@#$\^\&\*()-_=+\\\|{},\<.\>/?）
      
    
   
   
6. 单击"确定"完成密码修改。 
   更改密码后，服务端无需重启，立即生效。
   
   
 
 #### 重置缓存实例密码
1. 登录[分布式缓存服务管理控制台](https://console.huaweicloud.com/dcs)。
2. 在管理控制台左上角单击![](https://support.huaweicloud.com/usermanual-dcs/zh-cn_image_0000001549115173.png)，选择实例所在的区域。
3. 单击左侧菜单栏的"缓存管理"。
4. 在需要修改访问方式的Redis实例右侧，单击"操作"列下的"更多 \> 重置密码"。
5. 系统弹出"重置密码"对话框，请根据实际情况选择以下操作。 
   - 密码访问修改为免密访问。 打开"免密访问"开关，并单击"确定"，完成免密访问设置。
     免密模式存在安全风险，重置为免密模式后，您也可以通过重置密码再次设置密码。
     
   
   - 免密访问修改为密码访问，或者重置新密码。 在弹出的"重置密码"对话框，输入"新密码"和"确认密码"，并单击"确定"，完成密码设置。重置新的密码后，服务端无需重启，立即生效。
     只有所有节点都重置密码成功，系统才会提示重置密码成功，否则会提示重置失败。重置失败可能会造成实例重启，将缓存实例密码还原。
     DCS账号密码必须满足以下复杂度要求：
     - 密码不能为空。
     
     - 新密码与旧密码不能相同。
     
     - 密码长度在8到64位之间。
     
     - 至少必须包含如下四种字符中的三种：
       - 小写字母
       
       - 大写字母
       
       - 数字
       
       - 特殊字符包括（\`\~!@#$\^\&\*()-_=+\\\|{},\<.\>/?）
        
       
   
   
   
   
 
#### 相关文档
DCS支持通过API修改或重置密码，相关文档请参见[修改密码](https://support.huaweicloud.com/api-dcs/UpdatePassword.html)、[重置密码](https://support.huaweicloud.com/api-dcs/ResetPassword.html)。
