通过 Curl OpenId

2024-03-25

如何使用 Curl 进行基于 OpenId 的身份验证? 首先我能做到吗? 问候, 阿拉巴克什


我想你正在谈论curl命令行,而不是库。我没有尝试过,但是根据我对OpenID和curl的了解,应该是可以的。但是,还没有完全自动化。如果您想要真正轻松和通用,则必须“解析”身份提供商和内容提供商登录页面的内容。如果你知道你要去哪里并且不介意将你的服务和客户端耦合起来(没有仇恨),你可以首先向身份提供者进行身份验证,例如:

curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar  cookies \
       --data login=$mylogin \
       --data passwd=$mypasswd \
       https://identprovider.example.com/login

然后将您的 OpenID 发布给内容提供商:

curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar  cookies \
              --data openid="$myopenidurl" \
              http://contentprovider.example.com/login

这假设内容提供商已经被授权使用身份提供商。 然后获取您的内容:

curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar  cookies \
              http://contentprovider.example.com/interesting/content

请注意,这种方法并不安全,因为我在代码中对 POST uri 和字段进行了硬编码。为了解耦客户端和服务器,必须从响应中提取 uri 和字段名称。在 bash 脚本中,您可以使用sed例如。

我认为这应该可行,但如果不行,那么您必须真正遵循重定向并提取 URI 和表单,因为某些参数可以在重定向 URI 或隐藏表单字段中传递。

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

