Symfony bundle - REST API 两种类型的身份验证

Symfony bundle - REST API Two types of authentication

这是征求意见。 我正在开发一个 Symfony4 包,它将与 SMS 服务的 REST API 交互。 此服务有两种验证方式:

  1. 获取一个 Session 如果没有发送请求,该 ID 将在 5 分钟后过期
  2. 获取令牌始终有效

两者都是通过向身份验证方法提供用户名和密码来检索的,然后它们将在每个 curl header 请求中使用。

我的问题是:我应该在我的捆绑包中提供两种类型的身份验证还是应该只选择一种?

如果两者都可用,因为我的包将提供 服务 来与 SMS 应用程序交互,我是否应该添加要在配置中使用的身份验证类型?

mysms_bundle:
  usernam: myuser
  password: mypass
  auth_type: token
  # You can also use session
  # auth_type: session

谢谢

我认为您应该允许两种类型的身份验证,并让用户选择首选的身份验证方法(如果两种方法都可用)。 无论如何,如果第一个验证方法失败,您应该回退到另一个验证方法。

并且默认该首选项为更安全的首选项(或外部服务文档首选或建议的首选项)。