问题标签 [api-authorization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
127 浏览

php - 使用 PHP Oauth 类创建 API 身份验证

我正在尝试为使用 PHP 创建的 API 设置 API 身份验证。我的网站(客户端)是使用 React 创建的。我一直在研究,但找不到任何可以解释我需要知道的东西。我使用的主要资源之一是 PHP 文档:

https://www.php.net/manual/en/book.oauth.php

我正在努力解决的是令牌的生成,我在创建令牌时使用了哪些信息?如何将我的 API 设置为protected resource?

据我了解oauth,客户端将向服务器发送请求以获取请求令牌。一旦获得请求令牌,在回调中,它将access token使用request token. 然后access token将用于请求访问 API。听起来对吗?

任何帮助将不胜感激。

0 投票
0 回答
469 浏览

angular - 使用 Angular 从 web api 获取与登录用户相关的数据

我无法找到安全的方法来使用 ASP.net 核心 web api 和 Angular (PWA) 仅获取链接到经过身份验证的用户的数据。

我在 Angular 中尝试
了 1. MSAL,并使用登录 ID 调用了一个 API 函数,但基于 Java 的客户端代码似乎不安全,或者我可能错了。

http.get(' https://api.abc.edu/api/students/11223@abc.edu ) -->11223 是家长登录。

  1. 我在 web api 中尝试了替代方法来获取登录 ID,然后调用数据库来获取数据。

    var userId = _httpContextAccessor.HttpContext.User.FindFirst("preferred_username").Value;

以角度方式:

以 webapi 方式:

两者都工作得很好,但是为了安全,在我的上述解决方案中,是否应该首先考虑基于 webapi 的解决方案而不是任何基于客户端的解决方案,例如 Angular?黑客、其他父母或其他银行客户(如果我的 PWA 是银行应用程序)在获得身份验证 ID 和身份验证令牌后,是否可以在 Angular 或邮递员中使用其他人的用户 ID 调用 API?

0 投票
0 回答
843 浏览

vba - 使用 Cookie 身份验证和 CSRF 令牌连接到 Web API

*最后更新

我需要有关使用 API 验证到https://connect.garmin.com/signin/的帮助。我正在使用 VBA 和 Power Query 自动从我的 Garmin 帐户收集锻炼数据。据我所知,该网站使用基于 cookie 的身份验证和 CSRF 令牌。

我正在 Postman 中测试我的 API 调用,在 VBA 中构建身份验证请求,并在 Power Query 中使用经过身份验证的 cookie 执行数据收集。(我会为整个项目使用 Power Query,但它无法返回响应标头/经过身份验证的 cookie)

我试图通过在发出身份验证 POST 请求之前从响应标头中收集 cookie 和从 HTML 正文中收集 CSRF 令牌来复制浏览器操作,但我没有取得多大成功。当我尝试使用此方法进行身份验证时,响应状态为 200,响应正文是带有“出现问题”消息的登录页面。

我试图按照这个问题的 OmegaStripes 回答来处理 cookie, 如何在 VBA 中设置和获取 JSESSIONID cookie

在 Postman 或 VBA 中是否有处理 CSRF 令牌的特殊方法MSXML2.ServerXMLHTTP?我对 cookie 身份验证有什么根本不了解的地方吗?

如果您需要我提供任何进一步的信息,请告诉我。任何帮助是极大的赞赏!

我修改后的 OmegaStripes 代码如下,


编辑

我改变了创建 Internet Explorer 实例和自动化登录过程的方法。不理想,但我能够成功登录。我现在的问题是我无法检索使用维护登录会话所需的 HttpOnly Cookie,

getCookie = objIE.document.Cookie

我尝试了另一个 OmegaStripes 答案(巧合地)从 Internet Explorer 中检索所有 cookie,但没有成功。

任何有关如何使用 MSXML2.ServerXMLHTTP、IE 实例或任何其他方法的建议将不胜感激!

0 投票
2 回答
3676 浏览

asp.net - ASP Core 3.0 API 令牌自定义令牌身份验证(不是 jwt!)

我们有一个 ASP CORE 3 API 项目,我们需要使用 API 令牌来保护它。这些 API 令牌将从数据库中提供和加载,但作为概念证明,我们将硬编码以进行测试。我们所看到的所有令牌授权都是指 JWT。我们不想使用 JWT。我们只需提供允许访问我们的 API 的 API 密钥 - 然后用户可以通过在标头中传递令牌来调用 API 方法,例如 X-CUSTOM-TOKEN:abcdefg。

如何修改 startup.cs 和管道,以便在每次请求时检查此 X-CUSTOM-TOKEN 标头?一个正确方向的简单点会很棒。

编辑:好的,这看起来是一个很好的开始!非常感谢!

您的示例似乎表明用户 API 令牌是用户令牌。我们的要求是我们需要一个 API Key 来使用 API,然后还需要一个 User Token 来调用某些控制器。

示例:myapi.com/Auth/SSO(通过 API Token 和 User Information 登录,返回 User information + User Token)

myapi.com/Schedule/Create(需要 API 令牌标头和带有用户令牌的标头)

你能建议如何修改你的代码来支持这个吗?

0 投票
0 回答
161 浏览

api-authorization - Seo 面板 Google API 验证失败

我已经在不同的网站上多次设置了 Seo Panel ( https://www.seopanel.org/ ) 并且它总是可以正常工作。

我最近迁移到了一个新服务器,在设置 Seo Panel 时,API 验证连接失败并且没有收集数据。“验证连接” > 失败是即时的,这让我相信服务器的 IP 在某处被阻止。

有人对此有任何想法吗?

谢谢亚历克

0 投票
1 回答
767 浏览

c# - GoogleJsonWebSignature ValidateAsync JWT 无效

请帮助我了解 JWT 无效的谷歌授权。我正在使用以下参考进行授权:授权后,一两个小时后它仍然可以正常工作,但是随着时间的流逝,我不知道确切多少天后,它无法正常工作并抛出异常,详细信息为“JWT 无效”。我正在使用参考:Google.Apis.Auth、Google.Apis.Auth.OAuth2、oogle.Apis.Auth.OAuth2.Flows、Google.Apis.Auth.OAuth2.Responses、Google.Apis.Gmail.v1、Google.Apis .Util.Store。

那是我的代码:

感谢大家!

0 投票
0 回答
367 浏览

javascript - 在 Google Apps 脚本中为 API 调用创建“标头”对象

我希望将 Thinkific API 中的数据提取到 Google 表格中,但不幸的是,我无法在 Apps Script 中创建有效的 API 请求。

我已经在 Postman 中构建了请求,并试图在 Apps Script 中重用 javascript 代码,但得到“未定义标头”的错误。Apps 脚本似乎不存在用于创建标头对象的函数 Headers()。有什么方法可以手动创建标头对象,然后附加 API 密钥以及子域进行身份验证?

非常感谢!

0 投票
1 回答
397 浏览

c# - Azure AD 与 Web API 的不记名令牌身份验证无法正常工作,并引发错误,因为“此请求的授权已被拒绝”。

路上的菜鸟问题。

我使用 Git 站点 [https://github.com/Azure-Samples/ms-identity-aspnet-webapi-onbehalfof/tree/master/TodoListService] 中的示例为 Web APi 开发了 Azure Ad 身份验证Azure 广告身份验证问题。请在下面找到代码。

来自 Controller1 类的操作方法。

我的 startup.auth.cs 文件

WebApiConfig.cs

每当我通过传递令牌从医院控制器调用操作方法/api方法调用时,都会收到错误为“此请求的授权已被拒绝”。

有人可以在这里帮助我吗?

如果需要任何附加信息,请添加任何评论?

提前致谢。

0 投票
1 回答
1363 浏览

c# - 自定义授权属性角色不起作用 web api 身份验证

我在使用 web api azure 广告身份验证时遇到问题

我有一个像下面这样的控制器,它给出了正确的响应,但是一个具有自定义授权角色的控制器抛出错误为“身份验证已用于此请求”。

Getbeds 方法因“已请求授权”而引发错误。

请也找到我自定义属性类

有人可以帮忙吗?

0 投票
1 回答
47 浏览

microservices - 微服务架构中的Server-2-server授权

我很清楚微服务架构中的用户授权(用于处理身份验证、SSO、授权微服务等的 API 网关)。现在我正在考虑微服务之间的授权请求。还有一个问题——如果我没有用户,我有哪些选择?

例如 - 分析服务,它从计费中请求数据并构建复杂的报告。没有用户,但我需要从分析服务向计费请求授权吗?

我知道可以有无穷无尽的令牌,但我认为这不是一个好主意。服务之间的授权请求还有哪些选择?