00:00
啊,咱们去了解一下Siri的基本功能啊,借助底下这张功能图啊,咱们去学习一下。啊,通过这张图咱们能看到啊,在咱们的这个Siri里面啊,包含主要分成两大类功能,它的主要功能还有次要功能,主要功能第一个啊就是它,哎authentication啊,认证登录功能啊,我来个标注,这是咱们的认证登录啊,再往后呢,就是啊也是用的非常多的,哎,Author啊这是咱们的一个授权功能,也就是验证下咱们这个用户啊,是否有这个相应的权限啊做这个授权权限验证的相关功能我写下。哎,咱们可以验证,诶这个验证一下咱们的用户啊,是否拥有某个权限啊,去判断一下啊用户用户能否做相关功能啊,其实这是咱们用的非常多的啊相关功能再后诶session management啊,咱们的会话管理,哎,这也标注下是咱们的绘画。
01:17
哎,会话管理啊,这是咱们的用户登录,诶之后就是一次会话,在没有退出之前啊,它的所有信息都会存在咱们的绘画当中,那既可以什么呢?这个绘画既可以是咱们普通的Java SE的环境,也可以是咱们的,诶外部环境都是可以的,那暂后呢,就是咱们的qui啊,咱们的加密功能,这也是啊,呃,这个S给咱们提供的功能加密啊,像咱们这个有些敏感数据啊,比如说咱们的密码可以加密存储到咱们数据库当中,哎,保证咱们数据的一个安全性,那再往后呢,次要功能,哎,咱们的we部spot啊,这是咱们的外部的一个支持啊,这块呢,哎,可以说啊,咱们Siri可以非常容易的集成到咱们的外部环境,还有再往后,哎,咱们的catching啊,咱们的缓存功能啊,用户登录之后呢,呃,用户信息啊,包括拥有的用户的角色呀,权限啊,这些都可以。
02:17
存在咱们的缓存当中啊,不需要每次都去查,这儿提高了咱们的呃,这个安全认证的这么一个效率啊,这也是啊,咱们呃使用安全框架肯定要考虑到,那再往后呢,就是咱们conency啊,这是这个咱们Siri也支持啊,多线程应用的一个什么的并发炎症啊,在一个线程中啊,开启另一个线程啊,咱们可以把这个权限自动传播过去,这也是它的一个优势啊,还有testing啊,这块呢,Siri也提供咱们的测试相关功能,哎,这是啊,在测试方面也给咱们提供了相关的一些功能,那暂后呢,Re啊re啊,这个顾名思义就是允许一个用户诶,假装成另外一个用户登录,当然这是必须要进行允许啊啊,用另外一个用户的身份进行一个登录访问啊,这是res,还有再往后啊,这是咱们的remember me啊什么呢?记住这也是啊,咱们做登录经常会用到的功能,哎,记一次登录之后呢,下次再来。
03:17
就不需要再做这个登录的步骤了啊,这是咱们了解一下呃,Siri给咱们提供功能啊,主要的功能有这个四个,然后后面还有很多咱们次要功能,可以实现咱们的这个日常的一个权限认证啊,咱们的这个对应的登录操作。好,那咱们再去了解一下Siri的这个架构原理啊,咱们通过两个角度来看啊,一个是通过外部来去看,然后再一个咱们什么呢?进到哎sir的内部啊,咱们去了解一下内部的架构什么样啊,带着各位咱们去捋捋,那首先第一个咱们还是以这张图为例啊,咱们去看一下,诶外部的角度来看啊C啊,它进行一个呃安全校验,进行一个权限校验,它的这个相关的什么呢?哎,这个流程是什么样啊,它的架构是什么样?首先第一个啊,咱们能看到啊,Application code的就是咱们的应用程序啊应用程序哎,去跟咱们S型交互呢,传递的对象就是他,呃,Subject啊,咱们subject的对象,那subject对象呢?呃,就是咱们所对应的当前用户啊,既可以是当前这个,呃,登录的这个人啊,具体的这个用户啊,这个人可以也可以是什么呢?呃,任何的这种对象啊,就可以是咱们的网络爬虫也可以,机器人都是可以的。
04:38
啊,这就是啊,哎,咱们对应的一个呃,进行身份校验的这么一个对象subject,那真正来做这个身份校验,来进行咱们的安全校验的是谁?就是底下咱们sra security manager啊,咱们的安全管理器啊,这是啊,通过咱们这张图也能看出来啊,咱们的呃,这个安全管理器是妥妥的C位啊,啊是咱们的sir位的核心啊,咱们的安全管理器可以什么呢?进行相关调度,哎,这个使用咱们的sir位的各种工具啊,对咱们的subject对象进行个安全校验,那问题就来了,那我这个用户做校验,那这个用户在咱们的sirr里面啊,这个咱们在咱们系统的当中存的那个相关的,呃,这个认证信息啊,角色信息啊,权限信息啊,这些信息在那儿啊,这块呢,就是底下啊,咱们的RA啊,就是它了啊,咱们sir通过RA去获取咱们的安全数据啊,这块呢,也就是咱们的安全管理器要验证。
05:38
的信息直接通过咱们的rap去获取,然后呢,诶咱们,诶这个咱们RA也可以看成咱们的所对应的什么数据源啊,这是啊,咱们通过外部角度了解一下怎么进行安全校验,也是通过咱们的应用访问咱们的这个sirr啊,传递啊subject对象,然后呢,哎,咱们的server啊,这个安全管理器调各个工具啊,哎,通过咱们的RAM里获取这个相关的安全数据啊,这块进行个安全校验啊,咱们去了解一下啊,这个外部角度去看它的架构什么样,那再去看看内部啊,啊再往下翻,咱们看下面这张图,内部其实这块呢,里面有很多咱们熟悉的角色,首先上面这块各位可以看到各种语言就是什么,是不是咱们的应用程序,对吧?哎,咱们的应用程序啊,通过应用程序,也就是上面这个外部这张图,也就是咱们的这个application code啊这块呢,各个应用程序访问咱们的server啊,在server里面进行安全校验,那这块传。
06:38
这个对象就是刚刚看的啊,Subject在这儿,一个一个subject的对象,哎,传进来进行的校验,在咱们的这个sirr里面,内部都有什么啊,咱们可以看到啊这位熟悉的身影,比如说负责认证的认证器,还有这个负责哎咱们的这个权限相关的授权,还有咱们的权限验证啊,相关的什么的授权器,还有在底下啊,咱们刚刚说过的RA啊,它既可以是一个也可以是多个啊这块呢,哎,对应着啊,这个各个数据源也是可以的啊,这块呢,去获取咱们的安全信息啊,用户相关信息啊,Subject所对应的用户的这个相关信息,咱们的权限信息,还有角色信息都可以获取到,然后还有咱们绘画相关的,还会画管理器,还有这个诶,负责咱们管理内存的啊,这个管理缓存的,哎,咱们呃,这个缓存管理器,然后还有啊咱们的什么的,诶密码呃,功能负责进行加密啊进行一个什么呢。
07:38
诶,这个数据加密,咱们的保证数据安全性的密码模块来实现咱们的加密操作啊,这是通过内部咱们去了解一下这块呢,诶建议各位咱们通过原理还有它基本功能,把这个Siri咱们去掌握一下,呃了解一下它到底怎么进行一个什么呢?诶这个认证操作,认证验证啊咱们的呃,这个授权还有这个权限校验的啊,通过这个底层架构图咱们去了解一下,那之后呢,诶咱们把这个sir做一个初步的一个了解之后,那咱们什么呢?拿直接啊去搭环境,咱们写一些DEMO例子,哎拿DEMO例子去了解一下这个C到底怎么做的,这个相关验证啊实现它的,诶登录认证,还有角色授权相关的功能。
我来说两句