Azure AD 的 MVC/SPA 身份验证方案

2024-05-06

以下是 Azure AD 支持的应用程序类型和场景:
Web 浏览器到 Web 应用程序 http://msdn.microsoft.com/en-us/library/azure/dn499820.aspx#BKMK_Browser
本机应用程序到 Web API http://msdn.microsoft.com/en-us/library/azure/dn499820.aspx#BKMK_Native
Web 应用程序到 Web API http://msdn.microsoft.com/en-us/library/azure/dn499820.aspx#BKMK_Web
Web API 的守护进程或服务器应用程序 http://msdn.microsoft.com/en-us/library/azure/dn499820.aspx#BKMK_Server

我有两个问题:

  1. 我想了解下面的场景适合什么情况。
    我认为我需要使用 JWT 令牌,并且本机应用程序到 Web API 似乎是最接近的, 但我仍然需要 Asp.Net MVC 应用程序来提供客户端 Angular MVC 资源(html 模板、控制器和 Rest 服务)

  2. Which Azure Active Directory 代码示例 http://msdn.microsoft.com/en-us/library/azure/dn646737.aspx最接近我的情况如下:

我想创建一个多租户 Angularjs(使用 Asp.Net MVC 5 交付)和使用 Azure AD 保护的 Rest Web API 2。我想让租户选择他们的域名,例如firstTenant.com, smt.firstTenant.com 或拥有诸如firstTenant.MySaaS.com、secondTenant.MySaaS.com 之类的子域 或 MySaaS.com/firstTenant、MySaaS.com/secondTenant 或类似的域名命名方案。

我会使用某种 IoC 容器向我的 SaaS 应用程序添加自定义功能或类似的功能,以便为每个租户(GUI、业务逻辑和数据库)提供特定功能。 我将使用 Asp.Net MVC 应用程序为每个租户定制 SPA 资源(html 模板、.js 控制器、.js 服务、.css、图像等),并使用一些分区技术从数据库中检索租户和用户特定的内容从 Rest API 控制器调用。

谢谢, 拉德


我也面临同样的“我不知道”问题:) 但据我研究了从 SPA 应用程序到 Web api 的授权流程。 您仍然需要 webserver(mvc) 项目,该项目将提供重定向到身份提供商 (azure AD) 登录页面的功能,并且在 IP 回调上,您需要将 baerer 令牌注入到 Angular auth 服务,该服务将令牌发送到 api 或处理刷新令牌。

所以对我来说,我认为,Web Application 到 Web API,是正确的编程方向。

如果我错了请评论

目前我正在调查链接http://code.msdn.microsoft.com/windowsazure/MyCompany-demo-applications-eedab900 http://code.msdn.microsoft.com/windowsazure/MyCompany-demo-applications-eedab900

更新2:http://www.cloudidentity.com/blog/2014/04/22/AUTHENTICATION-PROTOCOLS-WEB-UX-AND-WEB-API/ http://www.cloudidentity.com/blog/2014/04/22/AUTHENTICATION-PROTOCOLS-WEB-UX-AND-WEB-API/

也许对我们会有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure AD 的 MVC/SPA 身份验证方案 的相关文章

