00:00
好,那咱们Siri了解它相关工具之后呢?哎,咱们可以什么呢?进行密码加密,那是不是Siri的这个自带的登录认证,它就有密码加密相关功能的啊各位这块再说一下,它自带的登录认证是不带加密的啊,咱们想要实现啊,有这个加密相关的认证操作的话,需要做一件事儿啊,需要自定义登录认证,也就是自定义这个real啊,咱们需要自定义它啊,那这块呢,怎么自定义啊,其实之前带着各位啊,咱们去了解这个相关的诶登录认证的操作的时候就已经说过啊,不知道各位是否还有印象啊,咱们点开登录认证再去看一眼啊,往前翻登录认证,咱们能看到在这登录认证的基本流程,你想要自定义run类的话,需要咱们做一件事,需要继承下啊,咱们对应的什么呢?啊,Authentication rump这个相关的类啊,需要继承它,然后呢,去实现IDO get。
01:01
Authendication info方法啊,咱们需要去把这个方法去实现出来啊,这是啊,咱们想要哎去改默认的啊,咱们的登录认证方式啊,往认认证方式里面添加加密的这个元素的话,哎,咱们需要自己去实现它,那怎么去做呢?带着各位啊,咱们把这块呢,登录认证啊,这个加密的这种实现方式啊,咱们去了解一下,创建一个我自己的哎软M类啊,咱们去创建这套它,呃,直接进到咱们搭建好的环境啊,在这环境下,咱们去创建一下,直接还是这个工程目录下,咱们创建一个新的类啊,咱们自己的这么一个什么的,还RA类,哎,咱们需要做什么,是不是要继承下对吧?哎继承下咱们的什么呢?Authentication啊,MP类啊,咱们需要完成一个继承操作好sdication run啊在这啊,咱们什么呢?哎,直接去什么呢,继承下他。
02:01
啊啊,在这里面咱们需要去实现相关的方法啊,就是它啊,咱们什么呢?Do get authendication info啊在这里面咱们需要做的事情啊,在这里面加咱们自己的,呃,这个相关的实现方式啊,这块呢,需要做的事啊,咱们先把步骤捋捋啊在这儿咱们需要做什么操作,但是各位咱们去捋一下,首先啊,咱们自定义的登录认证方法啊,这个咱们去创建它,诶自自定义的登录认证方法。好,那这块呢,哎,咱们的这个,哎,咱们也捋过圆码,但是各位一层一层去挖的啊,这个C啊,它的什么login方法,底层是不是会调用咱们对应的这个类里面的方法,对吧?诶通过调用咱们的方法进行个登录认证,会调到它,哎所以咱们在这在这块啊,咱们去实现啊这块呢,哎就可以进行一个改造啊,咱们把这写一下,哎这块呢,S。
03:04
哎,C的什么呢?哎,Login方法,Login方法,哎会什呢?哎,底层会调用该类的认证方法进行动物认证。哎,会调用底层啊,咱咱们底层会调用相关的方法进行认证,然后呢,诶咱们还不着急啊,这个咱们把这块呢,哎,这个买room啊去实现之后呢,还得做一个事儿啊,千万别忘了你需要通过配置啊,告诉咱们的框架,哎,咱们有自己的这个什么呢,诶对象room对象,所以这块呢,需要再做额外的一些操作啊,咱们需要配置自定义的什么的RA生效,这是必须要做的啊,得需要配置,需要配置一下啊,咱们自定义的RA生效。
04:11
哎,需要咱们进行一个配置,在哪配置呢?一个,哎咱们什么呢?现在采用的配置方式什么,是不是ini文件对吧,在ini文件中可以配置。哎,这是可以的,那还可以怎么做呢?或者哎,咱们还可以什么呢?在SP boat啊,这个在SP boat框架,咱们如果之后跟SP boat进行整合之后,可以在咱们的SP boat中进行配置。哎,这是必须要有的步骤啊,咱们要需要进行一个什么呢?哎,进行一个配置操作,但得说下该方法呢,哎,只是获取进行对比的信息啊,只是做一个信息的一个获取啊,咱们需要知道该方法。
05:06
该方法啊,这块呢,只是获取进行对比的信息。什么意思啊,这块呢,哎,不是通过咱们这个什么呢?哎,Do get,哎,咱们的authentication info啊这个方法进行一个什么呢?相关的登录认证啊,咱们还有什么呢?哎,完整的底层的登录认证逻辑啊,咱们是通过这个方法去获取啊参与认证的这个信息,咱把信息都获取到啊,认证逻辑呢,还是得按照C的底层认证逻辑完成。还是按照咱们的。
06:03
哎,底层认证逻辑完成。哎,相当于咱们这就是啊,这个通过咱们的买RA啊,咱们进行一个什么呢?哎,这个认证信息的一个改造啊,在里面添加咱们的什么呢?这个加密相关的元素,然后之后呢,诶返回相关信息,然后呢,由咱们的还是CR底层的认证逻辑啊完成怎么认证操作啊各位这块一定要清楚啊,咱们对应的这个方法,它的的对应的作用,好,那继续再往下,咱们说说步骤啊,首先第一个诶咱们按照步骤来吧,第一个我先去什么呢?通过咱们的这个传递过来的参数,咱们可以看到传递过来参数有什么,是不是咱们的,哎,Altthentication,诶token啊通过咱们的token的这个什么呢?对象咱们去获取身份信息啊,咱们先把这个身份息拿到手,第一哎,获取身份信息。
07:03
先把身份信息拿到手,那第二咱们什么呢,获取这个凭证信息。哎,把凭证信息咱们也拿到手,这是第二步,然后呢,第三呢,哎,咱们做什么事呢?哎,这个如果是真正啊,咱们做登录认证,你是不是得去,诶访问一下咱们的数据库啊,哎哎,访问咱们数据库获取什么呢?是不是数据库中存储的用户信息啊啊,咱们得把这个数据库中存储的用户信息获取到,哎,获取。在这个数据库中存储了用户信息。好,把这些信息都获取到之后,哎,封装到咱们的什么呢?校验逻辑对象,然后之后呢,哎,咱们把这个对象返回就可以啊,这是第四步啊,咱们进行一个数据封装,第四啊,咱们什么呢?哎,创建啊封装什么的,校验逻辑的对象。
08:17
创建啊校验。啊,创建啊,封装校验逻辑的对象。哎,创建好这个对象之后,把数据封装进去啊,直接什么的,封装数据直接返回就好,封装数据返回。哎,这是带着各位啊,把咱们的步骤捋一捋,那这块呢,带着各位啊,咱们去什么呢?哎,分别都把它实现出来啊,通过咱们的token字符串,哎在这儿,哎通过咱们的token对象,哎把它什么呢?诶咱们所需要的这个什么呢?哎,这个身份信息获取到啊,咱们的第二下诶直接调方法获取成诶get一下,获取一下咱们的P啊咱们获取一下咱们的身份信息啊,但是呢,我这块想要把它输出一下,看看里面身份信息啊,所以点儿诶咱们直接诶转化成字符串啊,拿到这个用户的身份信息啊,把身份信息拿到手就叫P吧。
09:21
诶拿到咱们的用户的P啊,咱们对应的身份信息拿到手好拿到这个身份信息之后呢,诶咱们,哎可以什么呢?哎,这个再去获取一下他的什么呢?凭证信息啊,也就是咱们的password啊把password也获取到,诶直接什么呢,获取一下咱们的password。哎,把密码也获取到啊,咱们也输出一下看看啊,就直接输出一下相关信息去看一下,在这块呢,直接去啊,你用一下咱们的什么呢?还是new一个字符串啊,咱们什么呢,直接转化成字符串啊,咱们给它什么呢?输出一下看看,哎,还是通过咱们的这个token对象获取相关的信息就好,他N对象点一下哎,获取咱们的什么呢?凭证信息,然后呢,还得给他做一个转型操作啊啊转向型。
10:20
好这块呢,哎,咱们什么呢?哎,这个拿到咱们的这个密码相关的信息,获取咱们的凭证信息啊,这是啊完成咱们的凭证信息的获取,这两部分数据都获取到之后呢,咱们输出下看看啊,看一下这个相关的信息,直接out就行,哎输出一下诶用认证用户的信息。呃,通过传递过来的这个参数啊,咱们去什么呢?确认一下啊,这个用认证的这个用户信息是什么?首先啊是咱们的身份信息输出一下,然后再加上咱们的passwor的密码啊,咱们把这个密码也输出一下,发错的密码咱们也输出一下啊这时啊,咱们把这个认证的用户信息拿到手,然后之后呢,哎,咱们要获取数据库中的这个用户的信息,那这块呢,呃,同样咱们什么呢?根据咱们的这个用户身份信息啊,到数据库里面进行查询,那当然我这块就只只能什么呢,模拟一下吧,If判断一下,咱们模拟一下啊,比如说哎,我这判断一下这个什么呢?哎,咱们还是以张三为例吧,哎,判断一下咱们的用户认证信息啊,是否为这个张三啊,在这进行了判断,比如EQUAL3啊这块的张三。
11:39
哎,是不是张三啊,如果是的话,哎,咱们去什么呢?哎,从数据库里面获取它相关信息啊,进行查询这块呢,哎,咱们啊在这里面写吧,这是3.1,哎咱们的小的步骤,哎3.1咱们需要什么呢?哎从从数据库里面查询出啊已经加盐迭代三次的,哎加密的密码,也就说咱们数据库里面存的肯定不是铭文了啊,咱们要存这个密文也就数据库啊,数据库中啊,咱们的什么呢?呃,数据库中啊,咱们已经什么呢?哎,这个。
12:13
加迭代啊,加盐进行迭代,三次加密的密码。哎,数据库中存储的,哎,加盐三次迭代。三加元三次迭代的什么呢?这个密码咱们去获取到。哎,把这个密码咱们去获取出来啊,这是啊,咱们什么呢,进行一个一个这个参数的获取啊,咱们直接在这儿字符串啊,咱们设定一下就叫啊这个password什么的info吧,Password info。Pass的衣啊,让它等于咱们的这个加盐迭代三次啊,正好在这儿啊,咱们是不是有这个相关的,哎,这个结果对吧?哈,上次咱们写的DEMO例子啊,里边有啊加盐三次迭代相关的密文,咱们拿到手设置一下,然后之后呢,在底下啊咱们去什么呢?哎,这个创建咱们的封装的对象,然后呢,直接返回就好,塞入相关参数就成,那这个对象就是什么呢?哎,Authentication info啊就是它authentication info,咱们起名就叫info吧,哎直接去什么呢?New一个,哎new一个什么呢?哎,Simple的啊,咱们的对应的simple authentication info啊这个你一下它就成,哎设置参数呢,咱们可以看看啊,也分别有四个,第一个是咱们的什么呢?哎,对应的身份信息,但是不是字符串类型的啊,咱们的身份信息获取到塞进来,然后第二个是咱们的什么呢?诶在这儿可以看到第二个参数啊,是咱们所对应的什么呢?诶这个相关的。
13:56
的这个密码信息啊,咱们塞进来,也就是咱们的呃进行加,然后呢,三次迭代后的密码信息塞进来,还有咱们的对应的呃,这个这个咱们创建的盐相关的信息啊,注意它的类型,哎,咱们要借助什么呢?诶这个C给咱们提供的工具啊,这块呢去获取到啊设置一下咱们的这个盐相关的信息,然后再往后呢,就是咱们对应的RA name啊RA name是什么呢?就是咱们呃已经什么呢获取到的啊这个在这啊咱们的身份信息,然后呢,转化成字符串类型就可以啊咱们把这个四个参数分别设置下,然后在这儿设置一下相关参数。
14:34
然后第一个哎,是咱们的什么呢?哎,这个去获取一下咱们的身份信息,直接在这儿啊去获取就成,还是通过咱们的token.get一下就成,获取点身份信息,然后第二个是咱们的这个相关的密码信息啊,这个p WD info啊经过加盐啊迭代三次的密码,然后之后呢,诶借助咱们的这个,诶借助这个C给咱们提供的工具啊,咱们去什么呢?设置获取下咱们的盐相关的信息,直接点一下,哎设置下咱们的盐的信息啊,这个直接呃就设置下流程啊,咱们简就跟之前啊,咱们设置这个加密的时候,设置这个言信息要保持一致啊,哎设置下延相关信息,然后之后呢,诶最后一个就是咱们对应的什么呢?诶,Room name啊,这个直接还是要咱们获取到这个身份信息,转化成字符串就好,第二呃,这个to string转化成字符串C进来就可以啊,最后的最后啊,当你封装。
15:35
定个对象之后,别忘了return什么的info啊,进行一个返回就好啊,把咱们的所需要的信息进行返回,但啊但这块咱们这个方法啊,并没有去做一个认证操作,认证是由谁来做,是由sir底层来实现的啊,这是完成咱们对应的这个DEMO,然后呢,还没完啊,咱们想要去认证它还得做一些改造,咱们这也说了啊,需要进行一个什么呢?哎,配置一下啊,咱们让咱们的自自定义的这个买RA啊,进行一个生效操作,添加配置信息啊,咱们参考这个课件就可以,好像啊,咱们去添加配置信息啊,关于MD5加密的配置两项,还有咱们的什么的设定一下my room啊,这个相关的信息咱们也给它添加上啊,哎,把这个相关的配置直接添加到咱们对应的工程中的配置文件,咱们找到这个ii啊,去直接去添加一下这个相关信息就行了,还是啊添加到最上面吧,诶添加上这个相关信息,然后呢,咱们啊就最好也跟咱们。
16:35
的课件保持一致啊,加上这个标识慢啊,这给它添加一下。好,咱们可以看到在这指定啊,这个咱们要使用的RA啊,买RAM是谁啊,就是在这指定一下它所在的路径啊这块呢,哎,咱们选择相关的什么指定的对象,在这儿也告诉咱们的security security manager啊,你使用的这个ras呢,是谁?就是啊咱们指定的这个什么呢?买RA啊在这儿指定一下啊这个这块一定要注意,还有底下这块的密码呢,你就啊这咱们啊这块呢,也干脆模拟模拟全了啊咱们这块呢,也不存铭文了啊咱们啊这块也改成秘文啊,这改成咱们的啊这个加盐迭代三次的秘文,然后之后呢,咱们还是打开咱们最开始啊这个实现的那个什么呢?诶登录认证啊,这个相关的方法咱们再运行一次,这回要走的是啊,咱们的什么的自定义的MY啊这块呢,进行咱们传递的,诶这个用户信息啊,咱们的对应的什么呢,在这儿啊密码进行一个,诶加盐三。
17:42
自迭代加密,然后呢,进行个比较,哎跟咱们什么呢?哎,这个在这儿,哎配置好加盐三次迭代的这个相关的密码进行比较,看是否一致啊,咱们再次运行一下,哎,咱们看效果跑起来。
18:00
好,咱们看一下相关信息啊,这块首先咱们看到是不是登录成功对吧?诶没问题啊,这块呢,咱们诶这回就是登录是带什么呢?带咱们的家宴,还有三次迭代加密的来实现咱们的加密的密码校验啊,这是啊,咱们可以在这个原由啊,这个Siri给咱们实现的登录认证的基础上进行扩展啊,实现咱们的扩展操作。
我来说两句