openid

公众号迁移 原有数据库openid 更新主体openid

我只是一个虾纸丫 提交于 2020-10-04 12:00:14
  今天一个两年前做的公众号项目 要更改主体,随之而来的是公众号的迁移。 公众号迁移后关注的粉丝也会对应的进行迁移,还会给粉丝发送相关通知。   大体流程如下图   迁移的具体步骤我就不细说了。今天主要说的是 迁移主体后 对应的用户openid也会变化,也就是说你的程序如果公众号登录是以微信openid为唯一标识的话, 那你的用户系统经过一次公众号变更后就会出现问题。 老用户再次授权后 系统可能认为是新用户,而且通过原来的openid 也无法推送模板消息等功能。   微信方面当然也考虑到了相关问题 。给出了相关的接口去处理这个问题,这就是今天说的openid转换接口 。   相关内容如下    openid转换接口 账号迁移后,粉丝的 openid 会变化, 微信用户关注不同的公众号,对应的openid是不一样的,迁移成功后,粉丝的openid以目标帐号(即新公众号)对应的OpenID为准。但开发者可以通过开发接口转换openid,开发文档可以参考: 提供一个openid转换的API接口,当帐号迁移后,可以通过该接口: 1. 将原帐号粉丝的openid转换为新帐号的openid。 2. 将有授权关系用户的openid转换为新帐号的openid。 3. 将卡券关联用户的openid转换为新帐号的openid。 ◆ 原帐号:准备要迁移的帐号,当审核完成且管理员确认后即被回收。 ◆

IdentityServer4 4.x版本 配置Scope的正确姿势

旧时模样 提交于 2020-10-02 21:59:23
前言 IdentityServer4 是为ASP.NET Core系列量身打造的一款基于 OpenID Connect 和 OAuth 2.0 认证的框架 IdentityServer4官方文档: https://identityserver4.readthedocs.io/ 看这篇文章前默认你对IdentityServer4 已经有一些了解。 本篇使用IdentityServer4的4.x版本,跟老版本的稍微有些差别。下面直接进入正题。 鉴权中心 创建IdentityServer4项目 使用IdentityServer4 来搭建一个鉴权中心,首先建议安装一下IdentityServer4的官方项目模板。也可以不安装,自己创建项目,然后NuGet安装需要的包也行。(不过还是推荐用官方的模板,很方便)。 命令行执行: dotnet new -i IdentityServer4.Templates 安装完成后会多出以下项目模板: 我这里选用is4inmem这个模板来创建项目,这个模板的数据都是写死在内存中的,并且包含了Quickstart页面,比较简单方便。 来到我的项目目录下执行: dotnet new is4inmem --name Idp 执行完成会生成以下文件: VS2019打开项目: 运行项目: 配置ApiResource、ApiScope、Clients 修改Startup

微信点餐系统(十二)-买家与卖家端连通

随声附和 提交于 2020-10-01 11:49:42
章节感悟 1.cookie的设置与注销 2.redis的使用,数据插入与删除 3.AOP的使用 4.全局捕获异常 5.微信模板消息推送 6.webSocket消息推送 买家与卖家端连通 卖家信息表 dao 开发和 service 开发 1. 创建卖家信息表 seller_info create table seller_info( seller_id varchar( 32) not null , username varchar( 32) not null , password varchar( 32) not null , openid varchar( 64) not null comment '微信openid' , create_time timestamp not null default current_timestamp comment '创建时间' , update_time timestamp not null default current_timestamp on update current_timestamp comment '更新时间' , primary key(seller_id) ) comment '卖家信息表'; 2.DAO 实体映射 SellerInfo 3.SellerInfoRepository 4. 创建 SellerService

ABP VNext实践之搭建可用于生产的IdentityServer4

房东的猫 提交于 2020-09-27 05:43:52
一、前言 用了半年多的abp vnext,在开发的效果还是非常的好,可以说节省了很多时间,像事件总线、模块化开发、动态API进行远程调用、自动API控制器等等,一整套的规范,让开发人员更方便的集成,提升效率;大家如果想多了解abp vnext 更多的资料或者源码,可以到github上看,文章结尾也会给出源码地址和wiki地址,优秀的你们要更优秀才行。 今天给大家讲讲如何在利用abp vnext框架搭建IDS4且可以在生产环境下使用的,其中也需要针对于IDS4在liunx系统使用nginx代理中端点不是https的特别注意事项配置,这个也是一个坑,如果不注意,授权就不成功,除非配置了跳过https的强制验证; 二、ABP VNext CLI生成一个项目解决方案 CLI 命令大家可以参考wiki,命令如下:abp new Louie.Ids4Demo --ui none --separate-identity-server,其中 --separate-identity-server代表将IdentityServer应用程序与API host应用程序分开,--ui none 无UI;打开命令窗口,拷贝进去后就可以生成一个解决方案; 然后我们授权需要修改一下项目中的代码迁移配置,因为我这边用的是mysql,而命令生成的是使用sqlserver,在 Louie.Ids4Demo

Express 集成 OIDC 单点登录指南

非 Y 不嫁゛ 提交于 2020-09-26 18:03:36
本文以基于 Node.js 平台 Express 框架为例,以及集成 Node.js 身份认证中间件 Passport.js,详细介绍 Express 如何集成 Authing OIDC 单点登录。 OIDC 协议:OIDC(OpenID Connect)是一个基于 OAuth2 协议的身份认证标准协议。OIDC 使用 OAuth2 的授权服务器来为第三方客户端提供用户的身份认证,并把对应的身份认证信息传递给客户端,且可以适用于各种类型的客户端。 Passport :Passport 是 Node.js 的认证中间件,特别灵活和模块化。可非常方便的植入任意基于 Express 的 Web 应用。支持用户名密码、Facebook 和 Twitter 等认证。 一、配置 Authing OIDC 应用 从 Authing.cn 注册并进入 Authing 控制台,创建 OIDC 应用,配置应用信息。 详细配置如下: 应用名: <应用名称> 认证地址: https://<应用域名>.authing.cn 回调 URL:应用登录后回调地址,例如: http://localhost:3004/auth/cb 授权模式:默认 authorization_code、refresh_token、authing Token 返回类型:默认 code token 换取时认证方式:默认 client

IdentityServer4实现OAuth2.0四种模式之授权码模式

杀马特。学长 韩版系。学妹 提交于 2020-08-19 23:25:24
接上一篇:IdentityServer4实现OAuth2.0四种模式之隐藏模式 授权码模式隐藏码模式最大不同是授权码模式不直接返回token,而是先返回一个授权码,然后再根据这个授权码去请求token。这比隐藏模式更为安全。从应用场景上来区分的话,隐藏模式适应于全前端的应用,授权码模式适用于有后端的应用,因为客户端根据授权码去请求token时是需要把客户端密码转进来的,为了避免客户端密码被暴露,所以请求token这个过程需要放在后台。 一,服务端配置 1,添加客户端 新建一个支持授权码模式的客户端,请求token时需要客户端密码,所以需要设置clientSecret。登录成功后重定向地址依然用之前建立的HTML页面。 new Client() { //客户端Id ClientId="apiClientCode", ClientName="ApiClient for Code", //客户端密码 ClientSecrets={new Secret("apiSecret".Sha256()) }, //客户端授权类型,Code:授权码模式 AllowedGrantTypes=GrantTypes.Code, //允许登录后重定向的地址列表,可以有多个 RedirectUris = {"https://localhost:5002/auth.html"}, //允许访问的资源