2014年5月21日星期三

带你走近AngularJS - 体验指令实例

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
带你走近AngularJS - 体验指令实例  阅读原文»

带你走近AngularJS - 体验指令实例

带你走近AngularJS系列:

  1. 带你走近AngularJS - 基本功能介绍

  2. 带你走近AngularJS - 创建自定义指令

------------------------------------------------------------------------------------------------

之前我们已经介绍了所有的AngularJS 基础知识,下面让我们通过实例来加深记忆,体验自定义指令的乐趣。

我们展示的第一个例子是手风琴效果指令:

效果图如下:

image
在线实例地址:手风琴指令

不使用AngularJS的纯HTML源码如下:

divclass"accordion"id="accordion2">
divclass="accordion-group">
divclass="accordion-heading">
aclass"accordion-toggle"data-toggle="collapse"
data-parent="#accordion2"href="#collapseOne">
CollapsibleGroupItem#1
<divid="collapseOne"class="accordion-bodycollapsein">
<divclass="accordion-inner">
Animpariaturcliche...
<divclass="accordion-group">
<divclass="accordion-heading">
<aclass="accordion-toggle"data-toggle="collapse"
data-parent="#accordion2"href="#collapseTwo">
CollapsibleGroupItem#2
<divid="collapseTwo"class="accordion-bodycollapse">
<divclass="accordion-inner">
Animpariaturcliche...

以上纯 HTML源码也可以实现手风琴效果,但是它仅仅是一些标记,包含了大量的链接和id,不利于维护。

使用AngularJS自定义指令结合以下HTML源码同样可以得到预期效果:

<bodyng-app="btst">
<h3>BootStrap手风琴指令</h3>
<btst-accordion>
<btst-panetitle="<b>基本功能</b>"category="{name:'test'}">
<div>AngularJS......</div>
<btst-panetitle="<b>创建自定义指令</b>">
<div>使用过AngularJS......</div>
<btst-panetitle="<b>体验实例</b>">
<div>之前我们已经介绍了所有的AngularJS......</div>
</btst-accordion>

这一版使用的HTML标记更少,看起来清晰且易维护。

下面,让我们看下指令写法。

首先,我们定义模块"btstAccordion" 指令:

varbtst=angular.module("btst",[]);
btst.directive("btstAccordion",function(){
"<divclass='accordion'ng-transclude></div>",
link:function(scope,element,attrs){
//确保accordion拥有id
解决企业子CA无法检查吊销的问题  阅读原文»

解决企业子CA无法检查吊销的问题

作者:兰晓宇

【引言】

"大数据"时代的到来已经势不可挡。在海量的数据面前,已经有越来越多的人意识到大数带来的挑战。其中非常重要的一项挑战就是信息的安全。在这样的背景下,加密技术得到了非常广泛的应用,而证书,作用加密技术中密钥传递的载体,也已被广泛。

对于较大型的企业,单一的证书颁发机构(后简称CA)已不能满足业务和管理的需求,在部署层级CA的过程中,很多管理员会遇到子CA的服务无法启动的情况,本文将带你探索原因并解决问题。

【正文】

1.设计离线根CA

CACA证书为自签名,在证书的信任链中,处于顶端,保护根CA的安全对整个证书的结构非常重要。为此,我们可以用工作组服务器部署离线根CA

离线的根CA,并不直接面向证书申请者,而仅仅是为子CA颁发CA证书。也不需要与企业的网络环境相连,申请证书时,用移动存储设备将子CA的申请文件复制到根CA即可。之所以要用工作组状态的计算机,是因为域内的计算机脱离域环境60天后,安全通道会过期,即信任关系失效。

2.部署企业子CA

在按照正常的方式部署完成企业子CA,申请并安装完证书后,很多管理员会遇到如下的报错,并无法启用子CA

wKiom1N7KUyD6sGiAAHJj_qbyms996.jpg

出现这一错误,是因为我们的根CA是处于工作组状态,并不能成功发布吊销列表。由于我们的根CA仅仅是为子CA颁发CA证书,所以其吊销列表意义并不大,我们可以通过一行命令,关闭子CA验证吊销列表这一动作。命令如下:

certutil.exe -setregca\CRLFLags +CRLF_REVCHECK_IGNORE_OFFLINE

wKioL1N7KS-Tn31fAAFpZ2ap18U242.jpg

再次启用子CA,即可成功开启:

wKiom1N7KW2BvkntAACpyy3MnHw871.jpg

如果要再次开启验证吊销服务器,可以将+变成-

certutil.exe -setreg ca\CRLFLags -CRLF_REVCHECK_IGNORE_OFFLINE

3.刨根问底

其实问题至此,已经解决了。但本着刨根问底的劲头,我们再来深入挖掘一下。因为有些管理在部署层级CA的时候,并没有遇到这个问题。

那是因为,这部分管理员部署的根CA并不是工作组状态的,而是域内的成员计算机。为此,我们来看一下,成员计算机默认情况下的吊销列表发布信息:CA管理控制台-右键点击CA服务器-选择属性-点击扩展标签。

在这一标签中,我们可以看到默认情况下,吊销列表会发布到AD的配置分区下面。

wKioL1N7KUuwirZeAAJtq-Nsbn4446.jpg

接下来我们按照这个路径,利用ADSI编辑器查看一下已发布的吊销列表:

wKiom1N7KYOQNDY9AAFdVZMzmGI049.jpg

这就是为什么当根CA是成员计算机时,并无报错,但是当根CA是工作组计算机时,便无法开启的根本原因……

分享至 一键收藏,随时查看,分享好友!

阅读更多内容

没有评论:

发表评论