openid

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

倖福魔咒の 提交于 2020-08-16 01:53:09
码到成功——Beta冲刺随笔 day 2 这个作业属于哪个课程 班级的链接 这个作业要求在哪里 作业要求的链接 这个作业的目标 计划阶段4天,Beta冲刺阶段共计10天,冲刺阶段要求每天进行小组会议,讨论当前项目昨日进展、存在问题、今日安排(安排需要组长根据情况灵活修改) 冲刺阶段每天发布一篇随笔要求包括当天会议照片、会议内容以及项目燃尽图。 作业正文 .... 其他参考文献 ... 一.小组会议 讨论了一个前端遇到的非常奇怪的问题 二.昨日进展 修改完成数据库的表结构,使之更符合项目需求 三.存在问题 今天遇到了一个非常奇怪的问题,在前端的一个js代码中,必须多加一个空的elif,界面才能展示出我们需要的效果,然鹅这个elif可以既没有判断条件,也没有执行语句,追溯运行顺序,这个elif也是自始至终没有运行过,但是就是不能删掉这个elif,而且也不能改为else。这个空的elif,不说语法能不能是空的,就算是空的,他的效果也和else应该是差不多的,但是就是不能用else替代,而且从头到尾没有执行到过。 四.今日安排 组员 安排 遇到的问题 江李悦 帮助组员查找问题 无 洪志雍 修复代码bug,优化代码 自己的代码开始看不懂了,明明在我看来是没什么用的代码,却能实现想要的效果 张云淳 初始界面(不是登录,也不是首页,而是用户点进小程序看到的第一个界面)设计

WinForm微信扫码登录

夙愿已清 提交于 2020-08-15 14:50:23
源码还需优化,不喜勿喷。 微信官方文档 : https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html 前期准备: 1.微信开放平台开发者资质认证 https://open.weixin.qq.com/ 费用300 大概1-2天时间 2.创建网站应用,需要已备案域名、logo等资料 大概1-2天 3.通过以后获取AppID、AppSecret winform 窗体 控件 : webBrowser(加载微信接口,样式太难调了,设置隐藏即可,用pictureBox盖住就好) 、pictureBox(zhexiubu 加载二维码图片) 回调函数需格式化一下urlencode,微信要求的 地址: http://www.jsons.cn/urlencode/ 以下是源码: //Form窗体加载 private void LoginForm_Load( object sender, EventArgs e) { webBrowser1.Navigate( " https://open.weixin.qq.com/connect/qrconnect?appid=微信开放平台申请的appid&redirect_uri=授权回调域&response_type=code&scope

.NET之微信小程序获取用户UnionID

守給你的承諾、 提交于 2020-08-15 12:22:55
前言:   在实际项目开发中我们经常会遇到账号统一的问题,如何在不同端或者是不同的登录方式下保证同一个会员或者用户账号唯一(便于用户信息的管理)。这段时间就有一个这样的需求,之前有个客户做了一个微信小程序商城(店主端的),然后现在又要做一个会员购物端的小程序商场。首先之前用户登录凭证都是使用微信openid来做的唯一标识,而现在客户需求是要做到用户在会员端小程序跳转到到店主端小程序假如之前该用户微信是在店主端审核通过的用户则不需要在进行资料提交审核操作,直接登录。所以,所以我们使用了UnionID来进行关联,如下是我们现在项目的基本流程(画的丑莫见怪)。 说说UnionID机制:   如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 UnionID 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。 官方UnionID机制详细说明: https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html 微信开放平台绑定小程序流程: 登录 微信开放平台 — 管理中心 — 小程序 — 绑定小程序

【融职培训】Web前端学习 第10章 小程序开发5 常用接口介绍

