oauth-2.0 使用OAuth2.0和Azure函数调用受保护的API

bd1hkmkf  于 2022-10-31  发布在  其他
关注(0)|答案(1)|浏览(196)

正如标题所示,我几乎完全不知道如何正确地设置OAuth2.0和一个使用http触发器的Azure函数应用程序。
我正在调用的API不支持隐式流,只允许授权代码流。我最初的计划是遵循this guide来获得正确的令牌。但此客户端凭据流没有使用重定向URI。
我想我需要创建一个端点,例如“https://{baseAddress}:{portNumber}/api/oauth/token”,它可以作为重定向URI。然后我可以将令牌存储在服务中,并在需要时使用它/刷新它。但我担心重定向会破坏应用程序的状态,无法正常工作。
是否有一个演示的例子,应用程序代码授予流程与Azure功能?我会非常感谢一些指导/其他资源。

dly7yett

dly7yett1#

  • 如@Anand Sowmithiran所建议。以下是使用Azure函数基于oauth的授权和使用不记名令牌调用基于外部的API的流程。*

  • 以下是请求授权代码的示例代码。*
// Line breaks for legibility only

https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
client_id=6731de76-14a6-49ae-97bc-6eba6914391e
&response_type=code
&redirect_uri=http%3A%2F%2Flocalhost%2Fmyapp%2F
&response_mode=query
&scope=https%3A%2F%2Fgraph.microsoft.com%2Fmail.read%20api%3A%2F%2F
&state=12345
&code_challenge=YTFjNjI1OWYzMzA3MTI4ZDY2Njg5M2RkNmVjNDE5YmEyZGRhOGYyM2IzNjdmZWFhMTQ1ODg3NDcxY2Nl
&code_challenge_method=S256
  • 有关完整信息,请查看此document。*

相关问题