我正在开发一个项目,需要在用户的 Outlook 日历中创建事件。要求是将工作检查日期添加到相关用户的日历中。此外,用户应该能够在其日历上手动创建事件。
经过一些研究,我确定了两种可能的方法来实现此功能。鉴于这两种方法,我不确定哪一种适合我的要求。另外,我对这两个问题都有疑问:
1。委托权限:
2。应用权限:
尽管阅读了 Microsoft Graph API 的文档,我发现自己比以前更加困惑。我正在寻求明确哪种方法最适合我的要求。
这是我的具体问题:
我愿意接受任何可以帮助我做出明智决定的见解、建议或澄清。谢谢您的协助。
- 委托权限
委托权限通常是您想要避免的,除非它是前端类型的应用程序,您需要在其中对用户进行身份验证,然后使用他们的凭据执行某些操作。对于守护程序应用程序或后端应用程序,您应该使用应用程序权限(客户端凭据流)。后端上下文中的委托权限的问题是,您需要拥有一个应用程序/服务帐户(即许可证),这意味着您需要处理用户名和密码(不安全)或存储的刷新令牌(难以管理且不可靠),并且然后需要处理对该用户帐户 MFA、位置、条件访问等的限制。
- 应用程序权限:
如果您需要应用程序在多个租户上运行,那么您需要创建一个多租户应用程序https://learn.microsoft.com/en-us/entra/identity-platform/single-and-multi-tenant -apps#who-can-sign-in-to-your-app 并完成发布者验证 https://learn.microsoft.com/en-us/entra/identity-platform/publisher-verification-overview 。您的应用程序需要使用的租户的管理员需要同意,如果您没有特定的安装程序,他们可以通过多种方式来做到这一点https://learn.microsoft.com/en-我们/entra/identity/enterprise-apps/grant-admin-consent?pivots=portal