我想使用OneDrive for Business作为家庭助理的备份目的地。
官方整合 允许将备份发送到 OneDrive for Business,但要求事先在 Microsoft Entra 中准备应用程序,包括 Tenant ID、Client ID、Secret Client Client 和精确重定向 URI。
先决条件
在你开始之前,你需要:
- 一个功能性的家庭助理。
- Microsoft 365 / OneDrive for Business 帐户。
- 使用可以创建应用程序的帐户访问 Microsoft Entra 门户。 微软表示,至少需要一个应用程序开发人员角色。
- 了解 Home Assistant 使用的重定向 URL 如下: https://my.home-assistant.io/redirect/oauth
Home Assistant 的起点
我直接开始在家庭助理,在 设置 > 设备和服务, 然后,我添加了整合。 OneDrive 商业. 第一个窗口要求我提供用于集成帐户的Entra租户的标识符。

当时,我还没有必要的标识符。 所以我把 Home Assistant 放在一边,在 Microsoft Entra 端准备应用程序。 [第116页]
曲名 : Microsoft Entra

我要去 https://entra.microsoft.com/
我使用管理员帐户或其他应用程序开发人员配置文件登录。
当我到达微软Entra时,我第一次想到我必须经历。 企业应用. 事实上,这不是适合这种配置的地方。
要创建Home Assistant期望的凭据,您必须前往。 Entra ID > 申请注册.

这是我打开屏幕以创建新注册的地方。

此外,微软解释说,必须注册应用程序才能获得身份验证所需的凭据。

- 名字是自由的,我把。 主页 助理 OneDrive 备份
- 帐户类型为 仅限单租户
- 重定向 URL 是 WEB https://my.home-assistant.io/redirect/oauth
恢复标识符
注册完成后,我到达了概述页面。 我找到了未来最重要的两个信息: L'目录 ID (租户), 对应于 租户 ID, 以及应用 ID(Customer), 对应于 客户 ID.

我立即注意到了这两个值,因为Home Assistant在安装向导期间要求它们。
建立客户保密
最后一个丢失的数据是应用程序的秘密。 在 App 菜单中,我打开 证书 & 秘密, 然后,我创造了一个。 新 客户 秘密. Microsoft 允许您添加描述并选择有效期。


一旦秘密被生成,我复制了它。 值 值 马上... 此步骤很重要,因为需要将此值粘贴到 Home Assistant 中,而不是秘密标识符中。

必要的许可
在离开 Entra 之前,必须为刚刚添加的条目授予权限。
以下权限是必需的:
Files.ReadWrite.All: 允许应用程序在 OneDrive 的任何文件夹中读取和写入。 与个人 OneDrive 不同,OneDrive for Business 不支持权限Files.ReadWrite.AppFolder, 因此,这些是可能的最小权限。离线 _ 访问: 允许应用程序在无需人工干预的情况下自动更新其身份验证令牌。OpenID 的 OpenID: 允许应用程序读取基本信息,例如如果我有一个OneDrive。
所以我要进去了 允许的 API

目前,除了Microsoft Graph User.read之外什么都没有。

我要继续 添加 授权
在打开的窗户里,我保持 授权授权

下面,我将获取搜索引擎中的3个权限,一个接一个地检查它们:
Files.ReadWrite.All离线 _ 访问OpenID 的 OpenID
我正在验证。

它缺乏管理员的同意,我依靠。 授权管理员同意

对于 Microsoft 管理面板上的配置来说,这是完整的。
返回家庭助理
回到家庭助理,我接管了OneDrive for Business设置向导。 我首先将此事提交至 租户 ID, 即在 Entra 中检索的租房者目录的 ID。

然后Home Assistant问我应用程序的OAuth凭证。

要填满的田野
在添加应用程序 ID 窗口中,我输入了一个免费名称以轻松识别此连接(例如 Onedrive),然后粘贴该连接。OAuth 客户端 ID 对应于应用程序ID(客户),以及 OAuth 客户 秘密 对应于 Entra 中创建的秘密的值。

一旦这些字段得到验证,Home Assistant 推出了 Microsoft Authentication Wizard。
管理人批准的特殊情况

有一次,我遇到了这个窗口,因为我错误地配置了API权限。 通过重复上面所解释的内容,一切都奏效了。
实际使用的帐户的选择
我在配置过程中也注意到了一个重要点: 实际链接到集成的帐户是完成OAuth认证的帐户。
使用管理员帐户创建应用程序并不一定意味着将使用来自管理员帐户的OneDrive,前提是正确授予相关同意并且使用正确的用户帐户进行最终身份验证。
我强烈建议不要在配置之外使用管理员帐户,Home Assistant必须链接到用户帐户。
备份的目标文件夹

一旦身份验证完成,Home Assistant问我存储备份的文件夹的路径。 文档规定,如果此文件夹不存在,它将在所选 OneDrive 的根部创建。
我选择了一条像这样简单的路。 备份 备份, HomeAssistant 的 或一棵树如 HomeAssistant/Backups.
家庭助理(Home Assistant)
验证后,OneDrive for Business集成成功添加到Home Assistant中。

我能够看到他的集成板和暴露的传感器,包括使用的空间,剩余的空间和驱动器的状态。
此外,文档表明集成提供了存储传感器和驱动器的状态,如 正常 正常, 接近极限, 关键 关键 或 逾越.
此时,集成的安装已经完成,OneDrive for Business已准备好用作家庭助理的备份位置。
我将检查文件夹是否在OneDrive中创建(可选)
出于好奇,我连接到我的OneDrive,我看到文件夹。 HomeAssistant 的 是现在的,空的,但存在是完美的。

我配置 Home Assistant 备份到 OneDrive for Business
OneDrive for Business集成现已在Home Assistant中安装并运行。 剩下的就是使用它来发送备份到我的OneDrive for Business。
设置备份
我打开备份页面在 设置 > 系统 > 备份.
然后我进入框架。 备份设置 然后 保存到x远程位置

在可用位置列表中,现在出现了 OneDrive for Business。 我激活了与此集成对应的交换机,使其成为自动备份的活跃目标。
保留备选办法
我已经配置了在 ⚙/2008/ 参数中保留 OneDrive 的备份数量。 我选择保留每种类型的10个备份,但这个值是免费的,具体取决于存储需求和备份的频率。

我还启用了加密选项,因为备份包含来自 Home Assistant 安装的敏感数据。
第一次备份测试
为了确保一切正常,我创建了一个手动备份。 在备份页面上,我点击了 + 立即保存, 我自动简化了任务。

我验证了创造。
OneDrive 中 的 验证
几分钟后,我在浏览器中打开 OneDrive for Business。 在我安装集成时配置的文件夹中(例如。 HomeAssistant 的新的后备队在场。

配置自动备份
为了自动备份,我激活了选项 自动备份 在设置中。 我选择了每周频率,每周日有一个完整的备份,并在工作日进行部分备份。
启用 OneDrive for Business 后,所有这些备份都将自动移动到云端,无需人工干预。
监督备份
由于集成提供的传感器,我在主仪表板上添加了一张诊断卡。 此地图显示 OneDrive 上使用的空间、剩余空间和存储状态(正常、接近极限、关键、超出)。
这允许我轻松监控是否存在错过OneDrive空间的风险。
良好做法
自安装以来,备份工作没有任何问题。 作为额外的预防措施,我保留了本地备份,但OneDrive for Business现在是我的主要目的地,以便在Home Assistant服务器上出现硬件问题时避免数据丢失。
我建议定期测试备份并检查其恢复,以确保一切正常工作。

