首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

适用于第1方本机移动应用程序的OAuth 2 OIDC授权类型

是授权码模式(Authorization Code Grant)。

授权码模式是OAuth 2.0中最常用的授权类型之一,适用于第1方本机移动应用程序。它通过将用户重定向到授权服务器,然后用户在授权服务器上进行身份验证并授权应用程序访问其受保护的资源。以下是授权码模式的一些关键概念和步骤:

概念:

  • 授权服务器(Authorization Server):负责验证用户身份并颁发访问令牌的服务器。
  • 资源服务器(Resource Server):存储受保护资源的服务器。
  • 客户端(Client):第1方本机移动应用程序,需要访问用户的受保护资源。

步骤:

  1. 客户端向授权服务器发起授权请求,包括应用程序的标识和重定向URI。
  2. 用户在授权服务器上进行身份验证。
  3. 授权服务器验证用户身份后,向用户显示授权请求的详细信息,并询问用户是否授权客户端访问其受保护的资源。
  4. 用户同意授权后,授权服务器将重定向用户到客户端预先注册的重定向URI,并附带一个授权码。
  5. 客户端收到授权码后,使用该授权码向授权服务器发起令牌请求。
  6. 授权服务器验证授权码的有效性,并向客户端颁发访问令牌和刷新令牌。
  7. 客户端可以使用访问令牌来访问资源服务器上的受保护资源。

授权码模式的优势:

  • 安全性:授权码只在客户端和授权服务器之间传输,减少了令牌在网络中的传输风险。
  • 用户体验:用户可以在授权服务器上进行身份验证和授权,确保了安全性和可信度。
  • 可扩展性:授权码模式支持多种身份验证方式,如用户名密码、指纹识别等。

适用场景:

  • 第1方本机移动应用程序,如移动银行应用、社交媒体应用等。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云身份认证服务(CAM):https://cloud.tencent.com/product/cam
  • 腾讯云API网关:https://cloud.tencent.com/product/apigateway
  • 腾讯云移动推送:https://cloud.tencent.com/product/umeng
  • 腾讯云移动分析:https://cloud.tencent.com/product/ma
  • 腾讯云移动测试:https://cloud.tencent.com/product/mta
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Asp.Net Core IdentityServer4 中基本概念

OAuth 2.0是授权行业标准协议。OAuth 2.0侧重于客户端开发人员简单性,同时为web应用程序、桌面应用程序移动应用等提供特定授权流。...它在OAuth2上构建了一个身份层,是一个基于OAuth2协议身份认证标准协议。...我们都知道OAuth2是一个授权协议,它无法提供完善身份认证功能,OIDC使用OAuth2授权服务器来为第三方客户端提供用户身份认证,并把对应身份认证信息传递给客户端,且可以适用于各种类型客户端...(比如服务端应用,移动APP,JS应用),且完全兼容OAuth2,也就是说你搭建了一个OIDC服务后,也可以当作一个OAuth2服务来用。...•Access Control for APIs:为不同类型客户端,例如服务器到服务器、web应用程序、SPAs和本地/移动应用程序,发出api访问令牌。

1.1K10

OAuth2.0 OpenID Connect 一

然后,出现了 OAuthOAuth 2.0——同样是开放,也是一种使用 JSON 作为媒介现代 RESTful 授权方法。...借助 OIDC,您可以使用受信任外部提供商向给定应用程序证明您就是您所说那个人,而无需授予该应用程序访问您凭据权限。 OAuth 2.0 将很多细节留给了实施者。...考虑因素包括应用程序类型(如基于 Web 或本机移动应用程序)、您希望如何验证令牌(在应用程序中或在后端)以及您希望如何访问其他身份信息(进行另一个 API 调用或拥有它直接编码成令牌)。...前端通道是指直接与 OpenID 提供商 (OP) 交互用户代理(例如 SPA 或移动应用程序)。当需要前端通道通信时,隐式流是一个不错选择。...下面是一个使用HTTPie例子: http https://micah.oktapreview.com/oauth2/...

