在 Servicestack 登录中禁用获取关键字

2024-05-19

当前在auth/login中,您可以使用任何Get。如何限制某些内置服务的 GET 关键字。我们有一个渗透测试结果表明,不应通过 Get 关键字允许身份验证/登录,而只能通过 put 或 post 进行。


如果您指的是 HTTP GET 请求,您可以注册一个全局请求过滤器 http://docs.servicestack.net/request-and-response-filters使短路AuthenticateHTTP GET 请求:

GlobalRequestFilters.Add((req, res, requestDto) => {
    if (requestDto is Authenticate auth && req.Verb == HttpMethods.Get)
    {
        res.StatusCode = (int)HttpStatusCode.MethodNotAllowed;
        res.EndRequest();
    }
});

我还禁用了 GETAuthenticate默认请求(对于非 OAuth 提供商)这次提交 https://github.com/ServiceStack/ServiceStack/commit/64d65b5b8a0c680d9f4a083b3186a7a5b6d1521a从 v5.4.1+ 开始可在 MyGet 上找到 https://docs.servicestack.net/myget,可以通过以下方式重新启用:

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

在 Servicestack 登录中禁用获取关键字 的相关文章

随机推荐

  • 使用 mongoose 通过 React 应用程序将图像上传到 mongodb 数据库

    我正在为找到的对象创建一个反应应用程序 我想允许用户上传这些对象的照片 我尝试使用 axios 通过 post 请求将图像发送到猫鼬服务器 但它不起作用 这就是我如何将图像存储在带有预览的 React 组件中 handleImage eve
  • 获取变量的名称作为输入并使用该名称更改变量

    我从脚本用户那里获取变量的名称作为第一个参数 并将该变量的值回显到控制台 bin bash variablename 1 echo The value of variablename is variablename 这太棒了 我无法开始工作
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • 如何使用 Google Contact API v3 和 OAuth v2 UserCredentials 创建 ContactsService

    我的应用程序使用 Google API Calendar V3 和 OAuth 效果非常好 它会在第一时间征求用户的同意 使用日历服务可以轻松创建 修改和删除日历事件 到目前为止 一切都很好 现在我想请求用户允许添加和修改联系人数据 通过添
  • sklearn 估计器管道的参数无效

    我正在实现 O Reilly 书中的一个示例 Python 机器学习简介 使用 Python 2 7 和 sklearn 0 16 我正在使用的代码 pipe make pipeline TfidfVectorizer LogisticRe
  • AES 加密 Java/plsql

    我需要在Java和plsql DBMS CRYPTO for Oracle 10g 上实现相同的加密 解密应用程序 两种实现都工作正常 但这里的问题是我对相同纯文本的加密得到了不同的输出 下面是用于加密 解密过程的代码 Java 和 PLS
  • Java程序中的数组奇怪的行为[重复]

    这个问题在这里已经有答案了 我遇到了这个 Java 程序及其以意想不到的方式运行 以下程序计算 int 数组中元素对之间的差异 import java util public class SetTest public static void
  • 在Windows上安装Java 11 OpenJDK(系统路径问题)

    Java 11 最近发布了 众所周知 这个版本没有安装文件 当然 要在没有安装程序的情况下安装 Java 我将系统设置 PATH 和 JAVA HOME 设置为解压缩 Java 11 的文件夹的地址 根据对类似问题的已接受回复建议 唯一的事
  • JPEG 中的颜色配置文件检测

    我希望能够检测 JPEG 中是否存在颜色配置文件 需要明确的是 我对实际进行颜色校正或用它们做任何其他事情不感兴趣 我做了一些调查 但找不到任何明确的信息来源 到目前为止我所知道的是 里面有一个颜色配置信息XMP块 XMP 块位于0xFFE
  • 在 mongoid 中通过 '<<' 分配嵌入式项目时触发 after_save 吗?

    我想知道是否有一种方法可以在 Mongoid 映射器中的嵌入对象上触发 after save 回调 Example i Image new file gt file user images lt lt i gt i after save s
  • 将IP保存到数据库中

    当用户登录时 我想将他们的 IP 保存在数据库中 我该怎么做呢 MySQL 字段最适合使用哪种类型 获取IP的PHP代码是什么样的 我正在考虑将其用作登录 会话内容的额外安全功能 我正在考虑使用用户现在拥有的 IP 检查用户从数据库登录的
  • 在 Vim 分割窗口中打开函数定义?

    我知道你可以使用ctrl 在 Vim 中跳转到定义 但是有没有办法让它在分割窗口而不是当前缓冲区中打开 我知道我可以打开一个新的分割窗口 然后使用ctrl 但是有没有更快的方法呢
  • 将 JSON 发布到 Python CGI

    我已经安装了 Apache2 并且 Python 可以工作 但我有一个问题 我有两页 一个是 Python 页面 另一个是带有 JQuery 的 Html 页面 有人可以告诉我如何让我的 ajax 帖子正常工作吗
  • 无法在自定义 AOSP 上安装 Google Play 中的某些应用程序:项目不可用。理由:9

    我在尝试从 Google Play 安装某些应用程序时收到以下错误 LibraryUtils isAvailable not available restriction 9 DocUtils getAvailabilityRestricti
  • 如何强制折断不可折断的字符串?

    我有一个根据数据库中包含的数据生成的 HTML 页面 数据库有时包含浏览器无法分解的长字符串 因为这些字符串不包含可分解的字符 空格 点 逗号等 有没有办法使用 html css 甚至 javascript 来解决这个问题 看到这个link
  • Entity Framework 7 和 SQLite 表未创建

    我已经尝试了一段时间来弄清楚如何使用单个 DBContext 以 Code First 方式创建多个表 但没有任何运气 我确信这只是我对框架的不熟悉 但我不确定我错过了什么 这是一个包含实体和 DBContext 的简单示例 Table M
  • 为什么 Python 在导入脚本时只保存脚本的字节码?

    既然执行Python字节码会比运行原始源代码更快 因为Python不需要重新编译 为什么Python在导入脚本时只保存编译后的字节码呢 为每个执行的脚本保存 pyc 文件不是更好吗 无论如何 Python 解释器的启动时间都需要时间 即使您
  • 最后成功的工件列表

    我想在 hudson 中创建 jar 文件的存档 目前它没有列出构建创建的 jar 文件 是否有一个插件 或者是否需要设置 如果需要 在哪里 Here is what I would like it to look like source
  • 开始 Java EE

    我对 Java 了解一些 但对 Enterprise Java 完全陌生 我正在尝试使用 NetBeans 6 1 和 GlassFish 应用服务器 请指导我一些资源 这些资源实际上告诉我什么是 java 企业应用程序 它们与普通 jav
  • 在 Servicestack 登录中禁用获取关键字

    当前在auth login中 您可以使用任何Get 如何限制某些内置服务的 GET 关键字 我们有一个渗透测试结果表明 不应通过 Get 关键字允许身份验证 登录 而只能通过 put 或 post 进行 如果您指的是 HTTP GET 请求