随机推荐

  • Next.js 使用 SSR 的本地存储问题

    我有以下自定义挂钩 它将数据存储在本地存储中 import useCallback useEffect useState from react export const useLocalStorage key initialValue gt
  • 如何用不动点进行多项式拟合

    我一直在使用 numpy 使用最小二乘法 在 python 中进行一些拟合 我想知道是否有一种方法可以让它适应数据 同时强制它通过一些固定点 如果没有 python 中是否有另一个库 或我可以链接到的另一种语言 例如 c NOTE我知道可以
  • 使用 Excel VBA 在 Outlook 电子邮件中使用 HTML 设置背景图像

    我正在尝试使用 Excel VBA 创建一封有关澳大利亚儿童癌症研究所的电子邮件 并带有背景图像 CCIALittleGirl jpg 然后 我希望在其上方有一个文本或文本框 最好是带有白色粗体文本 我可以在运行时填充这些文本 我可以在电子
  • 如何跟踪访客从哪里来到我的网站 php

    我想跟踪用户访问我的网站的网站 URL 他来自 i el Google GMail Facebook 等 I tried SERVER HTTP REFERER 但当用户从任何外部站点单击我的站点链接时 它不包含任何内容 但当我访问我的站点
  • 在散景图中隐藏图例

    LS 散景图会自动生成图例 如何隐藏 根本不显示 散景图中的图例 我试过 legend none 但没有成功 谢谢 如果我能稍微扩展一下 legend False是使散景图例不可见的正确方法 但它在绘图本身的创建中使用 而不是作为绘图对象的
  • Hibernate版本的jars,maven,应该放在一起吗?

    我很难理解哪些 jar 版本应该与 hibernate 一起使用 我有一组可以一起工作的 hibernate 版本 Maven 东西 但我不知道为什么 我怎样才能知道哪些版本与其他版本一起工作 我也想升级我的休眠 但我不知道要放入什么版本号
  • 将字符串拆分为单词和标点符号,而不使用任何导入

    我见过与我的问题类似的问题 但它们都使用了正则表达式 我想做的是接受诸如 哇 这真的很有帮助 之类的输入 然后返回到 哇 这真的很有帮助 所以我想将标点符号从单词中分离出来 我已经尝试过这个 但它根本不起作用 sentence input
  • 将 ArgIterator 编组到 va_list

    所以 我想到了尝试 p invoke C 函数va list 我知道如何 p 调用经典的可变参数函数 使用 arglist 在我看来va list就像一个ArgIterator 我认为可以将其传递给该方法 DllImport msvcrt
  • 基于导航历史而不是路线路径的角度面包屑

    有没有办法实现基于导航历史记录的面包屑而不是基于正常路线路径的面包屑 例子 路线 主页 HChild1 HChild1 1 首页 HChild2 HChild2 1 如果用户从主页导航到 HChild2 1 面包屑应该是 首页 HChild
  • 将 WordPress 保持在版本控制中 - 主题的单独存储库

    我的 WordPress 项目位于 Git 下 并将 WordPress 作为子模块 我想将主题开发保留在单独的子模块中 但在当前设置内 将主题设置为子模块时遇到一些困难 这是我的文件系统 git master repo index php
  • Node.js 中的 HTTPS 代理服务器

    我正在开发一个node js代理服务器应用程序 我希望它支持HTTP and HTTPS SSL 协议 作为服务器 我目前正在使用node http proxy https github com nodejitsu node http pr
  • Sinatra 请求对象

    我可能在这里遗漏了一些非常明显的东西 但我似乎无法找到答案 或者自己解决它 在西纳特拉 他们有一个self get方法 捕获块 当调用块时 您可以使用request里面有变量 这怎么可能 Sinatra module Sinatra cla
  • 计算指向 CLLocation 的罗盘航向 - 适用于 iOS 的半正弦函数

    我了解如何获取 2 个 CLLocation 之间的距离 我需要确定从 CLLocation 到另一个 CLLocation 的广义罗盘方位 N NE E 等 在我实现使用半正矢公式推导方位之前 是否有一个通用的开源库或代码片段 您发现可以
  • 如何在 Intellij Idea 12 中重命名/移动项目?

    就像声明的那样here http link sheidaei com mozcw人们可以更改项目的名称 但是 它仅更改项目名称 不会更改文件夹结构 例如 如果您的项目名为sample1并且位于 user1 development IdeaP
  • 在 Ruby 中构建字符串时,为什么铲运算符 (<<) 优于加等于 (+=)?

    我正在通过 Ruby Koans 进行工作 The test the shovel operator modifies the original string公案中about strings rb包括以下评论 Ruby 程序员倾向于使用铲子
  • Galaxy Tab 和 Motorola XOOM 的绘图和布局

    我正在 Galaxy Tab 和 Motorola XOOM 模拟器皮肤上测试我的应用程序 我不明白为什么从错误的文件夹中获取可绘制对象 我有drawable xhdpi 文件夹 我在其中存储大尺寸图片 但是 Tab 从drawable h
  • socket.io 广播功能 & Redis pub/sub 架构

    如果有人能帮助我解决一个小疑问 我将不胜感激 使用socket io广播功能和在Redis上使用pub sub设计架构有什么区别 例如 在另一个示例中 node js 服务器正在侦听 socket io 针对 键 模型 todo 和值 数据
  • 如何在书架中取出整数钥匙?

    我想在架子上存储一个整数密钥 但是当我尝试将整数密钥存储在搁置中时 它给了我一个错误 Traceback most recent call last File write py line 12 in data id Id id Name n
  • 如何使用QLPreviewPanel?

    我该如何使用QLPreviewPanel 我知道它以前不是公共 API 但在 10 6 中已经有了 如何使用它在标准 QuickLook 面板中显示文件预览 查看快速查看下载器 http developer apple com librar
  • Azure AD 的 MVC/SPA 身份验证方案

    以下是 Azure AD 支持的应用程序类型和场景 Web 浏览器到 Web 应用程序 http msdn microsoft com en us library azure dn499820 aspx BKMK Browser 本机应用程