使用 OAuth 和单页应用程序实施 Web API

2024-03-03

我们正在开发一个 API 和一个单页应用程序(这是它未来更可能的使用者之一)。

我们已经开始使用 Web API,并且基本上实现了一个与 John Papa 在他的pluralsight 课程中制作的系统非常相似的系统,名为“使用 HTML5、ASP.NET Web API、Knockout 和 jQuery 构建单页应用程序 (SPA)”。

我们现在需要在此应用程序中实现身份验证和用户管理,并且需要找到一种简单的方法来在尽可能短的时间内实现这一点,因为我们很匆忙。

我们意识到 ASP.NET 更新中包含的 SPA 模板具有与我们的需求非常相似的功能,但我们想知道在现有代码中实现类似功能的最佳方法是什么。

正如您可能认为的那样,我们是新手开发人员。

是否可以使用包管理器安装一些包,瞧,简单的成员身份和 OAuth 身份验证选项随时可用?

我们的用例是,我们需要根据角色保护 API 上的一些资源,并且应该能够使用用户名和密码登录,而且还可以使用 facebook、google 或 twitter 帐户登录。


在这里发现了有关该主题的有趣演讲:https://vimeo.com/43603474 https://vimeo.com/43603474名为 Dominick Baier - 保护 ASP.NET Web API。

Synopsis:微软用于编写 RESTful Web 服务和 Web API 的新框架被恰当地称为 ASP.NET Web API。顾名思义,该技术是 ASP.NET 的一部分,也继承了其众所周知的安全架构。但除此之外,它还支持许多新的扩展点和 IIS 之外的灵活托管基础结构。在 Web API 中进行身份验证和授权的方法有很多种 - 从 Windows 到用户名和密码,再到基于令牌的身份验证以及介于两者之间的一切。本演讲探讨了各种选项,并特别关注声明、SAML、OAuth2、简单 Web 令牌和委托等技术。

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

使用 OAuth 和单页应用程序实施 Web API 的相关文章

随机推荐

  • Mac 终端重新启动后无法运行大多数命令

    我正在使用Mac 我有一个定制终端zsh 有一段时间就好了 但在我重新启动计算机后 它的行为开始有所不同 终端停止运行命令 例如rake or rails 我已经使用rails创建了应用程序 但是使用了类似的rails命令rails v现在
  • 前面的字长

    我必须创建一个带有单个参数的函数word并返回前面单词的平均长度 以字符为单位 word在文字中 如果单词恰好是文本中出现的第一个单词 则该出现的前一个单词的长度应为零 例如 gt gt gt average length the 4 4
  • 新创建的创作资源未显示在 Luis 门户中

    我在 Luis Portal 中添加了创作资源并导入了一些应用程序 添加的创作资源最初出现在 Azure 门户和 Luis 门户中 然后 资源突然在 Luis 门户中消失 现在我无法使用 应用程序 页面中的下拉菜单选择资源 因为它不再显示在
  • BrowserslistError:未知的 Android 版本 67

    我使用创建了一个角度库angular 8 and CLI 8 我正在尝试构建库 但收到错误 ng build
  • ruby 中最短的 hex2bin?

    在 ruby 中将十六进制字符串转换为二进制字符串的最短方法是什么 例如 class def hex2bin end end AB12345678 hex2bin class String def hex2bin scan map x x
  • JFileChooser 显示在全屏 JFrame 之外

    import java awt DisplayMode import java awt GraphicsDevice import java awt GraphicsEnvironment import java awt event Act
  • 如何更改文本块背景?

    这是我的xaml structure
  • 如何防止.exe类型文件在网站上传?

    假设我们有一个 example exe 文件 我们首先将该文件放入一个新文件夹中 然后使用任何压缩软件压缩该文件夹 我们可以阻止压缩文件夹在网站中上传吗 我们怎样才能做到这一点 你不能prevent它 因为在提交之前你无法知道浏览器将要提交
  • 为什么我获得了未分配内存的读写权限?

    我对下面代码片段的行为感到困惑 我已经声明了一个 char 指针并将其指向分配大小 1 sizeof char 的内存位置 char src src char malloc 1 sizeof char strcpy src Copy tex
  • 对 Rhino Mocks 中的方法调用进行计数

    所以 我想用比 An Ounce 或 At Least Once 更具体的方法来计算 Rhino Mocks 中的方法调用 有什么机制可以做到这一点吗 诀窍是使用 Repeat Times n 其中 n 是次数 令人惊讶的是 即使该方法的调
  • 如何在活动之前增加 Azure 数据工厂中的参数?

    我正在访问一个 RESTful API 该 API 使用 HTTP 连接器以 50 组为一组进行分页 REST 连接器似乎不支持客户端证书 因此我无法在其中使用分页 我有一个名为的管道变量SkipIndex默认为 0 在 Until 循环内
  • 行为 3 中如何在上下文之间进行通信?

    我无法再在版本 3 中使用 getMainContext 和 getSubcontext alias 版本 3 中上下文之间的通信方式是什么 上下文特征是唯一的方式吗 behat yml default suites guest featu
  • Android 中的电话选择器 api

    我正在尝试使用电话选择器 API 获取电话号码 但得到空响应 这是我的代码 GoogleApiClient googleApiClient new GoogleApiClient Builder this addApi Auth CREDE
  • Schema.org 中的产品列表

    我读了这个谷歌文档 https developers google com search docs data types products 它说我们不使用列表中的产品 那么对于产品列表 具有多页的类似产品类别 如 鞋子 建议使用哪种模式 我
  • 静态和粘性固定标题转换故障

    我创建了一个基于滚动的粘性标题 但有两个问题 上下滚动时 背景有跳跃 我希望你 明白我的意思 有时两个标题 div 一起出现 我该如何解决这个问题 提前致谢 JSFiddle 演示 http jsfiddle net ezBXc CSS m
  • 在 swift 中使用 NSClassFromString 实例化嵌套类

    我有一个如下定义的嵌套类 objc class A objc class B 我需要实例化A B using NSClassFromString 我能够在简单的课程中做到这一点A但是当我附加到NSClassFromString参数 Bstr
  • 将 GitLab 与 TeamCity 集成

    从 GitLab 7 6 或更高版本开始 有一个新选项可以直接从 GitLab 项目使用 TeamCity 在设置中有这样的消息 Teamcity 中的构建配置必须使用构建格式编号 build vcs number 您还需要配置对所有 分支
  • Android:支持多屏

    我正在尝试在Android 中制作一个应用程序 我希望它应该能够在不同屏幕尺寸的多部手机上运行 所以我研究了支持开发者多屏 http developer android com guide practices screens support
  • symfony 中“无法设置验证器上的enable_annotations,因为注释支持被禁用”

    我刚刚创建了一个包 成功 当我准备通过控制台创建一个实体时 发生了这种情况 也使用clear cache 逻辑异常 验证器上的 enable annotations 不能设置为注释 支持被禁用 mi config yml 看起来像 fram
  • 使用 OAuth 和单页应用程序实施 Web API

    我们正在开发一个 API 和一个单页应用程序 这是它未来更可能的使用者之一 我们已经开始使用 Web API 并且基本上实现了一个与 John Papa 在他的pluralsight 课程中制作的系统非常相似的系统 名为 使用 HTML5