openid

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

 ̄綄美尐妖づ 提交于 2020-08-19 03:04:13
接上一篇: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"}, //允许访问的资源

Python使用 Google Protocol Buffers (protobuf)

a 夏天 提交于 2020-08-18 19:56:35
最近在用Python写游戏服务器,想更换掉老旧的protobuf2, 看了下proto3的语法,来测试下: 服务器环境 与 protoc 版本: # cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core) # protoc --version libprotoc 3.11.4 一、安装 Python 的protobuf包: 1.1 默认安装最新版本 # pip install protobuf 1.2 查看protobuf包信息: # pip show protobuf Name: protobuf Version: 3.12.2 Summary: Protocol Buffers Home-page: https://developers.google.com/protocol-buffers/ Author: None Author-email: None License: 3-Clause BSD License Location: /usr/local/lib/python3.6/site-packages Requires: setuptools, six 二、编写编译proto文件: 2.1 编写proto文件: # cat pack.proto syntax = "proto3"; // 语法协议

PHP使用 Google Protocol Buffers (protobuf)

给你一囗甜甜゛ 提交于 2020-08-18 19:49:09
很久之前,写PHP的时候,使用 Protobuf 做了聊天APP, 游戏服务器。 那个时候还用的是protobuf 2.5。 看了下proto3的语法,来测试下: 服务器环境 与 protoc 版本: # cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core) # protoc --version libprotoc 3.11.4 一、安装 PHP 的 Protocol Buffers 扩展: 1.1 默认安装最新版本: # pecl install protobuf 1.2 指定版本号安装: # pecl install protobuf-{VERSION} 1.3 查看扩展是否已安装: # php -m | grep protobuf protobuf 1.4 查看protobuf扩展的版本信息: # php --ri protobuf protobuf Version => 3.13.0 Directive => Local Value => Master Value protobuf.keep_descriptor_pool_after_request => 0 => 0 二、编写编译proto文件: 2.1 编写proto文件: # cat pack.proto syntax = "proto3"; //

.NET Core IdentityServer4实战 第二章-OpenID Connect添加用户认证

不打扰是莪最后的温柔 提交于 2020-08-18 14:47:33
内容:本文带大家使用IdentityServer4进行使用OpenID Connect添加用户认证 作者:zara(张子浩) 欢迎分享,但需在文章鲜明处留下原文地址。   在这一篇文章中我们希望使用OpenID Connect这种方式来验证我们的MVC程序,我们首先需要干什么呢?那就是搞一个UI,这样非常美观既可以看到我们的身份验证效果,那么IdentityServer官方已经给我们提供了一套UI了,我们从哪里可以获取呢?   可以通过这个地址就行克隆安装到本地并附加到你的MVC程序中, 地址 。当然我们可以根据PowerShell 进行远程拉取(以下命令在项目根目录进行Code) 在Windows中我们的命令如下: iex ((New-Object System.Net.WebClient).DownloadString( ' https://raw.githubusercontent.com/IdentityServer/IdentityServer4.Quickstart.UI/master/getmaster.ps1 ' )) 或者在macOS或Linux上使用bash one-line: \curl -L https: // raw.githubusercontent.com/IdentityServer/IdentityServer4.Quickstart.UI

Azure AD B2C(一)初识

白昼怎懂夜的黑 提交于 2020-08-17 11:27:20
一,引言(上节回顾)   上一节讲到Azure AD的一些基础概念,以及如何运用 Azure AD 包含API资源,Azure AD 是微软提供的云端的身份标识和资源访问服务,帮助员工/用户/管理员访问一些外部资源和内部资源: • 外部资源,例如 Microsoft Office 365、Azure 门户以及成千上万的其他 SaaS 应用程序。 • 内部资源,例如公司网络和 Intranet 上的应用,以及由自己的组织开发的任何云应用。 今天,引入一个新概念:Azure Active Directory B2C。下面就开始进入正文了👇👇👇👇👇 二,正文   1,关于Azure AD B2C是什么?   Azure Active Directory B2C 也称为 Azure AD B2C,它是以服务的形式提供企业到客户的标识管理服务,用于以自定义的方式控制客户在使用 ios,android,.net,spa以及其他应用程序如何注册,登录和管理其个人资料。客户使用其首选的社交,企业或者本地账户标识对应用程序和API进行单一登录访问。   Azure AD B2C 是一种贴牌式身份验证解决方案。 你可以使用自己的品牌自定义整个用户体验,使其能够与 Web 和移动应用程序无缝融合。 可以自定义当用户注册、登录和修改其个人资料信息时 Azure AD B2C 显示的每一页。

码到成功——Beta冲刺随笔 day 7

