问题标签 [bearer-token]
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.
asp.net-mvc - Azure Active Directory 身份验证 - 在 MVC 中同时使用 OpenId Connect 和承载身份验证
我创建了一个使用带有 OpenId 的 Azure Active Directory 身份验证的 MVC 应用程序。这对最终用户很有用,但我想向站点添加一个 webjob 来调用它自己的端点(用户将使用相同的 http post 方法)。我发现这个示例https://github.com/AzureADSamples/Daemon-DotNet允许服务器应用程序调用 webapi 端点。
我的授权配置类如下所示:
我的网络作业控制台应用程序的请求如下所示(我已经替换了不记名密钥和主机):
来自服务器的响应如下所示(替换了主机、密钥、租户 ID,并截断了位置值):
任何想法为什么服务器响应登录位置?当用户尝试访问经过身份验证的端点时,这显然很有效,但不适用于我的控制台应用程序。
提前感谢您的帮助。请让我知道是否有任何其他信息有用。
c# - 使用 c# 生成不记名令牌
我有一个网络应用程序。我的要求是我需要在每次登录时生成 oauth2 不记名令牌。目前我们正在使用thinktecture生成token,但是这个过程每次生成token需要将近7秒。有什么方法可以在不使用 thinktecture 的情况下生成令牌?
c# - 如何在用户注册期间生成 OWIN 不记名令牌
我已经使用 OWIN 和不记名令牌实现了身份验证,并且当用户尝试登录时它工作正常。所以我转到特殊的 \Token url 并提供用户名/密码并获取此令牌作为响应。但我也有注册用户功能,理想情况下,我希望在注册用户后立即获得此令牌。我可以在Web服务器内部访问\Token,或者在客户端注册后执行\Token,但我希望有一个解决方案可以让我做类似的事情
有可能做这样的事情吗?
asp.net-mvc-5 - 如何让 web Api 2.0 使用 windows auth 创建不记名令牌
我要求我的 MVC 应用程序使用混合身份验证,这意味着 Windows 身份验证和基本身份验证。我以前做过,但没有使用新的身份模型和 Web API 2.0。Web API 托管在同一个域上。
我有基本的身份验证与发布承载令牌的 Web API 一起使用。我正在为如何让 Windows 身份验证工作而苦苦挣扎。如果可能的话,无论身份验证如何,我都希望使用相同的客户端代码,因此任何 ajax 调用都只会发送颁发的 Bearer 令牌。
关于在使用 Windows 身份验证时创建 Bearer 令牌的最佳方法有什么建议吗?
c# - OAuth Bearer Access Token 滑动过期
假设我们使用 OAuth Bearer 令牌来保护我们的 API。有一个带有 OWIN 中间件的 NuGet 包可以为我们做这件事:https ://www.nuget.org/packages/Microsoft.Owin.Security.OAuth 。
Everethig 看起来很棒,直到提出有关访问令牌过期的问题- 我们不想强制使用一遍又一遍地重新登录。据我了解,有以下三种基本方法:
- 使 Access Token 过期时间非常长(例如 1 个月)
- 使用 OAuth Refresh Tokens 会给 Authentication Server 和用户应用程序代码增加很多困难(在以下文章http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-中进行了描述) asp-net-web-api-2-owin/ )
我很好奇是否有可能创建需要即将过期的访问令牌的端点,并只使用新的访问令牌来模拟 OAuth 访问令牌的滑动过期类型?
asp.net-mvc - Web API 安全(身份验证)
背景:
我已经实现了一个 Web-API (.NET),现在我需要做最重要的事情,保护它。
当我调查这个主题时,我知道常用的方式是承载令牌。
现在我们来解决我的问题。
我的问题
在一边:
我看到的每一篇文章(解释了通过 .NET 实现它的概念和方法)都从一个具有 Web API 模板的项目开始,该模板包含 MVC 和 Web API,并在身份验证字段中从个人/组织/Windows 中选择一个选项。
另一方面:
我不需要 MVC 项目,我只需要 Web API(没有任何 GUI),我选择空项目并选中 Web API 复选框的原因,这样我就无法选择身份验证类型,我被迫从 no验证。
问题:
1.我一定要使用MVC来获得认证吗?如果不是,我怎么能从纯 Web API 项目中做到这一点?
2.也许我会从那个 Web API 模板创建一个身份验证服务器(只生成令牌)(可以选择身份验证类型)?(并在真正的 Web API 上使用令牌)
3.在不同的项目和不同的服务器上实现认证服务器有什么好处?(Kerberos 风格)
PS我想使用开箱即用的解决方案,因为安全方面是最重要的(在我看来)并且应该完美无缺。
c# - Authorization Bearer Token - 获取身份信息
当用户使用他们的授权承载令牌访问我们的其他资源时,我们是否能够从后端 c# 库中获取他的身份信息,而无需再次访问我们的数据库?我们在使用声明等制作令牌时建立了身份。我知道用户名在那里,但我想要我们添加的其他一些项目。
security - OAuth2 令牌验证和机密客户端
我对 OAuth2 和验证已分配令牌的客户端有疑问。
规范说,对于机密客户端,客户端在请求令牌等时必须进行身份验证,例如使用基本身份验证标头。这意味着我们可以验证客户端是否已注册并且可以授予访问令牌。令牌请求的标头可能如下所示:
该规范还说,一旦分配了令牌,客户端就可以通过在 auth 标头中传递令牌来使用令牌来请求信息,如下所示:
这很好,但是假设我们有一个或多个客户端应用程序(我们称它们为 App1 和 App2),以及我们已分别通过 Token1 和 Token2 授予它们访问权限的服务器,我们如何确定包含承载的请求在 auth 标头中发送的令牌来自我们分配给它的客户端应用程序。
App2 不能(以某种方式)获得给予 App1 的令牌(无论是恶意还是其他方式),并通过在 auth 标头而不是它自己的令牌中传递它来使用它来访问资源吗?
我们是否应该(甚至有可能)在我们向资源发出的请求中发送两个 auth 标头,一个带有我们的不记名令牌,一个带有我们的客户端凭据,以便服务可以验证令牌来自正确的客户端?
rest - 在 GET URL 中指定 OAuth 令牌
我的 REST 服务使用 OAuth 2.0 身份验证。我想使用浏览器(不使用客户端)测试一些 GET URL。我可以在 URL 中传递不记名令牌吗?网址:www.example.com/employee/employeeId
c# - 在多个 api 网站上使用授权令牌
我创建了一个安全的 Web API 2 网站。我已经使用 oAuth2 来验证请求并且它可以工作。我得到了一个授权令牌(持有者),我可以用它来调用该网站的数据。让我们称之为身份验证网站
但是...我需要创建多个 API 网站。是否可以在我获得授权令牌的 authenticationWebsite 上对自己进行身份验证,然后使用该令牌从我的其他 api 网站调用数据?
我尝试了一个简单的示例并创建了另一个网站 (mvc),它从 authenticationWebsite 获取身份验证令牌,但是当我尝试从新网站获取数据时(从具有授权属性的控制器,我得到未授权错误。
我希望这个问题很清楚。