通过 Curl OpenId 的相关文章

  • iPhone RESTful Web 服务

    然而 甚至不确定标题是否正确 我想做的是使用标准 NSURLConnection 类来处理调用我的 web 服务的响应 我使用 POST 方法更新数据库 使用 GET 方法从数据库检索行 我遇到的问题是这两个操作可能同时发生 因此处理请求的
  • php、curl、标题和内容类型

    我在处理服务器返回的curl 和标头时遇到一些问题 1 my website com index php 上的 php 文件如下所示 修剪版本 my content
  • 在应用程序中注册API

    通过 django rest framework 我正在使用DefaultRouter 我想为多个应用程序提供 API 所以我的问题是我能否以 django 方式执行此操作 并将我的路由器注册放入每个应用程序 URLconf 中 并让它们显
  • 如何使用 jquery 在 ajax 调用中设置标头

    我需要从我自己的应用程序调用 Office 365 Rest API 当我在同一浏览器会话上复制并粘贴 url 时 我可以看到一些 XML 如果我将该 URL 粘贴到隐身窗口中 则会收到以下错误 The custom error modul
  • 从 QueryDSL 谓词对象中获取参数

    我使用带有 Spring REST 端点的 QueryDSL 谓词对象来检索和查询参数值 GetMapping subjectId students RolesAllowed Roles PLATFORM ADMIN Roles USER
  • 使用 Spring RestTemplate 时忽略 SSL 证书验证

    我正在使用 Spring RestTemplate 发出 HTTPS 请求 并且我想忽略 SSL 证书 这是我创建restTemplate请求的代码 TrustStrategy acceptingTrustStrategy X509Cert
  • 如何向最终用户隐藏 REST API Url?

    是否可以隐藏我通过 AJAX 用于填充页面数据的 REST URL 我不希望其他人从我的 REST API 获取和使用 但需要使用它在我的网站中显示内容 如何向最终用户隐藏我的 REST API URL 无法在 JavaScript 中向最
  • 当用户在springboot中调用注册休息API时如何获取oAuth2访问令牌?

    目前我正在研究 Springboot 安全性 这对我来说相当新 我跟着youtube视频教程 当我使用以下代码片段时 我成功获取了 oauth2 access token SpringBootApplication public class
  • Rails 身份验证插件推荐

    我想向我的 Rails 应用程序添加身份验证 我遇到了几个这样做的插件 acts as authenticated restful authentication Authlogic 等 我还没有看到一篇文章描述使用每种方法的差异 优点和缺点
  • 如何进行 REST 式更新?

    如果我有一个对象 请说Employee 我想提供两种不同的更新方式 更新绩效评级或更新联系信息 构建 API 的 REST 式方式是什么 我认为正确的方法是 POST 我担心的是 对于用户来说 首先获取对象的两个部分 绩效评级和联系信息 仅
  • HTTPS 和 SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA 正常

    我在用XAMPP http www apachefriends org为发展 最近我将 xampp 的安装从旧版本升级到 1 7 3 现在 当我卷曲启用 HTTPS 的网站时 出现以下异常 致命错误 未捕获异常 RequestCore Ex
  • 如何使用放心获取 Rest API 中的授权令牌?是否可以?

    目前使用 Postman 我必须向 API URL login 发送请求 并传递用户名和密码 作为回报 我得到令牌 如下所示 请求示例 login POST Body username admin password admin Return
  • 在golang中获取TTFB(第一个字节的时间)值

    我正在尝试获取 TTFB 值和 Connect 值 c exec Command curl w Connect time connect TTFB time starttransfer Total time time total o dev
  • 在 React Native 应用程序中哪里可以获取 EXPO DEBUG 值?

    当我尝试登录 expo 时出现此错误 exp Set EXPO DEBUG true in your env to view the stack trace 你知道我到底要在哪里设置值吗EXPO DEBUG EXPO DEBUG是一个环境变
  • 以 RESTful 方式增加资源计数器:PUT 与 POST

    我有一个带有计数器的资源 为了举例 我们将该资源称为profile 计数器是数量views对于该配置文件 Per the 休息维基 http rest blueoxen net cgi bin wiki pl HttpMethods PUT
  • 如何从 Android 调用 RESTful 方法?

    我尝试了两种不同的方法来从 Android 调用简单的 REST 方法 所述 REST 方法 适用于其他客户端 仅返回一个 int val 例如 17 以下两次尝试都是基于我在网上找到的代码 有一种是这样的 公共无效onFetchBtnCl
  • 当会话令牌无效时,我应该使用什么状态代码?

    创建 Web 服务 RESTful 时 当会话令牌无效时我应该使用什么状态代码 目前我公司的人给我发了一个404 未找到 但我认为这是不正确的 因为资源存在 也许我应该使用 401 Unauthorized 你怎么认为 您建议我在这种情况下
  • 在 Angular 中让多个调用等待同一个 Promise

    我在一个页面上有多个使用相同服务的控制器 为了举例 我们将服务称为 USER 第一次调用 USER getUser 时 它会发出 http 请求来获取有关用户的数据 调用完成后 它将数据存储在 USER data 中 如果再次调用 USER
  • 使用 Apache HTTPd 模块的 OAuth 2.0 身份验证

    是否可以使用 Apache HTTPd 服务器模块来实现 OAuth 2 0 或 1 0 我选择这条路线是因为每个请求都会首先到达 HTTPd 模块 因此我必须从那里进行身份验证 如果可能的话 请分享相关链接 我要补充一下尤金尼奥的答案mo
  • 在 RESTful Web 服务中实现注销

    我正在开发一个需要注销服务的移动应用程序 登录服务是通过数据库验证来完成的 现在我陷入了注销状态 退一步 您没有提供有关如何在应用程序中执行身份验证的详细信息 并且很难猜测您在做什么 但是 需要注意的是 在 REST 应用程序中 不能有会话

