SharePoint Portal Server 中的单一登录.docx
- 文档编号:27936400
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:45
- 大小:92.45KB
SharePoint Portal Server 中的单一登录.docx
《SharePoint Portal Server 中的单一登录.docx》由会员分享,可在线阅读,更多相关《SharePoint Portal Server 中的单一登录.docx(45页珍藏版)》请在冰豆网上搜索。
SharePointPortalServer中的单一登录
SharePointPortalServer2003中的单一登录
发布日期:
2004年11月08日
本示例章节来自于MicrosoftSharePoint产品与技术资源工具包.您可以从以下地址获得包括了一张附带光盘的完整的资源工具包(ISBN0-7356-1881-X):
Microsoft出版社.
"单一登录"是MicrosoftOfficeSharePointPortalServer2003中的一个新特性,它提供诸如帐户名和密码等凭据的存储和映射,以便基于门户站点的应用程序能够从诸如"企业资源规划"(ERP)和"客户关系管理"(CRM)系统之类的第三方应用程序和后端系统检索信息。
单一登录功能是由Microsoft"单一登录服务"(SSOSrv)实现的。
SSOSrv是一个允许保存和检索凭据的凭据存储服务。
使用单一登录服务功能,当基于门户站点的应用程序需要从其他业务应用程序和系统获得信息时,用户不必多次验证他们自己的身份。
在单一登录环境中,这些后端应用程序和系统称为"企业应用程序"。
为了使客户能够从门户站点直接与企业应用程序交互,SharePointPortalServer2003通过一个"企业应用程序定义"来存储和映射所指派的凭据。
通过使用应用程序定义,您可以自动化和保护从基于门户站点的应用程序对相应的企业应用程序进行的单一登录过程。
单一登录功能使得多个Web部件(WebParts)访问不同的企业应用程序(其中每个应用程序都使用不同类型的身份验证)的方案称为可能。
每个Web部件都能够自动登录到各自的企业应用程序,无须每次都提示用户输入凭据。
单一登录功能在企业环境中具有无穷无尽的用途。
例如,让我们考虑两种不同的场景--人力资源intranet站点和商业智能站点:
•
标准的人力资源(HR)门户站点或页面可能包括多个Web部件,这些Web部件显示来自后端职员管理系统的职员信息。
职员数据存储在一个通常基于SAP或PeopleSoft的专用人力资源(HR)数据库中。
这些HR数据库不支持MicrosoftWindowsID,并且可能不是运行在基于Windows的操作系统上,事实上,它们可能包括专有的登录协议。
门户站点上的Web部件应该检索各个职员的职员数据,而不是提示他们进行一次单独的登录。
在这个例子中,职员不是分别登录到HR系统中,而是使用一个可提供普通读访问权限的组帐户来访问该数据库。
换句话说,该职员不知道登录他或她正在访问的系统所需要的用户名和密码。
•
主管可以使用一个门户站点来提供相关业务信息的一个动态的、综合的视图。
这些数据存储在两个地方:
Siebel存储客户关系信息,SAP跟踪帐户和支付情况。
为了看到集成的视图,该门户必须同时登录和访问这两个后端系统。
提示用户输入附加密码是一种不可接受的用户体验。
在这个例子中,该主管不需要知道登录后端系统所需要的用户名和密码。
此外,还可以使用多个Web部件来保证这种集成。
默认情况下,每个Web部件分别向相应的后端系统验证用户的身份。
正如这些例子所表明的,通过使用单一登录,您可以在一个使用应用程序定义的门户中显示来自后端应用程序的信息。
此外,SharePointPortalServer2003还为开发人员提供了一个使用和扩展这个特性的编程接口。
本页内容
单一登录体系结构
配置单一登录
管理单一登录
创建使用单一登录的Web部件
总结
单一登录体系结构
对于SharePointPortalServer所连接到的每个企业应用程序,都有一个对应的、由管理员配置的企业应用程序定义。
Web部件使用这个应用程序定义来与门户站点中的企业应用程序集成。
应用程序定义控制着特定业务应用程序的凭据将如何存储和映射。
Web部件中的代码使用该应用程序定义来检索凭据,然后这些凭据又用于与企业应用程序集成。
这个过程对门户站点用户是透明的。
与SSOSrv服务一起使用的企业应用程序定义主要有两种类型,如下所示:
单独的企业应用程序定义。
•
在这种情况下,单独的用户知道并且能够管理他们自己的、存储在企业应用程序定义中的凭据。
组企业应用程序定义。
•
在这种情况下,单独的用户不知道他或她的、存储在企业应用程序定义中的凭据,而是与一个托管的组帐户相关联。
在配置企业应用程序定义时,是单一登录管理员(而不是单独的用户)选择帐户类型。
SSOSrv服务在一个MicrosoftSQLServer数据库中存储加密的凭据。
当您在作业服务器上设置单一登录时,将为单一登录数据库指定两个设置:
运行SQLServer的计算机(凭据存储区将位于其上)的名称,以及将成为您的Web场(Webfarm)的凭据存储区的数据库的名称。
这些设置存储在SharePointPortalServer配置数据库中。
凭据存储区中的所有凭据都使用单一登录加密密钥来加密。
当您第一次配置单一登录时,加密密钥是自动创建的。
如果需要,您可以重新生成密钥并重新加密凭据存储区;例如,您可能有一个在一定时间段之后更改密钥的策略。
单一登录是如何工作的
在使用单独的企业定义的情况下,在第一次访问与企业应用程序集成的Web部件时,如果用户的凭据还没有存储在单一登录数据库中,那么该用户将被重定向到一个登录表单,这个表单提示用户输入访问企业应用程序所需要的适当凭据。
登录表单中的字段编号、顺序和名称由管理员在应用程序定义中配置;登录表单就是基于这些配置设置自动生成的。
开发人员需要在Web部件中编写代码来检查数据库中是否存在凭据,并在必要时将用户重定向到登录表单。
用户提供的凭据然后被存储在凭据存储区中,并被映射到与该用户的SharePointPortalServer帐户相对应的Windows帐户。
之后,该用户将被重定向回原先的Web部件。
Web部件中的代码然后以适合应用程序的方式从凭据存储区向应用程序提交凭据,同时检索必要的信息,随后在Web部件中向用户显示这些信息。
这个过程如图26-1所示。
其中的步骤如下:
1.
用户第一次访问与企业应用程序集成的Web部件。
Web部件代码检查所需要的应用程序的用户凭据是否存储在单一登录数据库中。
如果凭据存储在该数据库中,这个过程将从清单中的第6步继续进行。
2.
如果没有为该用户存储所需要的应用程序的凭据,用户的浏览器将被重定向到这个应用程序的登录表单。
3.
用户提供该应用程序的凭据。
4.
所提供的凭据被映射到该用户的Windows帐户,并存储在单一登录数据库中。
5.
用户被重定向到原先的Web部件。
6.
该Web部件从单一登录数据库中检索凭据。
7.
Web部件向企业应用程序提交凭据并检索必要的信息。
8.
向用户显示该Web部件。
对于后续的访问,当这个用户请求该Web部件,以便从企业应用程序获得必要的数据时,相应的凭据将从单一登录数据库中检索。
这个过程对用户是透明的。
(参见图26-1。
)
图26-1.使用单一登录访问企业应用程序
查看大图
当使用组企业应用程序定义时,帐户映射是由管理员配置的。
管理员指定用于访问企业应用程序的凭据,这些凭据对某个Windows组的所有成员都有效。
如果访问Web部件的用户属于该映射的Windows组,访问凭据就已经存储在单一登录凭据存储区中了。
Web部件中的代码检索凭据,并将它们提交给企业应用程序,同时检索必要的信息。
然后向发出请求的用户显示该Web部件。
在这种情况下,整个过程对用户都是透明的。
用户不清楚企业应用程序需要的任何身份验证信息,只有管理员才知道。
与服务器场拓扑有关的安全建议
在使用单一登录服务时,您可以通过将资源分布在服务器场中,以帮助增强安全性。
特别是,前端Web服务器、作业服务器和存储单一登录数据库的计算机可能会影响安全性。
不够安全的配置。
•
所有内容都部属在一台服务器上。
这种配置不够安全,因为前端Web服务器、存储在SQLServer中的单一登录数据库以及加密密钥全都在同一台计算机上。
不推荐使用这种配置。
更安全的配置。
•
两台计算机的配置,其中一台计算机是前端Web服务器。
第二台计算机是作业服务器,它包含存储在SQLServer中的单一登录数据库和加密密钥。
可实现更好的安全性的推荐配置。
•
三台或更多计算机的配置,其中前端Web服务器、包含加密密钥的作业服务器和包含存储在SQLServer中的单一登录数据库的服务器分别是不同的计算机。
如果在一个共享服务场景中使用单一登录,存储在父服务器场中的用户凭据将对所有子服务器场的管理员可用。
建议仅在父门户站点上运行使用单一登录的应用程序,而在子门户站点的应用程序中使用iFrame。
应该在子服务器场上禁用单一登录服务。
我们将在本章后面部分讨论如何禁用SSOSrv服务。
返回页首
配置单一登录
为了第一次配置单一登录,您必须完成以下任务:
1.
确定并设置必要的Windows帐户。
2.
在作业服务器上启用单一登录服务。
3.
配置单一登录设置。
4.
创建一个新的应用程序定义。
5.
为应用程序定义提供帐户信息。
6.
在前端服务器上启用单一登录服务。
步骤1:
设置单一登录帐户
SSOSrv服务使用如下四种类型的帐户:
•
单一登录配置帐户
•
单一登录管理员帐户
•
单一登录服务帐户
•
企业应用程序管理员帐户
在配置单一登录之前,您必须在必要的情况下确定、创建和设置这些帐户。
单一登录配置帐户
单一登录配置帐户是一个Windows帐户,它将用于配置SSO。
在设置单一登录时,您将使用这个帐户来登录到作业服务器。
这个帐户必须满足以下要求:
•
是作业服务器上的本地"管理员"组的成员。
•
是运行SQLServer的计算机(它存储单一登录数据库)上的本地"管理员"组的成员。
•
或者与单一登录管理员帐户相同,或者是作为单一登录管理员帐户的组帐户的成员。
(单一登录管理员帐户将在下一小节中讨论。
)
单一登录管理员帐户
单一登录管理员帐户可以是Windows全局组,或者是单独的用户帐户,它将用于设置和管理单一登录服务。
这个帐户不能是本地域组帐户或分发列表。
请确保单一登录管理员帐户满足以下要求:
•
单一登录服务帐户必须是这个用户或者是这个组的成员。
•
单一登录配置帐户必须是这个用户或者是这个组的成员。
我们将在步骤3"在作业服务器上配置单一登录设置"中把这个帐户指定为单一登录管理员帐户。
在完成配置之后,这个用户帐户或者这个组帐户的成员将拥有对单一登录管理页面的完全访问权限,并将能够做出配置变更和应用程序定义变更。
单一登录服务帐户
单一登录服务帐户是将作为单一登录服务来运行的用户帐户。
请确保满足以下要求:
•
单一登录服务帐户必须与单一登录管理员帐户相同,或者必须是作为单一登录管理员帐户的组帐户的成员。
•
单一登录服务帐户必须是服务器场中运行SharePointPortalServer2003的所有服务器上的本地组STS_WPG的成员。
为了使用户成为STS_WPG的成员,请执行以下操作:
1.
在"任务栏"上,单击"开始",指向"管理工具",然后单击"计算机管理"。
2.
在控制台树中,在"系统工具"节点下面,展开"本地用户和组"节点。
3.
单击"组"。
4.
双击"STS_WPG"。
5.
在"STS_WPG属性"对话框中,单击"添加"。
6.
添加该用户。
单一登录服务帐户必须是服务器场中运行SharePointPortalServer的所有服务器上的本地组SPS_WPG的成员。
为了使用户成为SPS_WPG的成员,请执行以下操作:
1.
在任务栏上,单击"开始",指向"管理工具",然后单击"计算机管理"。
2.
在控制台树中,在"系统工具"节点下面,展开"本地用户和组"节点。
3.
单击"组"。
4.
双击"SPS_WPG"。
5.
在"SPS_WPG属性"对话框中,单击"添加"。
6.
添加该用户。
单一登录服务帐户必须是SharePointPortalServer配置数据库上的公共数据库角色的成员。
在单台服务器的部署中,如果单一登录服务运行在一个属于本地"管理员"组成员的帐户之下,您不需要确保用户拥有配置数据库的公共权限。
然而出于安全的考虑,建议您不要在一个属于本地"管理员"组成员的帐户下运行该服务。
为了指派配置数据库上的权限,请执行以下操作:
1.
在SQLServer计算机上,打开"SQLServer企业管理器"。
2.
展开"MicrosoftSQLServers"节点。
3.
展开"SQLServer组"节点。
4.
展开"(本地)(WindowsNT)"节点。
5.
展开"安全性"节点。
6.
单击"登录",然后执行以下操作之一:
•
如果登录名不存在,则右键单击"登录",单击"新建登录",然后在"名称"框中,以DOMAIN\user_name的格式键入该用户的帐户。
•
如果登录名已经存在,则右键单击该登录名,然后单击"属性"。
7.
单击"数据库访问"选项卡。
8.
在"指定可由该登录访问的数据库"部分,选中对应于配置数据库的复选框。
9.
在"数据库名称"的"数据库角色"部分,选中"公共"复选框。
10.
单击"确定"。
11.
关闭"SQLServer企业管理器"。
单一登录服务帐户必须是单一登录数据库所在的SQLServer实例上的"服务器管理员"服务器角色的成员。
在单台服务器的部署中,如果单一登录服务运行在一个属于本地"管理员"组成员的帐户之下,您不需要确保该用户是单一登录数据库所在的SQLServer实例上的"服务器管理员"服务器角色的成员。
然而出于安全的考虑,建议您不要在一个属于本地"管理员"组成员的帐户之下运行该服务。
为了使用户成为"服务器管理员"角色的成员
1.
在SQLServer计算机上,打开"SQLServer企业管理器"。
2.
展开"MicrosoftSQLServers"节点。
3.
展开"SQLServer组"节点。
4.
展开"(本地)(WindowsNT)"节点。
5.
展开"安全性"节点。
6.
单击"登录",然后执行以下操作之一:
•
如果登录名不存在,则右键单击"登录",单击"新建登录",然后在"名称"框中,以DOMAIN\user_name的格式键入该用户的帐户。
•
如果登录名已经存在,则右键单击该登录名,然后单击"属性"。
7.
单击"服务器角色"选项卡。
8.
选中"服务器管理员"复选框。
9.
单击"确定"。
10.
关闭"SQLServer企业管理器"。
企业应用程序管理员帐户
企业应用程序管理员帐户可以是Windows全局组帐户,或者是单独的用户帐户,它将用于设置和管理应用程序定义。
这个帐户不能是本地域组或分发列表。
现在您不需要执行任何配置步骤,我们将在步骤3"在作业服务器上配置单一登录设置"中把这个帐户配置为企业应用程序管理员帐户。
然而,注意到这个帐户在被指定为企业应用程序管理员帐户之后所拥有的权限是有用的,如下所示:
•
这个帐户或这个组的成员有权从单一登录管理页面创建、修改或删除应用程序定义。
•
这个帐户或这个组的成员无权配置单一登录。
只有单一登录管理员帐户的成员才能配置单一登录。
•
这个用户或这个组的成员的权限自动包含在单一登录管理员帐户中。
步骤2:
在作业服务器上启用单一登录服务
为了启用SSOSrv服务,请在作业服务器上执行以下操作:
1.
在任务栏上,单击"开始",指向"管理工具",然后单击"服务"。
2.
在"服务"管理控制台上,双击"Microsoft单一登录服务"。
3.
单击"登录"选项卡。
4.
在"登录为"下面,单击"此帐户"。
5.
在"此帐户"框中,键入您在前一步中确定为单一登录服务帐户的帐户名。
6.
在"密码"和"确认密码"框中,键入密码。
7.
单击"应用"。
8.
单击"常规"选项卡。
9.
在"启动类型"列表中,单击"自动"。
10.
在"服务状态"部分,如果服务状态没有显示"已启动",则单击"启动"。
11.
单击"确定"。
步骤3:
在作业服务器上配置单一登录设置
为了配置单一登录设置,您必须作为作业服务器上的配置帐户登录。
正如我们在前面的步骤1中所讨论的,这个帐户必须是作业服务器上的本地"管理员"组的成员,并且还必须是您指定为单一登录管理员帐户的组帐户的成员。
您不能远程配置单一登录。
为了配置单一登录,请转到作为作业服务器运行的计算机,以配置帐户登录,然后执行以下操作:
1.
在"<服务器名称>-SharePointPortalServer管理中心"页面上,在"组件配置"部分,单击"管理单一登录设置"。
或者,单击"开始",指向"所有程序",指向"SharePointPortalServer",然后单击"SharePointPortalServer单一登录管理"。
2.
在"<服务器名称>-管理单一登录设置"页面上,在"服务器设置"部分,单击"管理服务器设置"。
3.
在"管理单一登录的服务器设置"页面上,在"单一登录设置"部分,在"帐户名"框中,键入您在步骤1"设置单一登录帐户"中确定的单一登录管理员帐户的名称。
该帐户的格式为DOMAIN\group_name或DOMAIN\user_name。
4.
在"企业应用程序定义设置"部分,在"帐户名"框中,键入您在步骤1"设置单一登录帐户"中确定的企业应用程序管理员帐户的名称。
该帐户的格式为DOMAIN\group_name或DOMAIN\user_name。
5.
在"数据库设置"部分,请执行以下操作:
1.
在"服务器名称"框中,键入您想要在其上存储单一登录设置和帐户信息的数据库服务器的名称。
2.
在"数据库名称"框中,键入单一登录数据库的名称。
如果这个数据库不存在,则会创建该数据库。
6.
在"超时设置"部分,请执行以下操作:
1.
在"票证超时(分钟)"框中,键入允许某个票证或访问令牌在超时之前等待的分钟数。
2.
在"删除早于该时间的审核日志记录(天)"框中,键入在删除之前要在审核日志中保存记录的天数。
7.
单击"确定"。
8.
如果出现一个消息框指出您已重新配置了单一登录,请单击"确定"。
审核日志将在您指定的天数之后被覆盖。
由于审核日志包含任何非法操作或登录尝试的记录,因此建议您保留那些日志的备份。
审核日志驻留在单一登录数据库的SSO_Audit表中。
该表会在您备份数据库时自动备份。
步骤4:
创建应用程序定义
为了创建应用程序定义,您需要作为单一登录管理员帐户的成员或者作为企业应用程序定义管理员帐户登录。
为了创建应用程序定义,请执行以下操作:
1.
在"<服务器名称>-SharePointPortalServer管理中心"页面上,在"组件配置"部分,单击"管理单一登录设置"。
或者,单击"开始",指向"所有程序",指向"SharePointPortalServer",然后单击"SharePointPortalServer单一登录管理"。
2.
在"<服务器名称>-管理单一登录设置"页面上,在"企业应用程序定义设置"部分,单击"管理企业应用程序定义设置"。
3.
在"管理企业应用程序定义"页面上,单击"新建项"。
4.
在"创建企业应用程序定义"页面上,在"应用程序和联系人信息"部分,请执行以下操作:
1.
在"显示名称"框中,为这个应用程序定义键入一个显示名称。
当管理员在后续阶段中更改应用程序定义的设置时,该应用程序定义将使用其显示名称列出来。
显示名称是用户第一次访问并输入凭据时在登录表单上看到的内容。
如果您为显示名称输入一个不包含空格的长名称,整个名称可能不会完整地显示出来。
2.
在"应用程序名称"框中,为该应用程序定义键入一个应用程序名称。
应用程序名称由开发人员所使用。
如果您为应用程序定义名称输入一个不包含空格的长名称,整个名称可能不会完整地显示出来。
3.
在"联系人电子邮件地址"框中,键入这个应用程序要联系的用户的电子邮件地址。
5.
在"帐户类型"部分,请执行以下操作之一:
•
如果您希望所有用户都使用单个帐户登录,则选择"组"。
对于这个选项,用户不需要输入任何凭据。
•
如果您希望用户使用各自的帐户信息登录,则选择"个别"。
这样每个用户就必须在第一次访问该Web部件时提供凭据。
如果指定组帐户作为帐户类型,以便所有用户都使用单个帐户登录,请确保您拥有正在访问的应用程序的适当数量的客户端许可证。
6.
在"登录帐户信息"部分,请以这个企业应用程序所必需的顺序,选择一个或多个字段来映射到需要的登录信息。
字段的数量和顺序是由企业应用程序登录需求确定的。
对于每个字段,请执行以下操作:
1.
为每个字段键入一个显示名称作为所需信息的提示。
对于一个单独的用户应用程序定义,显示名称是用户在输入他们用于该企业应用程序的凭据时,在登录表单上所看到的内容。
对于一个组应用程序定义,字段的显示名称是管理员在输入用于该企业应用程序的映射的组帐户凭据时所看到的内容。
2.
如果字段包含敏感信息,比如密码,则对"屏蔽"单击"是",以便在查看或填写这个字段时,信息不会在该字段中显示出来。
例如,对于访问Oracle,您可能输入以下内容:
字段1=Oracle用户名
字段2=Oracle用户密码(对"屏蔽"选项选择"是")
字段3=Oracle数据库名称
如果需要访问SAP应用程序,那么对于SAP凭据,您可能输入以下内容:
字段1=SAP用户名
字段2=SAP密码(对"屏蔽"选项选择"是")
字段3=SAP系统编号
字段4=SAP客户端编号
字段5=语言
7.
单击"确定"。
步骤5:
为应用程序定义提供帐户信息
在创建应用程序定义之后,对于组应用程序定义,您必须指定登录帐户凭据。
对于单独的应用程序定义,您可以为用户指定凭据,或者,用户可以在第一次访问时在登录表单中输入他们的凭据。
为了指定应用程序定义的登录帐户信息,请执行以下操作:
1.
在"<服务器名称>-SharePointPortalServer管理中心"页面上,在"组件配置",单击"管理单一登录设置"。
或者,单击
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SharePoint Portal Server 中的单一登录 中的 单一 登录