MS dynamics CRM 安装部署和使用之八声明认证的内部访问.docx
《MS dynamics CRM 安装部署和使用之八声明认证的内部访问.docx》由会员分享,可在线阅读,更多相关《MS dynamics CRM 安装部署和使用之八声明认证的内部访问.docx(25页珍藏版)》请在冰豆网上搜索。
MSdynamicsCRM安装部署和使用之八声明认证的内部访问
MS dynamics CRM 2011安装部署和使用之八:
声明认证的内部访问
(2012-04-1700:
18:
22)
转载▼
标签:
crm
dynamics
crm2011
客户关系管理
感知网
it
分类:
DynamicsCRM
配置基于声明的认证--内部访问
这里需要如下4个步骤:
1)安装和配置ADFS2.0
2)在CRM2011上设定基于声明的认证
3)在ADFS2.0上设定基于声明的认证
4)测试基于声明的认证方式
本文参考了:
安装和配置ADFS2.0
在内网的访问的流程如下,参见之前的介绍
在这里ADFS2.0负责向客户端发送token。
需要注意的是,ADFS2.0默认必须安装到DefaultWebSite,CRM2011安装在另外的站点,如下图。
如果不是这样,那你就要重新安装CRM2011了。
下载ADFS2.0RTW
安装 ADFS2.0在安装向导,选择“联合服务器”,确认安装完成。
完成时,勾选“启动ADFS2.0管理单元”
配置 ADFS2.0
ADFS2.0管理界面,选择配置向导,
选择“创建新的联合身份验证服务”,下一步
选择”独立联合服务器“
联合身份验证服务名称,输入crm.starv.tv。
说明:
对于多个服务器的,可以设定为”sts.starv.tv"
选择下一步直至完成安装
验证ADFS2.0工作
打开IE,输入联合元数据的URL地址
https:
//crm.starv.tv/federationmetadata/2007-06/federationmetadata.xml
说明:
1)crm.starv.tv之外,其它URL部分是固定的
2)对多个服务器的情况,这里的地址是sts.starv.tv
对于弹出的警告,确认继续,此时IE会打开XML文件,表示ADFS2.0工作正常
在CRM2011上配置基于声明的认证
打开CRM部署管理器(开始--部署管理器)
选择DynamicsCRM,右键,选择“属性”
选择WEB地址,绑定类型,选择HTTPS,
现在设置的地址是给内网访问的,我们设定一个域名“internalcrm.starv.tv",端口是刚才设定CRM的SSL端口,446.确认。
如下图。
说明:
1)internalcrm.starv.tv,在DNS服务器,同其它域名一样,新建主机,并设定其A记录为当前服务器的IP地址。
这个地址只是用于内部访问,所以无需在万网等域名注册商那里增加A记录。
2)pingintercrm.starv.tv,确认域名生效
3)这里选用HTTPS,是因为联合验证为保证安全,采用HTTPS协议
设定CRMAppPool对加密密钥的读权限
CRM2011和ADFS服务器进行交互,需要指定证书进行加密,这样,就需要CRM的Web应用程序CRMAppPool的帐号,具有读证书私钥的权限。
开始,运行”mmc"
控制台菜单--文件--添加删除管理单元
左边选择证书,选择添加到右边
弹出的窗口,选择计算机帐户
选择“本机计算机”
完成,确定,进入控制台
展开证书(本地计算机)---个人--证书
在右侧,选择“*.starv.tv",右键,选择所有任务,管理私钥
(私钥通常是用来签名(加密),验证身份)
选择CRMAppPool的帐号,NetworkService具有读取权限
说明:
在IIS中可以查看CRMAppPool使用的是哪个帐号。
在IIS,应用程序池,看右侧信息。
在CRM管理器中配置基于声明的认证
打开CRM部署管理器
选择MicrosoftDynamicsCRM,右键,选择“配置基于声明的身份认证”,
在“联合元数据URL”,输入刚才建立的ADFS的元数据URL地址。
https:
//crm.starv.tv/federationmetadata/2007-06/federationmetadata.xml
说明:
对于多台服务器,URL是
https:
//sts.starv.tv/federationmetadata/2007-06/federationmetadata.xml
注意:
这个地址可以用IE直接打开,并且没有任何的和证书相关的警告才可以。
我在IE中打开时,第一次会提示不能下载,再地址栏中在刷新该URL,就直接显示XML内容了。
点选下一步
证书选择“星谷通配Web证书”。
这个证书用来加密ADFS2.0传送的认证安全token,服务安全token
下一步
确认,在完成配置后,记住界面中的URL地址,如下图。
这个地址和刚才设定的CRM的WEB地址有关,如下。
https:
//internalcrm.starv.tv:
446/federationmetadata/2007-06/federationmetadata.xml
特别注意的是,刚开始配置不成功,就是这个地址没有搞对。
验证成功:
在IE中能打开https:
//internalcrm.starv.tv:
446...erationmetadata.xml
并且没有任何和证书相关的警告
在ADFS2.0中配置基于声明的认证
配置声明提供方信任
这里需要给ADFS添加一条声明规则,将从ActiveDirectory获得user的UPN(userprincipalname),作为UPN传递到MSCRM
开始,打开ADFS2.0管理
选择信任关系--声明提供方信任(这里的声明提供方是ActiveDirectory)
选择右侧ActiveDirectory,右键,编辑声明规则
选择”添加规则“
声明规则模板:
以声明方式发送LDAP特性声明规则名称:
SendUPNfromADtoClaims特性存储:
activedirectoryLDAP特性:
Userprincipal-Name传出声明类型:
UPN
完成
确认关闭该窗口
配置信赖方信任
将CRM2011服务器配置成一个信赖方,来使用从ADFS2.0传来的声明来进行内部访问的声明认证
打开ADFS2.0管理
选择信赖方信任,右键,添加信赖方信任
启动配置
选择数据源页面,选择“导入有关联机或在本地网络上发布的信赖方的数据”
输入上一步最后得到的URL地址:
(信赖方是CRM,当然地址是CRM配置的WEBURL有关的地址了)
https:
//internalcrm.starv.tv:
446/federationmetadata/2007-06/federationmetadata.xml
选择下一步
显示名称,输入信赖方名称,如”CRMClaimsRelyingParty”
颁发授权规则页面,选择允许所有信赖方访问此规则
在“准备好添加信任”页面,选择下一步,
勾选”向导关闭时打开此信赖方信任的“编辑声明规则”对话框“
选择添加如下规则:
1)
声明规则模板:
经历或筛选传入声明
声明规则名称:
PassPrimarySID
传入声明类型:
主SID
完成
2)
声明规则模板:
经历或筛选传入声明
声明规则名称:
PassUPN
传入声明类型:
UPN
完成
3)
声明规则模板:
转换传入声明
声明规则名称:
TransformWindowsAccountNametoName
传入声明类型:
Windows帐户名
传出声明类型:
*名称
完成
确认,关闭规则编辑器
测试基于声明的认证方式的内网访问
cmd,执行”iisreset",重启IIS服务
IE打开https:
//internalcrm.starv.tv:
446/
无需输入用户名和密码,就应进入CRM页面了。
错误处理:
如果此时弹出用户名密码认证,你也确认输入正确,
但IE依然多次弹出认证信息,最终报错
应用程序“DEFAULTWEBSITE/ADFS/LS”中的服务器错误
HTTP错误401.1-Unauthorized
您无权使用所提供的凭据查看此目录或页面
解决方法:
此时你需要为ADFS2.0服务器设置一个SPN (ServicePrincipalName)。
相关知识:
在CRM部署管理器中,选择“选择基于声明的身份验证”,下一步,查看联合元数据的URL地址,
https:
//crm.starv.tv/federationmetadata/2007-06/federationmetadata.xml ,此处地址前面的域名为crm.starv.tv,取消关闭该窗口。
进入cmd窗口,
执行
setspn-ahttp/crm.starv.tvstarv.tv\STARVALLEY-CRM$
说明:
crm.starv.tv为元数据的前缀,starv.tv\STARVALLEY-CRM$形式为域名\计算机名称
执行iisreset,重启IIS
此时再打开https:
//internalcrm.starv.tv:
446/,应能直接进入CRM页面了。