随机推荐

  • 如何使用 PowerShell 从“应用程序和服务日志”中读取分析性 Windows 事件?

    I use Get EventLog https learn microsoft com en us powershell module microsoft powershell management get eventlog读取事件 使用
  • 如何将十六进制字符串转换为无符号字符数组?

    例如 我有一个cstring E8 48 D8 FF FF 8B 0D 包括空格 需要转换为等效的 unsigned char 数组 0xE8 0x48 0xD8 0xFF 0xFF 0x8B 0x0D 什么是有效的方法来做到这一点 谢谢
  • 使用 tsfresh 仅选择一定数量的顶级特征

    如何使用 tsfresh 选择时间序列的前 n 个特征 我可以决定要提取的主要特征的数量吗 基于 Chaitra 的上述评论和这个答案 https stackoverflow com questions 62991201 tsfresh g
  • 应用程序在调试时不会崩溃,但在正常运行时会崩溃

    系统信息 Windows 10 技术预览版 内部版本 9926 Visual Studio 社区 2013尝试调试 美国电话电报公司 Lumia 635 Windows 10 技术预览版 适用于版本 9941 的手机 带有 Lumia Cy
  • GraphQL java以json格式发送自定义错误

    我正在一个 graphql 应用程序中工作 我必须以 json 格式发送自定义错误对象 消息 无论它是出现在 servlet 还是服务中 预期错误响应 errorCode 400 error goes here errorMessage m
  • 在Ruby中通过pid获取进程状态

    有没有办法在 Ruby 中根据 PID 获取进程的子进程状态 例如 在 Python 中 您可以执行 psutil Process pid status 我不知道有一种可移植的 ruby 方法来获取正在运行的进程的进程状态 你可以做Proc
  • 无法通过 SalesForce API (JSforce) 更新自定义日期字段

    我正在使用 Node js 应用程序中的 JSforce 库来更新机会对象上的自定义日期字段 但该字段并未更新 响应表明更新成功 并且对象上的 SystemModstamp 字段已更新 但该字段仍为空 这是我正在使用的 JSforce 调用
  • 应用程序未打开时,GCM 消息未发送?

    最近我在我的应用程序上实现了 GCM 我按照这个网站上的教程代码进行操作 http javapapers com android google cloud messaging gcm for android and push notific
  • 使用 Cloud Functions for Firebase 和 @google-cloud/storage 删除图像时出现问题

    我正在尝试在 Cloud Functions for Firebase 中创建一个脚本 该脚本将对数据库事件做出反应并删除其路径位于其中一个参数 fullPath 中的图像 这是我正在使用的代码 use strict const funct
  • 将 2D numpy 数组转换为 2D numpy 矩阵

    我有一个 python 代码 其中我必须将 2D 数组转换为 2D 矩阵 以便我可以使用它来计算逆 为此 我正在使用 numpy matrix array 但它不起作用 谁能告诉我如何将 2D 数组转换为 numpy 矩阵 该数组由所有浮点
  • 我开始使用诊断 CSS 样式表 例如http snipplr com view 6770 css diagnostics highlight deprecated html with css more http snipplr com vi
  • 将羊驼导入 React.js

    我正在尝试在 React 应用程序中使用羊驼形式 import React useEffect useRef from react import from jquery import as popper from popper js imp
  • TextView 中的行号、代码突出显示

    我正在为 Android 开发一个 IDE 它对于编辑短脚本 对文件进行快速调整可能很有用 目前我只使用一个简单的 EditText 但我想添加几个功能 例如 EditText 左侧的行编号和代码突出显示 有人对如何解决这个问题有任何建议吗
  • Laravel 4 - 容器类:共享函数和闭包逻辑

    我对这里讨论的问题有一个后续问题 Laravel 核心方法混乱 https stackoverflow com questions 15758936 laravel core method confusion 17295616 172956
  • 如何处理 SQL 中的引号 ' [重复]

    这个问题在这里已经有答案了 我有一个数据库 其中包含 John Doe 等姓名 不幸的是 其中一些姓名包含引号 例如 Keiran O Keefe 现在 当我尝试搜索此类名称时 如下所示 SELECT FROM PEOPLE WHERE S
  • 替换 WPF 入口点

    WPF定义了自己的Main 方法 我应该如何用我自己的替换它Main 通常 打开 WPF 的方法MainWindow 例如通过命令行参数添加非 WPF 脚本模式 一些示例描述了将 App xaml 的构建操作从ApplicationDefi
  • BNF、EBNF、ABNF:选择哪一个?

    我想提出一种语言语法 我读过一些关于这三个人的内容 但确实看不出有什么是一个人能做而另一个人做不到的 有什么理由使用其中一种而不是另一种吗 或者这只是一个偏好问题 你必须考虑一下EBNF and ABNF作为扩展 可以帮助您在开发语法时更加
  • 如何将没有文件名的 multipart/form-data 文件绑定到 ASP.NET Core 中的 IFormFile

    在 ASP NET Core 3 1 中接受 multipart form data 参数的简单控制器操作中 using System ComponentModel DataAnnotations using Microsoft AspNe
  • FragmentActivity 无法通过 ActivityInstrumentationTestCase2 进行测试

    我在针对利用最近发布的 Fragment 支持 API 的 Android 应用程序执行 Android 单元测试时遇到问题 当针对 FragmentActivity 运行测试时 日志中会显示以下错误 并且类无法加载 当针对相同的类 但派生
  • 通过 Curl OpenId

    如何使用 Curl 进行基于 OpenId 的身份验证 首先我能做到吗 问候 阿拉巴克什 我想你正在谈论curl命令行 而不是库 我没有尝试过 但是根据我对OpenID和curl的了解 应该是可以的 但是 还没有完全自动化 如果您想要真正轻