精华内容
下载资源
问答
  • 这个问题其实是极其简单的,如果不小心忘记了OpenVAS的Web登录密码或者没有找到OpenVAS安装过程中输出的默认密码,则通过如下的命令修改OpenVAS的Web登录密码: openvasmd --create-user --help openvasmd ...

    转载请注明出处:https://blog.csdn.net/l1028386804/article/details/86562492

    这个问题其实是极其简单的,如果不小心忘记了OpenVAS的Web登录密码或者没有找到OpenVAS安装过程中输出的默认密码,则通过如下的命令修改OpenVAS的Web登录密码:

    openvasmd --create-user --help
    openvasmd --user admin --new-password '新密码'

    这样我们就可以将OpenVAS的Web密码修改为新密码,从而登录OpenVAS的Web端。

     

    展开全文
  • Web端人脸识别登录

    万次阅读 多人点赞 2018-08-04 20:29:37
    人脸识别技术在当下已经十分成熟,但主要在移动端应用上较为普及,而在Web端并不多见。 本文介绍在Web端人脸识别的简单实现。 Web端人脸识别主要有三个技术思路:1.前端的人脸识别,例如使用Tensorflow.js,2.后台...

    人脸识别技术在当下已经十分成熟,但主要在移动端应用上较为普及,而在Web端并不多见。

    本文介绍在Web端人脸识别的简单实现。

    Web端人脸识别主要有三个技术思路:1.前端的人脸识别,例如使用Tensorflow.js,2.后台人脸识别,有很多开源或者免费的SDK可以使用,3.前后端结合,即结合以上两种方法,虽然系统复杂度提高,但对于系统的安全性,以及减轻服务器负担都有很大提升。

    效果图:

    登录界面:

    拿开面前的遮挡物后很快登录成功。

    以下介绍基于后台的Web端人脸识别。按照系统实现的简单流程,进行分步介绍:

    1.前端获取人脸数据

    通过调用摄像头,将某一时刻的照片绘制在Canvas上,将Canvas转化成jpg或png。

        var video = document.getElementById('video');
        var canvas = document.getElementById('canvas');
        var context = canvas.getContext('2d');
        function getUserMediaToPhoto(constraints,success,error) {
            if(navigator.mediaDevices.getUserMedia){
                //最新标准API
                navigator.mediaDevices.getUserMedia(constraints).then(success).catch(error);
            }else if (navigator.webkitGetUserMedia) {
                //webkit核心浏览器
                navigator.webkitGetUserMedia(constraints,success,error);
            }else if(navigator.mozGetUserMedia){
                //firefox浏览器
                navigator.mozGetUserMedia(constraints,success,error);
            }else if(navigator.getUserMedia){
                //旧版API
                navigator.getUserMedia(constraints,success,error);
            }
        }
        //成功回调函数
        function success(stream){
            //兼容webkit核心浏览器
            var CompatibleURL = window.URL || window.webkitURL;
            //将视频流转化为video的源
            video.src = CompatibleURL.createObjectURL(stream);
            video.play();//播放视频
            //将视频绘制到canvas上
            postFace()
        }
        function error(error) {
            console.log('访问用户媒体失败:',error.name,error.message);
        }
        if(navigator.mediaDevices.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.getUserMedia){
            getUserMediaToPhoto({video:{width:480,height:320}},success,error);
        }else{
            alert('你的浏览器不支持访问用户媒体设备');
        }

    2.将人脸图片数据传向后台

    将图片转为base64格式,通过Ajax传向后台,指定后台专门的处理函数。

        function postFace() {
            setTimeout(function () {
                context.drawImage(video,0,0,480,320);
                img=canvas.toDataURL('image/jpg')
                {#获取完整的base64编码#}
                img=img.split(',')[1]
                //将照片以base64用ajax传到后台
                $.post({
                    url:'/getface',
                    data:{
                        message:img
                    },
                    success:function (callback) {
                        if(callback=='no'){
                            postFace()
                        }else {
                            window.location.href=callback
                        }
                    },
                    error:function (callback) {
                        postFace()
                    }
                })
            },300)
        }

    3.后台接受图片

    后台接受到base64编码后,将编码解密并解析,保存成图片。

    def getface(request):
        if request.POST:
            time = datetime.datetime.now().strftime('%Y%m%d&%H%M%S')
            strs=request.POST['message']
            imgdata = base64.b64decode(strs)
            try:
                file = open(u'static/facedata/confirm/'+time+'.jpg', 'wb')
                file.write(imgdata)
                file.close()
            except:
                print('as')
            res=AFRTest.checkFace(u'static/facedata/base/niewzh.jpg',u'static/facedata/confirm/'+time+'.jpg')
            if res>=0.6:
                return HttpResponse('panel')
            else:
                return HttpResponse('no')
        else:
            return HttpResponse('no')

    4.调用SDK进行图片比对

    假设用户在注册时已经上传了作为参照的人脸数据,我们使用用户上传的参照人脸数据与刚刚获得的人来拿数据进行比对,SDK获取到两张照片作为参数,比较后返回相似度。

    def face(request):
        res = AFRTest.checkFace(u'static/facedata/base/niewzh.jpg', u'static/facedata/base/niewzh.jpg')
        return HttpResponse(res)

    5.根据比对结果,返回给前端相应的数据

    定义一个合适的阈值,如果相似度大于该值,判断是该用户,认定允许登录,返回系统界面。否则返回人脸识别失败的信息。

    后记:

    本文只介绍了简单实现,系统安全性没有过多考虑,比如在这个简单系统中,前端的数据获取流程,非注册用户使用注册用户的照片也能骗过系统,在照片数据传输的过程中,也会有数据泄露的风险。后面将会针对这些情况进行一系列的优化。

    经测试,最终实现的系统可以在1s左右实现刷脸登录,识别效果也令人满意。

     

    项目源码:

    CSDN下载:https://download.csdn.net/download/scaped/10623711

    百度网盘:https://pan.baidu.com/s/1OOjsz1YiRQ0ItSDh7Shm0Q

    密码:psvl

    展开全文
  • JAVA实现WEB端实现app扫码登录

    万次阅读 2020-05-19 19:57:46
    网页+服务器 接下来就是对于这个服务的详细实现。首先,大概说一下原理:用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维码的请求。服务器收到请求后,随机生成一个uuid,将这个id作为key值存入...

    扫码登录:

    我们经常用的一些app,如qq和淘宝,天猫等这一类的软件。而开发这些app的企业,都有他们相对应的网站。为了让用户在使用他们的网站时,登录更加方便和安全。企业提供了, 使用手机,扫一扫,就可以登录的服务。网页登录时的效果如下:

      

    原理解释

    网页端+服务器

    接下来就是对于这个服务的详细实现。首先,大概说一下原理:用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维码的请求。服务器收到请求后,随机生成一个uuid,将这个id作为key值存入redis服务器,同时设置一个过期时间,再过期后,用户登录二维码需要进行刷新重新获取。同时,将这个key值和本公司的验证字符串合在一起,通过二维码生成接口,生成一个二维码的图片(二维码生成,Zxing二维码生成java)然后,将二维码图片和uuid一起返回给用户浏览器。

    浏览器拿到二维码和uuid后,会每隔一秒向浏览器发送一次,登录是否成功的请求。请求中携带有uuid作为当前页面的标识符。这里有的同学就会奇怪了,服务器只存了个uuid在redis中作为key值,怎么会有用户的id信息呢? 

    这里确实会有用户的id信息,这个id信息是由手机服务器存入redis中的。具体操作如下:

    手机端+服务器

    话说,浏览器拿到二维码后,将二维码展示到网页上,并给用户一个提示:请掏出您的手机,打开扫一扫进行登录。用户拿出手机扫描二维码,就可以得到一个验证信息和一个uuid(扫描二维码获取字符串的功能Zxing二维码,这里就不详细介绍了)。由于手机端已经进行过了登录,在访问手机端的服务器的时候,参数中都回携带一个用户的token,手机端服务器可以从中解析到用户的userId(这里从token中取值而不是手机端直接传userid是为了安全,直接传userid可能会被截获和修改,token是加密的,被修改的风险会小很多)。手机端将解析到的数据和用户token一起作为参数,向服务器发送验证登录请求(这里的服务器是手机服务器,手机端的服务器跟网页端服务器不是同一台服务器)。服务器收到请求后,首先对比参数中的验证信息,确定是否为用户登录请求接口。如果是,返回一个确认信息给手机端。

    手机端收到返回后,将登录确认框显示给用户(防止用户误操作,同时使登录更加人性化)。用户确认是进行的登录操作后,手机再次发送请求。服务器拿到uuId和userId后,将用户的userid作为value值存入redis中以uuid作为key的键值对中。

    登录成功

    然后,浏览器再次发送请求的时候,浏览器端的服务器就可以得到一个用户Id,并调用登录的方法,声成一个浏览器端的token,再浏览器再次发送请求的时候,将用户信息返回给浏览器,登录成功。这里存储用户id而不是直接存储用户信息是因为,手机端的用户信息,不一定是和浏览器端的用户信息完全一致。

    有问题欢迎留言~

    展开全文
  • C# Web 添加登录验证码

    千次阅读 2017-09-14 08:47:45
    写在前面:最近做的学校项目需要添加登录验证码,而我又是一个刚转专业到计算机的学渣,所以对添加 Web 验证码一窍不通。不过在请教了同学,以及在网上找各种资料,经过自己的测试,算是加了一个简单的登录验证码...

            写在前面:最近做的学校项目需要添加登录验证码,而我又是一个刚转专业到计算机的学渣,所以对添加 Web 端验证码一窍不通。不过在请教了同学,以及在网上找各种资料,经过自己的测试,算是加了一个简单的登录验证码。下面把添加验证码的过程记录一下,以便以后自己学习改进,也可以让跟我一样的小白同学省点找资料的功夫。


    1) 首先,我们需要从网上找一个生产验证码图片的类(主要是我不会自己写大哭)。看本篇文章的同学就不用找了,我直接把代码贴在下面,具体的注释,源码的作者已经都写了,大家都能看明白怎么用,有机会再仔细研究下吧。


    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Drawing.Drawing2D;
    using System.Drawing.Imaging;
    using System.IO;
    using System.Linq;
    using System.Web;

    namespace TestSecurityCode01.App_Start
    {
        public class SecurityCode
        {
            /// <summary>
            /// 生成随机的字符串
            /// </summary>
            /// <param name="codeCount">验证码长度</param>
            /// <returns></returns>
            public string CreateRandomCode(int codeCount)
            {
                string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,a,b,c,d,e,f,g,h,i,   g,k,l,m,n,o,p,q,r,F,G,H,I,G,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,s,t,u,v,w,x,y,z";
                string[] allCharArray = allChar.Split(',');
                string randomCode = "";
                int temp = -1;
                Random rand = new Random();
                for (int i = 0; i < codeCount; i++)
                {
                    if (temp != -1)
                    {
                        rand = new Random(i * temp * ((int)DateTime.Now.Ticks));
                    }
                    int t = rand.Next(35);
                    if (temp == t)
                    {
                        return CreateRandomCode(codeCount);
                    }
                    temp = t;
                    randomCode += allCharArray[t];
                }
                return randomCode;
            }

            /// <summary>
            /// 创建验证码图片
            /// </summary>
            /// <param name="validateCode">验证码无干扰字符串</param>
            /// <returns></returns>
            public byte[] CreateValidateGraphic(string validateCode)
            {
                Bitmap image = new Bitmap((int)Math.Ceiling(validateCode.Length * 22.0), 40);
                Graphics g = Graphics.FromImage(image);
                try
                {
                    //生成随机生成器
                    Random random = new Random();
                    //清空图片背景色
                    g.Clear(Color.White);
                    //画图片的干扰线
                    for (int i = 0; i < 25; i++)
                    {
                        int x1 = random.Next(image.Width);
                        int x2 = random.Next(image.Width);
                        int y1 = random.Next(image.Height);
                        int y2 = random.Next(image.Height);
                        g.DrawLine(new Pen(Color.Silver), x1, x2, y1, y2);
                    }
                    Font font = new Font("Arial", 20, (FontStyle.Bold | FontStyle.Italic));
                    LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue,Color.DarkRed, 1.2f, true);
                    g.DrawString(validateCode, font, brush, 3, 2);


                    //画图片的前景干扰线
                    for (int i = 0; i < 100; i++)
                    {
                        int x = random.Next(image.Width);
                        int y = random.Next(image.Height);
                        image.SetPixel(x, y, Color.FromArgb(random.Next()));
                    }
                    //画图片的边框线
                    g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);

                    //保存图片数据
                    MemoryStream stream = new MemoryStream();
                    image.Save(stream, ImageFormat.Jpeg);

                    //输出图片流
                    return stream.ToArray();
                }
                finally
                {
                    g.Dispose();
                    image.Dispose();
                }
            }
        }
    }


    然后,我们需要建一个类,名字就叫 SecurityCode ,把这个类放在一个你能找到的文件夹下,我放到了这里(别问为什么放这里,我只是为了好找)


    2)我们需要在 控制器里添加一个生产验证码图片的方法,我这里是添加到了HomeController。首先来张图:


    下面贴上代码(不贴代码,帖子还有什么意义?)


               static string  securityCode_input = "";
            public ActionResult GetSecurityCode()
            {
                SecurityCode code = new SecurityCode();
                securityCode_input = code.CreateRandomCode(4);
                byte[] buf = code.CreateValidateGraphic(securityCode_input);
                //securityCode_input = buf.ToString();
                return File(buf, "image/Jpeg");
            }


    注意 securityCode_input这个变量应该是静态的,否则每次进入控制器,该变量都会重置。这个变量就是随机生成的字符串验证码。  大家可以调试一遍走一走。(这段代码就是HomeController 里面的代码,而 HomeController  的视图就是我们需要添加验证码的页面,在本文里是 Index.cshtml 


    3)下面就是在前台页面调用该验证码了,这里有两种方法,个人比较推荐第二种,虽然第二种有时候会出异常。。。照例先来截图:

    方法一:



    下面贴上代码:

    <script type="text/javascript">
        window.onload = function () {
            $("#secImg").click(function () {
                ///注意后面的flag是必须的,如果不添加会导致部分浏览器不能刷新验证码
                $("#secImg").attr("src", "GetSecurityCode?flag=" + Math.random());
            });
        }
    </script>


    <form action="CheckSecurityCode" method="post">
    <div style="width:100px;height:80px;margin:50px auto">
        <input type="text" id="securityCode" name="securityCode" required>
        <p><img src="~/Home/GetSecurityCode" id="secImg" title="换一张" /></p>
        @*如果不添加 ~/Home/ 则有时会出现404错误,Home 代表控制器的名称,也就是HomeController*@
    </div>
        <p><input type="submit"> </p>
    </form>



    方法二:


    下面贴上代码:

    <script type="text/javascript">
        window.onload = function () {    
            $("#secImg").click();      
        }
    </script>


    <form action="~/Home/CheckSecurityCode" method="post">
    <div style="width:100px;height:80px;margin:50px auto">
        <input type="text" id="securityCode" name="securityCode" required>
        <p><img οnclick="this.src= document.location.protocol + '/Home/GetSecurityCode?flag=' + Math.random(); " id="secImg" title="换一张" /></p>
         @* 注意后面的flag是必须的,如果不添加会导致部分浏览器不能刷新验证码 *@
    </div>

    <p><input type="submit"> </p>
    </form>


    结束!!!!!!!!!!!!!!!!!!!


    下面来张运行成功截图:






    写在后面:大家发现错误一定帮我指出,谢谢!


    展开全文
  • 二维码扫描web端实现登录

    千次阅读 2016-03-01 11:13:23
    下面介绍二维码扫描登录原理, 首先需要web服务端,和app客户端。 web服务端主要工作是生成二维码,检测客户端提交信息正确性,更新网页界面。 app客户端主要工作是扫描二维码,提交账户信息(此不是指...
  • 开发笔记 - 客户端-Web端同步登录

    千次阅读 2015-12-05 09:41:52
    前言:我们在做客户端开发,有时候难免需要加载网页,这时候就会涉及...没错,你在客户端已经登录了,但是web端(即网页)和客户端使用的是两种不一样的登录机制。所以我们需要告诉网页,我在客户端已经登录了。 我之前
  • 仿微信的二维码登录功能:客户端登录后,通过扫描web端页面上的二维码,实现同一用户在web端登录 演示地址:dev.jiangkunlun.com 实现思路 访问web页面时,如果未登陆,会根据随机字符串生成二维码,显示...
  • 使用海康威视设备在Web端显示实时视频

    万次阅读 热门讨论 2018-12-03 21:19:27
    目前做的项目,需要Web端显示实时视频数据。本次项目使用的是海康威视的摄像头进行实时监控。 硬件:萤石的摄像头(海康威视旗下的),海康威视的硬盘录像机。 软件:vlc 2.2.6版本。 Web端和移动端接入萤石云平台...
  • 使用QQ互联建立web端腾讯自定义第三方登录在项目开发中需要在web端使用QQ第三方登录功能,查阅相关资料,开始处于一种云里雾里的状态: QQ互联官方JS文档 最后在几番尝试后终于解决了这个问题。 :: [QQConnect]...
  • Flask后端实践 连载十六 Flask实现微信Web端及APP端登录注册,本文将实现微信Web端和APP端登陆注册,本文基于python3编写。某天,项目经理说,项目上除了本身自带的登陆注册,也需要第三方的登陆注册。方便用户使用...
  • 关于使用selenium工具调用Firefox浏览器登录淘宝、京东web端的试验 ** 1、环境配置(软件安装相关知识大家可在网上查找) 以下是我使用的版本: Firefox 24.0 selenium-2.53.2 2、测试脚本 此次使用的语句都是...
  • web端扫码登录实现流程

    千次阅读 2019-09-23 15:51:50
    扫码登录的关键点在于pc如何知道当前扫码的是哪个用户。 实现原理为: 1. 服务端生成一个包含有一个唯一标记的二维码 2.客户端扫描该二维码的时候将用户ID和唯一标记 一起发送给服务端 3.二维码所在页面放置一...
  • 微擎web端取消登录权限

    千次阅读 2018-01-12 14:20:48
    需要在设计新模块中添加规则设置
  • Teamcenter Web 自动登录 (SSO)

    千次阅读 2014-09-16 18:24:37
    使用以上方式进行验证,在客户端的话就必须要安装 JRE. 插件安装本身就是一个扰人的动作, 而且对于各...所以, 是否有替代Java Applet 的方式实现浏览器的自动登录? 答案是肯定的。 可以使用NTLM 或NTLMV2 协议。
  • 关于Facebook Web端第三方登录

    千次阅读 2019-05-28 11:15:57
    1.集成并测试facebook1.注册开发者账号2.创建应用2.代码块3.测试结果 1.注册开发者账号 登陆facebook开发者平台 ... 2.创建应用 如图: ...我们是做PC的第三方登录,所以选择的是facebook登录。 按照对应的,一...
  • 1.2.具体实现把第一个if()后加else{return ""},不为空就不让登录即可。(具体代码根据具体需求) 3.在第一次登陆的时候把user信息放入session 4.在登出的时候5.总的来说,其实也就是加了唯一标识。通过唯一标识...
  • 海康威视Web端视频开发

    万次阅读 热门讨论 2019-06-16 22:05:34
    1简介 1.1内容简介 Web 控件 V3.0 基于 ActiveX 和 NPAPI 开发,接口封装于 javascript 脚本,以 javascript 接口形式提供用户集成,...使用海康威视设备在Web端显示实时视频https://blog.csdn.net/qq_38289815/...
  • 一直在做商城项目都是混编APP,即native中嵌套web,如何实现在客户端登录后监听Web端登录。解决方案: 在客户端webview设置CooKie,加载webview时存进去,这样webview中就可以接收到数据,不仅仅做登录,也可以做...
  • Web端与APP端区别

    万次阅读 多人点赞 2019-05-27 01:18:51
    Web与APP区别: 1、web基于浏览器, app必须要有客户端 2、web关注响应时间,app还需要关注流量、电量、手机本身的硬件条件 3、兼容方面,web是浏览器兼容,选择不同的浏览器内核,app是手机,有不同品牌,android和...
  • 关于Google Web端第三方登录

    千次阅读 2019-05-27 17:33:26
    1,打开google api中心创建或者选择一个项目 ...这是登录到Google,然后创建一个凭据。这个凭据会包含appId 你使用什么就创建什么。 3,代码块 只需要更改下clientid 就行。
  • 起初的想法是类似于QQ扫码登录,BILIBILI扫码登录一样,通过手机确认后,在web端重定向完成登录 通过对BILIBILI扫码功能的解析,自己实现了一套类似扫码登录的功能 以下为伪代码,仅供查阅 前端 需要两个路由,两...
  • 扫码登录的简单实现-Web端

    千次阅读 2019-10-08 12:09:37
    扫码登录成功后自动切换。 一、需要用到的库 本实例使用vue,二维码生成使用jquery-qrcode.js 二、index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> ...
  • 1 电脑网页唤醒qq客户端 http://shang.qq.com/v3/widget.html 先在qq推广申请下,几分钟就弄好了,不然会有提示 ...2 手机web唤醒手机qq 首先加个a标签的点击事件 咨询客服 前端可以修饰下样式 然后是个js
  • 这边我们理想是使用localstorage去存取用户登录信息,因为是保存在客户端本地,无需访问服务器,且可实现永久保存,节省网络流量 关于cookie和session和storage的详细解说网址: ... 而登录的当前时间(具体到秒)+...
  • 海康威视摄像头web端开发

    千次阅读 2019-09-04 16:29:04
    1.海康威视Web开发包 这个是海康威视自己开发的web开发包,里面含有一些demo,整体版,分屏版等等。你可以在他的demo基础上进行二次开发,即使是离线只要你的摄像头和电脑都是在同一路由下,都是可以调用的。麻烦的...
  • Web端测试六大类型

    万次阅读 多人点赞 2018-10-11 17:14:30
    Web测试主要分为六个部分: 功能测试、性能测试、用户界面测试、兼容性测试、安全测试、接口测试 1、功能测试 1.1链接测试  链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的...
  • 1、web登录页面,利用jquery.qrcode展示一个随机生成的登录码的二维码; 2、手机App扫描二维码取得登录码; 3、手机App将本地用户id+登录码通过api提交服务器; 4、服务器api,收到手机App请求,根据用户id+登录...
  • 安卓端登录web后台相连

    万次阅读 2016-08-11 09:25:29
    1.首先在后台简单写xml,按着QQ的登录界面即可 2.在Main方法中 import android.content.Intent; import android.os.Looper; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 175,201
精华内容 70,080
关键字:

如何登录web端