43530
  • 开发中需要知道相关知识点:什么是 OAuth?

    应用程序信任身份提供者。只要该信任关系适用于已签名断言,您就可以开始了。下图显示了这是如何工作。...它支持服务器到服务器应用程序、基于浏览器应用程序移动/本机应用程序和控制台/电视。 您可以将其视为酒店钥匙卡,但用于应用程序。如果您有酒店钥匙卡,则可以进入您房间。您如何获得酒店钥匙卡?...它们在最终用户无法访问受保护区域中运行。 公共客户端是浏览器、移动应用程序和物联网设备。 客户端注册也是 OAuth 一个关键组成部分。这就像 OAuth DMV。您需要为您申请获得牌照。...幸运是,OAuth 如今已经相当成熟,而且您最喜欢语言或框架很可能有可用工具来简化事情。 我们已经讨论了一些有关客户端类型、令牌类型授权服务器端点以及我们如何将其传递给资源服务器内容。...它是本地用户名/密码应用程序(例如桌面应用程序传统授权类型。在此流程中,您向客户端应用程序发送用户名和密码,然后它从授权服务器返回访问令牌。

    27640

    OAuth 详解 什么是 OAuth?

    应用程序信任身份提供者。只要该信任关系适用于已签名断言,您就可以开始了。下图显示了这是如何工作。 ?...当 SAML 2.0 于 2005 年推出时,它是有道理。然而,从那以后发生了很多变化。现在我们拥有现代网络和本机应用程序开发平台。...它支持服务器到服务器应用程序、基于浏览器应用程序移动/本机应用程序和控制台/电视。 您可以将其视为酒店钥匙卡,但用于应用程序。如果您有酒店钥匙卡,则可以进入您房间。您如何获得酒店钥匙卡?...幸运是,OAuth 如今已经相当成熟,而且您最喜欢语言或框架很可能有可用工具来简化事情。 我们已经讨论了一些有关客户端类型、令牌类型授权服务器端点以及我们如何将其传递给资源服务器内容。...它是本地用户名/密码应用程序(例如桌面应用程序传统授权类型。在此流程中,您向客户端应用程序发送用户名和密码,然后它从授权服务器返回访问令牌。

    4.5K20

    关于OIDC,一种现代身份验证协议

    与单纯 OAuth2.0 不同,OIDC 不仅关注于授权(即允许应用程序访问用户在其他服务上资源),更强调身份验证——确认“你是谁”。...OpenID Connect (OIDC) 和 OAuth2.0 是两个密切相关但功能定位不同协议,它们在现代网络应用认证和授权体系中扮演着关键角色。...OpenID Connect (OIDC) 则是在 OAuth2.0 基础上发展起来一个身份认证协议。它在提供授权同时,也提供了一种标准化方式去验证终端用户身份。...应用场景 OAuth 2.0 常见于第三方应用需要访问用户数据场景,如社交媒体登录、云服务API访问等。 OIDC适用于需要确认用户真实身份服务,如企业应用单点登录、金融服务身份验证等。...云服务与 API 访问:为 API 访问提供统一身份验证和授权机制,增强云服务安全性。 物联网与移动应用:在智能设备和移动应用中实现安全用户认证,保护用户隐私。

    3.1K10

    ASP.NET Core身份认证框架IdentityServer4(9)-使用OpenID Connect添加用户认证

    OpenID Connect允许所有类型客户端(包括基于Web移动和JavaScript客户端)请求和接收关于认证会话和最终用户信息。...OpenID Connect 和 OAuth关系 OpenID Connect 在OAuth2上构建了一个身份层,是一个基于OAuth2协议身份认证标准协议。...我们都知道OAuth2是一个授权协议,它无法提供完善身份认证功能,OpenID Connect 使用OAuth2授权服务器来为第三方客户端提供用户身份认证,并把对应身份认证信息传递给客户端,且可以适用于各种类型客户端...(比如服务端应用,移动APP,JS应用),且完全兼容OAuth2,也就是说你搭建了一个OpenID Connect 服务后,也可以当作一个OAuth2服务来用。...),OAuth主要用于授权(Authorization)。

    3.4K30

    OAuth2.0 OpenID Connect 二

    OAuth2.0 OpenID Connect 二 在系列第一部分中,我们了解了一些 OIDC 基础知识、它历史以及涉及各种流类型、范围和令牌。...在这篇文章中,我们将深入探讨 OIDC 机制,并了解各种流程实际应用。 您从 OIDC 流返回令牌和端点内容/userinfo是请求类型和范围函数。...scope在这里,您可以为和设置不同开关response_type,这决定了您应用程序类型。 您用例将决定使用哪个流程。...您是否正在构建需要直接与 OpenID 提供商 (OP) 交互 SPA 或移动应用程序?您是否有将与 OP 交互中间件,例如 Spring Boot 或 Node.js Express?...当您使用要与 OIDC OP 直接交互客户端(例如单页应用程序移动应用程序)时,这是一种合适方法。

    34940

    聊聊统一认证中四种安全认证协议(干货分享)

    开放网络标准,允许用户授权第三方应用访问他们存储在另外服务提供者上信息,而不需要将用户名和密码提供给第三方移动应用或分享他 们数据所有内容。...它在OAuth2上构建了一个身份层用于认证,是一个基于OAuth2协议身份认证标准协议。可以说OIDC协议是当今最流行协议。   ...OAuth2实际上只做了授权,而OpenID Connect在授权基础上又加上了认证。   OIDC优点是:简单基于JSON身份令牌(JWT),并且完全兼容OAuth2协议。...OpenID(认证)+ OAuth 2.0(授权)= OpenID Connect(认证+授权)   OIDC协议登陆授权流程和OAuth2.0基本类似, 整个流程参与者也类似,相比OAuth2...在第一步,SP将会对该资源进行相应安全检查,如果发现浏览器中存在有效认证信息并验证通过,SP将会跳过2-6步,直接进入7步。

    2.8K41

    oidc auth2.0_使用Spring Security 5.0和OIDC轻松构建身份验证「建议收藏」

    oidc auth2.0 “我喜欢编写身份验证和授权代码。” 〜从来没有Java开发人员。 厌倦了一次又一次地建立相同登录屏幕?...//{yourOktaDomain}.com/oauth2/default/v1/keys 将客户端ID和密码从OIDC应用程序复制到application.yml文件中。...这些资源提供了有关Okta和OIDC其他信息: Okta开发人员文档及其OpenID Connect API 身份,声明和令牌– OpenID Connect入门,1部分,共3部分 行动中...OIDC – OpenID Connect入门,2部分,共3部分 令牌中有什么?...– OpenID Connect入门,3部分,共3部分 使用Spring Security和Thymeleaf向您应用程序添加基于角色访问控制 如果您对此帖子有任何疑问,请在下面发表评论。

    3.4K20

    聊聊统一身份认证服务

    它提供了以下丰富功能: 身份验证即服务 适用于所有应用程序(Web,本机移动设备,服务)集中登录逻辑和工作流程。...API访问控制 为各种类型客户端发出API访问令牌,例如服务器到服务器,Web应用程序,SPA和本机/移动应用程序。...,以及获取基本用户信息;它支持包括Web、移动、JavaScript在内所有客户端类型去请求和接收终端用户信息和身份认证会话信息;它是可扩展协议,允许你使用某些可选功能,如身份数据加密、OpenID...简而言之:OpenId Connect = OIDC = Authentication + Authorization + OAuth2.0 术语 ?...常见客户端包括Web应用程序本机移动或桌面应用程序,SPA,服务器进程等。 资源(Resources) 使用IdentityServer保护资源 - 用户身份数据或服务资源(API)。

    5.2K31

    4.OIDC(OpenId Connect)身份认证授权(核心部分)

    我们都知道OAuth2是一个授权协议,它无法提供完善身份认证功能(关于这一点请参考[认证授权] 3.基于OAuth2认证(译)),OIDC使用OAuth2授权服务器来为第三方客户端提供用户身份认证...,并把对应身份认证信息传递给客户端,且可以适用于各种类型客户端(比如服务端应用,移动APP,JS应用),且完全兼容OAuth2,也就是说你搭建了一个OIDC服务后,也可以当作一个OAuth2服务来用...同理,OIDC也不是新技术,它主要是借鉴OpenId身份标识,OAuth2授权和JWT包装数据方式,把这些技术融合在一起就是OIDC。...注意这里面RP发往OP请求,是属于Authentication类型请求,虽然在OIDC中是复用OAuth2Authorization请求通道,但是用途是不一样,且OIDCAuthN请求中scope...如何获取到ID Token,因为OIDC基于OAuth2,所以OIDC认证流程主要是由OAuth2几种授权流程延伸而来,有以下3种: Authorization Code Flow:使用OAuth2

    4.3K50

    五分钟入门OAuth2.0与OIDC

    OAuth2.0 与 OIDC简述OAuth2.0OAuth2.0是一种用于访问授权行业标准协议,OAuth2.0用于为互联网用户提供将其在某个网站信息授权给其他第三方应用、网站访问,但是不需要将网站账号密码给第三方应用...OIDCOAuth2.0超集,可以理解为OIDC=身份认证+OAuth2.0. OAuth2.0主要定义了资源授权,而OIDC主要关注是身份认证。...资源服务器-Resource Server: 托管受保护资源服务器,能够接受并使用访问令牌响应受保护资源请求。客户端-client: 代表资源所有者在其授权下,发起受保护资源请求应用程序。...)客户端模式(client credentials)授权码模式 authorization code授权码模式是最常用、最安全授权方式,适用于有后端Web应用。...OAuth 2.0 - 阮一峰网络日志OAuth2.0 详解OIDCOAuth2.0 综述OpenID Connect FAQ and Q&As

    3.4K40

    Open ID Connect(OIDC)在 ASP.NET Core中应用

    中间2到3步骤为标准oAuth2 授权码模式流程,如果不理解可以参考阮一峰所写《理解oAuth2.0 》一文。...这里有个问题是前面的 2和3是oAuth2标准化流程,而4步却不是,但是大家都这么干(它是一个大家都默许标准) 于是大家干脆就建立了一套标准协议并进行了一些优化,它叫OIDC OIDC 建立在oAuth2.0...OIDCoAuth进行了哪些扩展? 在oAuth2.0授权码模式帮助下,我们拿到了用户信息。 ?...我们来看看oAuth2 授权码模式流程: 第一步,我们向authorize endpoint请求code时候所传递response_type表示授权类型,原来只有固定值code GET /connect...Identity Server4提供OIDC认证服务 Identity Server4是asp.net core2.0实现一套oAuth2OIDC框架,用它我们可以很快速搭建一套自己认证和授权服务

    2.5K80

    ASP.NET_.NET

    中间2到3步骤为标准oAuth2 授权码模式流程,如果不理解可以参考阮一峰所写《理解oAuth2.0 》一文。...这里有个问题是前面的 2和3是oAuth2标准化流程,而4步却不是,但是大家都这么干(它是一个大家都默许标准) 于是大家干脆就建立了一套标准协议并进行了一些优化,它叫OIDC OIDC 建立在oAuth2.0...OIDCoAuth进行了哪些扩展? 在oAuth2.0授权码模式帮助下,我们拿到了用户信息。...我们来看看oAuth2 授权码模式流程: 第一步,我们向authorize endpoint请求code时候所传递response_type表示授权类型,原来只有固定值code GET /connect...Identity Server4提供OIDC认证服务 Identity Server4是asp.net core2.0实现一套oAuth2OIDC框架,用它我们可以很快速搭建一套自己认证和授权服务

    1.6K30

    超详细!一步一步教会你如何使用Java构建单点登录

    创建两个OpenID Connect应用程序第一步是创建两个OIDC应用程序。OpenID Connect是建立在OAuth 2.0之上身份验证协议,它是一种授权协议。...取消选择除“ 授权码”之外所有授权类型,然后单击“ 创建规则”。这样可以确保请求必须使用授权代码流才能使Okta创建令牌。这是所有可用OAuth流中最安全流。...一步一步教会你如何使用Java构建单点登录" /> 这会将策略绑定到您OIDC应用程序。接下来,点击添加规则。设置OIDC App 2规则名称字段。取消选择除“ 授权码”之外所有授权类型。...这{issuerUri}是您在上面创建授权服务器颁发者URI。转到API和授权服务器,然后查看OIDC身份验证服务器旁边表。...这是第二个应用程序URL OIDC App 2。您会发现您不必再次登录。这是因为您已经登录,OIDC App 1并且是单点登录!

    3.6K30

    5.OIDC(OpenId Connect)身份认证授权(扩展部分)

    2 OAuth2 扩展:Multiple Response Types 在本系列第一篇博客[认证授权] 1.OAuth2授权中解释OAuth2授权请求时候,其请求参数中有一个 response_type...至此OIDC是支持三种类型response_type,不但如此,OIDC还允许了可以组合这三种类型,即在一个response_type中包含多个值(空格分隔)。...3 OAuth2 扩展:Form Post Response Mode 在oauth2授权码流程中,当response_type设置为code时候,oauth2授权服务会把authorization_code...其中2步中,odic退出登录地址是通过Discovery服务中返回end_session_endpoint字段提供RP。...,它们是有着本质区别的(这一点在[认证授权] 3.基于OAuth2认证(译)和[认证授权] 4.OIDC(OpenId Connect)身份认证授权(核心部分)中都有解释)。

    2.9K80

    OAuth 详解 什么是 OAuth 2.0 授权授权类型

    demo007x/oauth2-client: Oauth2 Client package for Golang (github.com) 欢迎star 授权代码授权类型可能是您将遇到最常见 OAuth...Web 应用程序本机应用程序都使用它在用户授权应用程序后获取访问令牌。这篇文章是我们探索常用 OAuth 2.0 授权类型系列文章第一部分。...每种授权类型都针对特定用例进行了优化,无论是网络应用程序本机应用程序、无法启动网络浏览器设备,还是服务器到服务器应用程序授权码流程Web 和移动应用程序使用授权授权类型。...该应用程序现在有一个访问令牌,它可以在发出 API 请求时使用。何时使用授权代码流授权代码流程最适用于 Web 和移动应用程序。...如果您在移动应用程序或无法存储客户端机密任何其他类型应用程序中使用授权代码流,那么您还应该使用 PKCE 扩展,它可以防止授权代码可能被攻击其他攻击拦截。

    2.1K30

    CAS、OAuthOIDC、SAML有何异同?

    单点登录实现中,系统之间协议对接是非常重要一环,一般涉及标准协议类型有 CAS、OAuth、OpenID Connect、SAML,本文将对四种主流 SSO协议进行概述性介绍,并比较其异同,读者亦可按图索骥...三、OAuth 2.0 谈到OAuth, 通常是指OAuth 2.0协议,它是一种Authorization协议并不是一种Authentication协议,虽然OAuth 2流程中只描述了Authorization...相比OAuth2OIDC引入了id_token等和userinfo相关概念: 整个OAuth2协议,只是定义了access_token/refresh_token,但是这俩token只是为了保护Resource...参考:https://openid.net/specs/openid-connect-discovery-1_0.html OIDC协议登陆授权流程和OAuth2.0基本类似, 整个流程参与者也类似...,只不过换了个术语: OpenID Provider:简称OP,负责认证和授权 Relying Party:简称RP,OAuth 2.0中Client ​ 可以说OIDC协议是目前最主流SSO标准协议

    25.3K56

    基于OIDC(OpenID Connect)SSO

    在[认证授权]系列博客中,分别对OAuth2OIDC在理论概念方面进行了解释说明,其间虽然我有写过一个完整示例(https://github.com/linianhui/oidc.example),...在这里新开一个系列博客,来解释其各种不同应用场景。因为OIDC是在OAuth2之上协议,所以这其中也会包含OAuth2一些内容。...response_type=id_token:区别于oauth2授权请求一点,必须包含有id_token这一项。...scope=openid profile:区别于oauth2授权请求一点,必须包含有openid这一项。...state:oauth2定义一个状态字符串,这里实现是加密保存了一些客户端状态信息(用于记录客户端一些状态,在登录成功后会有用处),oidc会在认证完成后原样返回这个参数。

    3.1K100
    领券