假装没事ソ 提交于 2020-08-15 01:48:21
一,登录接口 wx.login(对象对象) 通过凭据交换机换取用户登录状态信息,包括用户的唯一标识(openid)以及本次登录的会话密钥(session_key)等。用户数据的加解密通讯需要依赖会话密钥完成。 参数: 属性 类型 必填 说明 超时 数 否 超时时间,单位ms 成功 功能 否 连接调用成功的某些函数 失败 功能 否 连接调用失败的某些函数 完成 功能 否 连接初始化结束的某些函数(成功,失败都会执行) 二,支付接口 wx.requestPayment(对象对象) 发起微信支付的一个接口 参数: 属性 类型 必填 说明 时间戳记 串 是 最佳,从1970年1月1日00:00:00至今的秒数,即当前的时间 随机数 串 是 随机字符串,长度为32个字符以下 包 串 是 统一下单接口返回的prepay_id参数值,提交格式如:prepay_id = *** signType 串 是 签名算法 paySign 串 是 签名,具体签名方案参见 小程序支付接口文档 成功 功能 否 连接调用成功的某些函数 失败 功能 否 连接调用失败的某些函数 完成 功能 否 连接初始化结束的某些函数(成功,失败都会执行) 三,小程序重启 wx.navigateToMiniProgram(对象对象) :另一个小程序可以通过另一个小程序的appid来替换到另一个小程序 参数: 属性 类型 必填 说明

CSRF(跨站请求伪造攻击)漏洞详细说明

感情迁移 提交于 2020-08-14 13:45:38
Cross-Site Request Forgery(CSRF),中文一般译作跨站请求伪造。经常入选owasp漏洞列表Top10,在当前web漏洞排行中,与XSS和SQL注入并列前三。与前两者相比,CSRF相对来说受到的关注要小很多,但是危害却非常大。 通常情况下,有三种方法被广泛用来防御CSRF攻击:验证token,验证HTTP请求的Referer,还有验证XMLHttpRequests里的自定义header。鉴于种种原因,这三种方法都不是那么完美,各有利弊。 二 CSRF的分类 在跨站请求伪造(CSRF)攻击里面,攻击者通过用户的浏览器来注入额外的网络请求,来破坏一个网站会话的完整性。而浏览器的安全策略是允许当前页面发送到任何地址的请求,因此也就意味着当用户在浏览他/她无法控制的资源时,攻击者可以控制页面的内容来控制浏览器发送它精心构造的请求。 1、网络连接。例如,如果攻击者无法直接访问防火墙内的资源,他可以利用防火墙内用户的浏览器间接的对他所想访问的资源发送网络请求。甚至还有这样一种情况,攻击者为了绕过基于IP地址的验证策略,利用受害者的IP地址来发起他想发起的请求。 2、获知浏览器的状态。当浏览器发送请求时,通常情况下,网络协议里包含了浏览器的状态。这其中包括很多,比如cookie,客户端证书或基于身份验证的header。因此,当攻击者借助浏览器向需要上述这些cookie

Kong oidc插件

≯℡__Kan透↙ 提交于 2020-08-14 06:36:50
介绍 kong oidc插件 是诺基亚开源的,用于实现OpenID Connect依赖方(RP)功能。代码量不多,内部使用了 lua-resty-openidc 库执行oidc协议的认证,而 lua-resty-openidc 库通过利用 lua-resty-session 来维护已认证用户的会话,从而在将会话状态存储在客户端浏览器cookie,或使用服务器端存储机制共享内存之间提供可配置的选择。 原理 oidc插件是oidc协议的RP,可以与外部的oidc认证授权服务器交互,并且使用session来维持会话,在网关层对前端屏蔽oidc协议的复杂度,提供统一的实现,前端无需关系认证授权相关逻辑。流程如下图所示。 总结 这种用法的争议点在于无状态,使用oidc协议及jwt就是为了无状态,现在网关层为了屏蔽认证的复杂度,又通过增加session变成了有状态,虽然可以通过session共享来处理这个问题。 究竟是要各前端自己实现oidc认证还是网关统一处理,就仁者见仁智者见智了。 来源: oschina 链接: https://my.oschina.net/wecanweup/blog/4332648

PHP实现QQ登录的开发原理和实现过程

