【IT168 专稿】ASP.NET 2.0 包含一系列将状态存储在数据库或其他数据存储区中的服务。提供程序是一个软件模块,它可以在这些服务之一与数据源之间实现统一的接口。在 IIS 7.0 中,可以为应用程序设置默认的提供程序。此外,还可以配置提供程序的属性。例如,"用户"是一项基于提供程序的功能,其中一个提供程序将用户数据存储在 SQL 中,而其他提供程序则将用户数据存储在文本文件中。
(一)查看角色提供程序列表
若要轻松管理角色提供程序,可以查看包含特定配置级别中所有成员角色提供程序的列表。您可以按提供程序名称、提供程序类型或范围(本地或继承)对此列表进行排序。此外,还可以按范围对提供程序分组,以便快速查看哪些角色提供程序适用于当前配置级别,以及哪些角色提供程序是从父级继承而来的。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"功能"下拉列表中,选择".NET 角色"。
(二)查看用户提供程序列表
若要轻松管理用户提供程序,可以查看包含特定配置级别中所有成员资格用户提供程序的列表。您可以按提供程序名称、提供程序类型或范围(本地或继承)对此列表进行排序。此外,还可以按范围对提供程序分组,以便快速查看哪些用户提供程序适用于当前配置级别,以及哪些用户提供程序是从父级继承而来的。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"功能"下拉列表中,选择".NET 用户"。
(三)查看配置文件提供程序列表
若要轻松管理配置文件提供程序,可以查看包含特定配置级别的所有配置文件提供程序的列表。可以按提供程序名称、提供程序类型或范围(本地或继承)对此列表进行排序。此外,可以按范围对提供程序分组,以便快速查看哪些配置文件提供程序适用于当前配置级别,以及哪些配置文件提供程序是从父级继承而来的。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"功能"下拉列表中,选择".NET 配置文件"。
(四)添加提供程序
如果你有一个使用基于提供程序的服务在数据库或其他数据存储区中存储数据的应用程序,则可以在 IIS 中添加该提供程序。例如,ASP.NET 中的会话状态服务就是一项基于提供程序的服务,它通过将每用户会话状态存储在进程(位于宿主应用程序所在应用程序域的内存中)、外部进程("状态服务器进程")的内存或 Microsoft SQL Server 数据库中来实现对它们的管理。
注:添加配置设置时,将在本地级别以及继承该设置的所有子级别中添加该设置。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"提供程序"页的"功能"下,选择下列功能之一:
- .NET 角色:将提供程序配置为提供 ASP.NET 角色管理服务("角色管理器")和角色数据源之间的接口。
- .NET 用户:将提供程序配置为提供 ASP.NET 成员资格服务和成员资格数据源之间的接口。
- .NET 配置文件::将提供程序配置为提供 ASP.NET 配置文件服务和配置文件数据源之间的接口。
4. 在"操作"窗格中,单击"添加"。
5. 在"添加提供程序"对话框的"类型"下拉列表中,选择提供程序的类型。
6. 在"名称"文本框中,为该提供程序键入一个名称。
7. 如果您在第 3 步中选择了".NET 用户"功能,请在"配置文件属性"部分的"行为"下,将下列一个或多个行为的值设置为 True 以启用该行为:
- EnablePasswordReset:指示是否可以使用提供程序的 ResetPassword 方法重置密码。默认设置为 False。
- EnablePasswordRetrieval:指示是否可以使用提供程序的 GetPassword 方法检索密码。默认设置为 False。
- RequiresQuestionAndAnswer:指示是否必须在程序调用提供程序的 GetPassword 和 ResetPassword 方法时提供密码答案。默认设置为 False。
- RequiresUniqueEmail:指示每个注册用户是否必须具有唯一的电子邮件地址。默认设置为 False。
- StorePasswordInSecureFormat:指示是否应对密码进行哈希处理。默认设置为 False。
8. 在"数据"下的"ConnectionStringName"文本框中,键入用于建立数据库连接的连接字符串的名称。
注:此连接字符串就是在"连接字符串"功能下配置的连接字符串。有关如何配置连接字符串的详细信息,请参阅 IIS 7.0:在 IIS 7.0 中配置连接字符串。如果您在此过程的步骤 5 中选择了 WindowsTokenRoleProvider,则也可以选择不设置连接字符串名称。
9. (可选)在"配置文件属性"部分的"常规"下的"ApplicationName"文本框中,键入应用程序的虚拟路径。如果未在"ApplicationName"文本框中指定值,则成员资格 API 将默认为 HttpContext.Current.Request.ApplicationPath。这只能在运行时确定。
10. (可选)在"配置文件属性"部分的"常规"下的"描述"文本框中,键入有关该提供程序的描述。
11. 单击"确定"。
(五)编辑提供程序
当用于连接到数据库的连接字符串已更改或应用程序的虚拟路径已更改时,可更改提供程序的信息。
注: 编辑配置设置时,将更改本地级别以及继承该设置的所有子级别的设置。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"提供程序"页中的"功能"下拉列表中,选择以下功能之一:
- .NET 角色 - 用于更改 ASP.NET 角色管理服务("角色管理器")与角色数据源之间的接口。
- .NET 用户 - 用于更改 ASP.NET 成员资格服务与成员资格数据源之间的接口。
- .NET 配置文件 - 用于更改 ASP.NET 配置文件服务与配置文件数据源之间的接口。
4. 在"操作"窗格中,单击"编辑"。
5. 如果用于连接到数据库的连接字符串已更改,请在"配置文件属性"部分中的"数据"下的"ConnectionStringName"文本框中键入用于连接到数据库的连接字符串的新名称。
6. 如果您要更改提供程序的名称,请在"配置文件属性"部分中的"数据"下键入提供程序的新名称。
7. 如果应用程序的虚拟路径已更改,请在"配置文件属性"部分内"常规"下的"ApplicationName"文本框中键入应用程序的新虚拟路径。
8. 若要更改对提供程序的描述,请在"配置文件属性"部分内"常规"下的"描述"文本框中键入新的描述。
9. 单击"确定"。
(六)删除提供程序
如果你的应用程序不再使用基于提供程序的服务在数据库或其他数据存储区中存储数据,则可以在 IIS 中删除相应的提供程序。
注:删除配置设置时,将从本地级别以及继承该设置的所有子级别中删除该设置。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"提供程序"页的"功能"下拉列表中,选择提供程序的类型。
4. 在"提供程序"页上,选择要删除的提供程序,单击"操作"窗格中的"删除",然后单击"是"。
(七)重命名提供程序
如果要将提供程序与要存储的数据更好地关联起来,可以重命名该提供程序。例如,如果您有一个名为 XMLSiteMapProvider 的提供程序,并希望将它与站点映射所属的站点更好地关联起来,则可以将其重命名为 ContosoXMLSiteMapProvider。
1. 打开 IIS 管理器,然后导航至要管理的级别。
2. 在"功能视图"中,双击"提供程序"。
3. 在"提供程序"页的"功能"下拉列表中,选择提供程序的类型。
4. 在"提供程序"页上,选择要重命名的提供程序,然后在"操作"窗格中单击"重命名"。
5. 在"功能视图"的"名称"列中,键入该提供程序的新名称,然后单击"名称"框的外部。