Azure B2C、Angular 和客户端后端的授权代码流

Authorization code flow with Azure B2C, Angular and client backend

我想创建一个类似于下面屏幕截图的授权代码流程。我有一个 Angular 应用程序,与 .NET Core 客户端后端一起部署并使用 Azure B2C 作为授权服务器。不幸的是,我不太确定流程如何进行。 我的 Angular 应用程序中有一个登录按钮,这会直接调用 Azure B2C 并重定向到客户端后端吗?还是登录按钮 link 到客户端后端,然后重定向到 Azure B2C?

如果我对问题的理解正确,您想知道 Angular 应用在单击按钮时调用的端点是什么。这取决于您在 Angular 应用程序中实施 Http 调用。您可以让登录按钮调用一个服务来登录。该服务将在构造函数中注入 HttpClient。然后,在服务的登录方法中,您将使用 httpClient 创建您的 API 调用,其中将包含您要调用的端点的 URL。如果调用客户端后端,则可以调用 Azure B2C 终结点并在那里处理授权,然后将 200 或 401 状态代码传递回 Angular 应用程序。如果你想直接从 Angular 调用你的 Azure B2C,你将根据 Azure B2C 将 return 相应地处理响应(我以前没有使用过 Azure B2C,所以我不知道响应API 将 return)。我希望这有帮助。下面我有一个 link 到 Angular 关于 HttpClient 的文档。

Angular Docs on Http