十年热恋 提交于 2020-08-14 06:27:55
第三方登录,就是使用大家比较熟悉的比如QQ、微信、微博等第三方软件登录自己的网站,这可以免去注册账号、快速留住用户的目的,免去了相对复杂的注册流程。下边就给大家讲一下怎么使用PHP开发QQ登录的功能。 1、进入QQ互联官网进行登录(可以使用自己的QQ或者重新注册一个QQ号作为咱们项目的单独QQ进行管理),地址: https:// connect.qq.com/ 2、点击“应用管理”进入QQ互联管理中心,在这里进行相关应用的创建,分为 网站应用 和 移动应用。选择自己想要的应用进行资料的填写(审核需要等待大概7天左右),审核通过你将获得APP ID和APP Key 3、审核通过获得相关接口:get_user_info。 4、下载QQ互联相关的demo http:// wiki.connect.qq.com/sdk %E4%B8%8B%E8%BD%BD 我下载的是 PHP SDK v2.1 5、仔细观察sdk我们会发现它包含有4个文件夹、2个文件,其中最主要的是API文件夹,其余的我觉得都可以忽略不看(你看也没事),按照这篇文档一步一步往下进行,你就可以实现登录的功能。 6、将API文件夹拷贝到你的项目里,至于拷贝到项目的哪个文件夹,只要你能引入就行,看你心情来就可以,前期准备做好,接下来就是写代码了。 7、打开你拷贝到项目里的API文件夹,其中有一个comm文件夹

cas客户端流程详解(源码解析)--单点登录

天大地大妈咪最大 提交于 2020-08-13 11:51:21
博主之前一直使用了cas客户端进行用户的单点登录操作,决定进行源码分析来看cas的整个流程,以便以后出现了问题还不知道是什么原因导致的 cas主要的形式就是通过过滤器的形式来实现的,来,贴上示例配置: 1 < listener > 2 < listener-class > org.jasig.cas.client.session.SingleSignOutHttpSessionListener </ listener-class > 3 </ listener > 4 5 < filter > 6 < filter-name > SSO Logout Filter </ filter-name > 7 < filter-class > org.jasig.cas.client.session.SingleSignOutFilter </ filter-class > 8 </ filter > 9 10 < filter-mapping > 11 < filter-name > SSO Logout Filter </ filter-name > 12 < url-pattern > /* </ url-pattern > 13 </ filter-mapping > 14 15 <!-- SSO单点登录认证filter --> 16 < filter > 17 < filter

小程序和公众号绑定(通过开放平台)

不羁岁月 提交于 2020-08-12 19:53:12
申请开放平台 ,并绑定公众号和小程序 小程序授权登录获取unionID 公众号关注时获取unnionID,并查询是否unionID是否存在,然后存在,更新公众号openid信息,不存在则新建 参考文档: 公众号unionID机制: https://developers.weixin.qq.com/doc/offiaccount/User_Management/Get_users_basic_information_UnionID.html#UinonId 小程序登录获取unionID https://www.wangmingchang.com/5138.html 高颜值后台管理系统免费使用 ### 子枫后台管理系统 ###,可在宝塔面板直接安装 欢迎关注我的公众号:子枫的奇妙世界,获得独家整理的学习资源和日常干货推送。 如果您对我的其他专题内容感兴趣,直达我的个人博客: www.wangmingchang.com 。 来源: oschina 链接: https://my.oschina.net/u/3722798/blog/4339320

来看看阿里架构师Java 代码打日志姿势!你也是这样写的吗

我只是一个虾纸丫 提交于 2020-08-12 18:36:15
使用slf4j 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。 实现方式统一使用: Logback框架 打日志的正确方式 什么时候应该打日志 当你遇到问题的时候,只能通过debug功能来确定问题,你应该考虑打日志,良好的系统,是可以通过日志进行问题定为的。 当你碰到if…else 或者 switch这样的分支时,要在分支的首行打印日志,用来确定进入了哪个分支 经常以功能为核心进行开发,你应该在提交代码前,可以确定通过日志可以看到整个流程 基本格式 必须使用参数化信息的方式: logger.debug("Processing trade with id:[{}] and symbol : [{}] ", id, symbol); 对于debug日志,必须判断是否为debug级别后,才进行使用: if (logger.isDebugEnabled()) { logger.debug("Processing trade with id: " +id + " symbol: " + symbol); } 不要进行字符串拼接,那样会产生很多String对象,占用空间,影响性能。 反例(不要这么做): logger.debug("Processing trade with id: " + id + " symbol: " + symbol); 使用[]进行参数变量隔离