oauth2.0 授予在Microsoft Outlook中添加事件的权限

6uxekuva  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(144)

所以我有一个React应用程序,我想让用户为我的应用程序授予对他们日历的访问权限。我使用PKCE流的授权代码做到了这一点:

  • 用户点击按钮allow access to calendar
  • 用户带参数进入https://login.microsoftonline.com/common/oauth2/v2.0/authorize(包括传入PKCE的加密验证码)
  • 用户被重定向到Microsoft网站以授予Calendars.ReadWriteoffline_access的权限
  • 我的后端被微软网站从Authorisation Code flow触发code
  • 我的后端触发https://login.microsoftonline.com/common/oauth2/v2.0/token获取access_tokenrefresh_token(使用PKCE的未加密验证令牌)
  • 后端将refresh_token存储在数据库中,并使用access_token将事件添加到用户的日历中
  • 如果我想在几天后将事件添加到用户的日历中,我使用refresh_token来获取新的access_token,而不会再次通过Microsoft登录屏幕提示用户

我有三个问题:
1.这个流程对这样的应用程序实际上有意义吗?它做得正确吗?
1.在后端存储refresh_token的最佳和最安全的方法是什么?
1.我用常规的HTTP请求来做这些事情。使用msal React和JavaScript包来以某种方式使其更容易是否有意义?

ct3nt3jp

ct3nt3jp1#

1.是的,这是一个相当标准的方法。
1.这个问题太广泛,而且以意见为基础,无法准确回答。
1.是的,你应该使用MSAL。一般来说,尽可能避免重新实现安全协议,而是依赖于信誉良好的,积极支持的库。

相关问题