用户与认证
用户类型
-
所有者(Owner)
- 有且仅有一个,在第一次访问系统时创建
- 拥有系统内全部的权限
-
管理员(Administrators)
- 与所有者权限几乎一样
- 没有修改其它用户密码的权力
-
普通用户(Users)
- 没有系统管理的权限
- 拥有设备查看与操作的权限
忘记密码怎么办?
-
所有者在前端界面修改密码
菜单:
配置
-用户
需要打开高级模式,才能显示
用户
菜单 -
ha命令行(仅限在操作系统命令行中)
ha auth reset --username pi --password hachina1234
-
直接删除配置文件
删除
/config/.storage
目录下文件:auth*
onboarding
cloud
hassio
如果这种方法失败,需要删除
/config/.storage
整个目录内容这种方法会删除系统中的用户,以及其它配置
多因素认证(Multi-factor Authentication)
-
时间同步一次性密码
手机APP中每30秒变更一个当时可以使用的密码
需要安装以下APP中的一个:
-
通知消息动态密码
随机生成密码,通过HomeAssistant本身配置的消息组件发送
https://www.home-assistant.io/docs/authentication/multi-factor-auth/#notify-multi-factor-authentication-module
在HomeAssistant中,无法判断发送的消息是否确实成功接收,因此这种方式比较少用
用户认证模式
-
homeassistant
缺省的认证模式
-
trusted_networks
信任来自某个网络地址的访问,不需要输入密码
-
command_line
将用户输入的用户名和密码发送给指定的可执行程序,由该程序判断是否通过认证
-
legacy_api_password
很早以前HomeAssistant的认证方式
一个配置样例:
# configuration.yaml
homeassistant:
auth_providers:
- type: homeassistant
- type: trusted_networks
trusted_networks:
- 192.168.3.0/24
令牌(token)
- 刷新令牌(Refresh)
- 长期访问令牌(Long-Lived Access Tokens)