自作多情 提交于 2020-08-17 04:13:04
码到成功——Beta冲刺随笔 day 7 这个作业属于哪个课程 班级的链接 这个作业要求在哪里 作业要求的链接 这个作业的目标 计划阶段4天,Beta冲刺阶段共计10天,冲刺阶段要求每天进行小组会议,讨论当前项目昨日进展、存在问题、今日安排(安排需要组长根据情况灵活修改) 冲刺阶段每天发布一篇随笔要求包括当天会议照片、会议内容以及项目燃尽图。 作业正文 .... 其他参考文献 ... 一.小组会议 经过讨论我们决定放弃改用openid,还是使用最初的账号密码注册登录方式。 二.昨日进展 制作前端界面 三.存在问题 1.后端服务器突然之间无法ping通物理机,虽然不影响使用,但是总感觉是个问题 四.今日安排 组员 安排 遇到的问题 江李悦 协助测试后端代码,配合前端调用 无 洪志雍 做了搜索历史 无 张云淳 对首页和我要买以及他人主页进行了设计,git整个改版,主要就是页面美化和设计的部分。 无 程顺明 与前端进行接口测试,并进行代码修改 无 连辛集 今天完成对问题7个界面的编写 无 缪彬鑫 完成搜索商品,没找到商品时的界面 无 冯志成 卖家详细信息栏页面排版以及昵称等内容录入 不了解怎样对数据库进行调用从而导入数据内容,后在同组队员的帮助下完成了数据录入。 王永乐 规划功能测试的用例设计 无 五.明日计划 再次完善前后端各项内容 六.项目燃尽图 来源: oschina 链接:

.Net Core 2.2升级3.1的避坑指南

筅森魡賤 提交于 2020-08-17 03:30:38
写在前面   微软在更新.Net Core版本的时候,动作往往很大,使得每次更新版本的时候都得小心翼翼,坑实在是太多。往往是悄咪咪的移除了某项功能或者组件,或者不在支持XX方法,这就很花时间去找回需要的东西了,下面是个人在迁移.Net Core WebApi项目过程中遇到的问题汇总: 开始迁移 1. 修改*.csproj项目文件 <TargetFramework>netcoreapp2. 2 </TargetFramework> 修改为 <TargetFramework>netcoreapp3.1</TargetFramework> 2 修改Program public static void Main( string [] args) { CreateWebHostBuilder(args).Build().Run(); } public static IWebHostBuilder CreateWebHostBuilder( string [] args) => WebHost.CreateDefaultBuilder(args) .UseStartup <Startup>().ConfigureAppConfiguration((hostingContext, config) => { config.AddJsonFile($ " 你的json文件.json " ,

Fecmall-2.7.1版本发布

最后都变了- 提交于 2020-08-16 22:29:56
Fecmall-2.7.1版本发布 - 全面简化安装流程: http://www.fecmall.com/topic/4205 fecmall的安装步骤,在2.7.1进一步优化,安装步骤现在非常简洁,各位可以多测试 功能如下: 1. 大幅度简化安装 步骤,详细参看fecmall界面安装文档: http://www.fecmall.com/doc/fecshop-guide/develop/cn-2.0/guide-fecshop-2-graphical-web-install.html 2.customer contacts,除了给管理员邮箱发送邮件外,后台添加了表,记录用户留言信息 3.后台添加了logo图片编辑,可以在后台上传图片文件,覆盖默认的fecmall logo 4.后台菜单权限优化:无子菜单显示的上级菜单隐藏 5.check cart page xss bug fix 6.customer增加字段 wx_micro_openid , 用于区分微信小程序和微信公众号商城的openid。 相关代码提交: https://github.com/fecshop/yii2_fecshop/commits/master 注:该版本有数据库更新,如果您从老版本升级至2.7.1,请参看fecmall升级文档执行migrate 来源: oschina 链接: https://my

IdentityServer4(8)- 使用密码认证方式控制API访问(资源所有者密码授权模式)

女生的网名这么多〃 提交于 2020-08-16 06:59:07
一.前言 本文已经更新到 .NET Core 2.2 OAuth 2.0 资源所有者密码模式允许客户端向令牌服务发送用户名和密码,并获取 代表该用户 的访问令牌。 除了通过无法浏览器进行交互的应用程序之外,通常建议不要使用资源所有者密码模式。 一般来说,当您要对用户进行身份验证并请求访问令牌时,使用其中一个交互式 OpenID Connect 流程通常要好得多。 在这里使用这种模式是为了学习如何快速在 IdentityServer 中使用它, 二.添加用户 就像API资源(也称为 Scope)、客户端一样,用户也有一个基于内存存储(In-Memory)的实现。 有关如何正确存储(持久化存储)和管理用户帐户的详细信息,请查看基于 ASP.NET Identity的快速入门。 TestUser 类代表测试用户及其身份信息单元(Claim)。 让我们通过在 config 类中添加以下代码来创建几个用户: 首先添加以下语句 到 Config.cs 文件中: using IdentityServer4.Test; public static List<TestUser> GetUsers() { return new List<TestUser> { new TestUser { SubjectId = "1", Username = "alice", Password =

微信小程序支付C#后端源码

时光毁灭记忆、已成空白 提交于 2020-08-16 06:56:12
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Web; 6 using System.Web.Mvc; 7 using System.IO; 8 using System.Security.Cryptography; 9 using System.Text; 10 using System.Xml; 11 using Newtonsoft.Json; 12 using Newtonsoft.Json.Linq; 13 namespace Mvc_vue.Controllers 14 { 15 public class wxController : Controller 16 { 17 // 18 // GET: /wx/ 19 20 public ActionResult Index() 21 { 22 return View(); 23 } 24 // 所需值 25 public static string _appid = " wxd930ea5d5a258f4f " ; 26 public static string _mch_id = " 10000100 " ; 27 public static