ASP.NET 中的 SQL Server 应用服务数据库角色和视图

在 ASP.NET 应用服务的 SQL Server 提供者数据库中包括有许多的数据库对象(例如,存储过程和数据表)以支持 ASP.NET 的成员资格、角色管理、档案、Web Parts 个性化、以及 Web 事件等特征。该数据库中包括的角色和视图只用于对支持指定特征的必需对象进行访问。这能够让你授予 SQL Server 数据库连接以最小的必需权限,从而改进应用程序的安全。

数据库角色

数据库包括的角色只准许对支持 SQL Server 提供者特征的数据库对象进行访问。要改进应用程序的安全,你可以创建数据库帐号并且以必需角色或角色组的成员来进行添加。

被提供的数据库角色有三个类型。

  • 完全访问

    提供对特征所支持的所有数据库对象的访问,并且不需要管理员访问。

  • 基本访问

    为用户使用特征时提供最小权限的访问。

  • 报告式访问

    特征的搜索和能力查看访问。

每个应用程序特征都为属于自己的角色集提供相应的支持。例如,数据库中包括的角色有 aspnet_MembershipFullAccess ,aspnet_RolesFullAccess 等等。

用于成员资格的角色

下表列出了支持 ASP.NET 成员资格的数据库角色,角色支持这些方法,并且数据库会对角色是否允许使用这些方法而进行检查。

角色 方法许可 查看许可

aspnet_Membership_FullAccess

所有成员方法

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_MembershipUsers

aspnet_Membership_BasicAccess


ValidateUser

UpdateUser

GetNumberOfUsersOnline

GetPassword

GetUser

GetUserNameByEmail

(无)

aspnet_Membership_ReportingAccess


FindUsersByEmail

FindUsersByName

GetAllUsers

GetNumberOfUsersOnline

GetUser

GetUserNameByEmail

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_MembershipUsers

用于角色管理的角色

下表列出了支持 ASP.NET 角色管理的数据库角色,角色支持这些方法,并且数据库会对角色是否允许使用这些方法而进行检查。

角色 方法许可 查看许可

aspnet_Roles_FullAccess

所有角色管理者的方法

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_Roles

vw_aspnet_UsersInRoles

aspnet_Roles_BasicAccess


GetRolesForUser

IsUserInRole

(无)

aspnet_Roles_ReportingAccess


FindUsersInRole

GetAllRoles

GetRolesForUser

GetUsersInRole

IsUserInRole

RoleExists

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_Roles

vw_aspnet_UsersInRoles

用于档案的角色

下表列出了支持 ASP.NET 档案的数据库角色,角色支持这些方法,并且数据库会对角色是否允许使用这些方法而进行检查。

角色 方法许可 查看许可

aspnet_Profile_FullAccess

所有档案方法

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_Profiles

aspnet_Profile_BasicAccess


GetPropertyValues

SetPropertyValues

(无)

aspnet_Profile_ReportingAccess


GetAllProfiles

GetAllInactiveProfiles

GetNumberOfInactiveProfiles

FindProfilesByUserName

FindInactiveProfilesByUserName

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_Profiles

用于 Web Parts 个性化的角色

下表列出了支持 ASP.NET Web Parts 个性化的数据库角色,角色支持这些方法,并且数据库会对角色是否允许使用这些方法而进行检查。

角色 方法许可 查看许可

aspnet_Personalization_FullAccess

SQL 提供者的所有功能。

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_WebPartState_User

vw_aspnet_WebPartState_Shared

vw_aspnet_WebPartState_Paths

aspnet_Personalization_BasicAccess


LoadPersonalizationBlobs

LoadPersonalizationState 

ResetPersonalizationState 

ResetPersonalizationBlob

SavePersonalizationBlob

SavePersonalizationState 

(无)

aspnet_Personalization_ReportingAccess


FindState

GetCountOfState 

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_WebPartState_Paths

vw_aspnet_WebPartState_Shared

vw_aspnet_WebPartState_User

用于 Web 事件的角色

下表列出了支持 ASP.NET Web 事件的数据库角色,角色支持这些方法,并且数据库会对角色是否允许使用这些方法而进行检查。

角色 方法许可

aspnet_WebEvent_FullAccess

Web 事件特征的完全访问。

数据库视图

SQL Server 提供者的数据库包括一个预定义视图,允许你在通过使用指定特征对数据进行访问的时候不需要直接访问数据库中的表。并且该视图是只读的。你不能够尝试使用该视图对数据库中的数据进行更新。所有的更新操作都应该使用与每一个特征相对应的 .NET Framework 类来完成。

下表列出了 SQL Server 提供者数据库中的有效数据库视图以及被每一个视图所返回的信息。部分视图还会显示机密信息,如成员资格用户的密码问题和答案,所以你应该注意不要向任何未知的来源暴露这些机密信息。

视图 描述

vw_aspnet_Applications

为所有应用程序显示下列信息:

  • 应用程序名称

  • 应用程序描述

  • 唯一的应用程序标识符

vw_aspnet_Users

显示每个应用程序的用户列表,包括下列信息:

  • 用户名称

  • 用户的唯一标识符

  • 用户最后一次活动的日期和时间。

  • 用户的移动设备别名(如果适用)。

  • 用户是否为匿名用户。

  • 相关应用程序的唯一标识符。

提示:用户列表反射了所有已安装 ASP.NET 应用程序特征中的用户列表,但并不反射与指定特征相关的用户列表。

vw_aspnet_MembershipUsers

显示与当前用户的唯一标识符相关的 ASP.NET 成员资格用户列表,包括下列信息:

  • 用户名称

  • 电子邮件地址

  • 密码问题和答案

  • 成员资格认证

  • 密码格式标识符

  • 用户的移动设备 PIN 和移动设备别名(如果适用)。

  • 创建日期和时间

  • 最后一次登入的日期和时间

  • 最后一次更改密码的日期和时间

  • 最后一次活动的日期和时间

  • 用户最后一次被锁定的日期和时间

  • 当前的锁定状态

  • 失败的密码尝试计数,以及密码重试窗口第一次被显示的日期和时间

  • 失败的密码答案尝试计数,以及密码答案重试窗口第一次被显示的日期和时间

  • 备注

vw_aspnet_Roles

显示下列角色信息:

  • 每个应用程序唯一的角色列表

  • 角色名称

  • 唯一的角色标识符

  • 角色描述

  • 与角色相关联的应用程序唯一标识符

vw_aspnet_UsersInRoles

通过唯一的用户标识符和角色标识符来显示与角色相关联的用户。

vw_aspnet_Profiles

显示下列用户档案信息:

  • 用户的档案,保存在用户的唯一标识符下

  • 档案最后被更新的日期和时间

  • 档案数据的大小

vw_aspnet_WebPartState_Path

显示下列 Web Parts 状态路径信息:

  • 每个路径的唯一 ID

  • 与每个路径相关联的应用程序

  • 路径

vw_aspnet_WebPartState_Shared

显示下列 Web Parts 状态信息:

  • 唯一的路径 ID

  • 数据的大小

  • 最后一次更新共享数据(与路径相关联)的日期

vw_aspnet_WebPartState_User

显示下列 Web Parts 用户信息:

  • 用户的个性化数据片段,保存在用户唯一标识符下

  • 数据的路径 ID

  • 用户专用数据的大小

  • 最后一次更新用户专用数据的日期

你可能感兴趣的:(SQL Server)