DatabaseRole 类

The DatabaseRole object represents a SQL Server database security role.

继承层次结构

System.Object
  Microsoft.SqlServer.Management.Smo.SmoObjectBase
    Microsoft.SqlServer.Management.Smo.SqlSmoObject
      Microsoft.SqlServer.Management.Smo.NamedSmoObject
        Microsoft.SqlServer.Management.Smo.ScriptNameObjectBase
          Microsoft.SqlServer.Management.Smo.DatabaseRole

命名空间:  Microsoft.SqlServer.Management.Smo
程序集:  Microsoft.SqlServer.Smo(在 Microsoft.SqlServer.Smo.dll 中)

语法

声明
<StateChangeEventAttribute("CREATE_ROLE", "ROLE")> _
<StateChangeEventAttribute("ALTER_ROLE", "ROLE")> _
<PhysicalFacetAttribute> _
<SfcElementTypeAttribute("Role")> _
<StateChangeEventAttribute("ALTER_AUTHORIZATION_DATABASE", "ROLE")> _
<EvaluationModeAttribute(AutomatedPolicyEvaluationMode.None Or AutomatedPolicyEvaluationMode.Enforce Or AutomatedPolicyEvaluationMode.CheckOnChanges Or AutomatedPolicyEvaluationMode.CheckOnSchedule)> _
Public NotInheritable Class DatabaseRole _
    Inherits ScriptNameObjectBase _
    Implements ISfcSupportsDesignMode, IObjectPermission, ICreatable, IDroppable,  _
    IAlterable, IRenamable, IExtendedProperties, IScriptable
用法
Dim instance As DatabaseRole
[StateChangeEventAttribute("CREATE_ROLE", "ROLE")]
[StateChangeEventAttribute("ALTER_ROLE", "ROLE")]
[PhysicalFacetAttribute]
[SfcElementTypeAttribute("Role")]
[StateChangeEventAttribute("ALTER_AUTHORIZATION_DATABASE", "ROLE")]
[EvaluationModeAttribute(AutomatedPolicyEvaluationMode.None|AutomatedPolicyEvaluationMode.Enforce|AutomatedPolicyEvaluationMode.CheckOnChanges|AutomatedPolicyEvaluationMode.CheckOnSchedule)]
public sealed class DatabaseRole : ScriptNameObjectBase, 
    ISfcSupportsDesignMode, IObjectPermission, ICreatable, IDroppable, IAlterable, 
    IRenamable, IExtendedProperties, IScriptable
[StateChangeEventAttribute(L"CREATE_ROLE", L"ROLE")]
[StateChangeEventAttribute(L"ALTER_ROLE", L"ROLE")]
[PhysicalFacetAttribute]
[SfcElementTypeAttribute(L"Role")]
[StateChangeEventAttribute(L"ALTER_AUTHORIZATION_DATABASE", L"ROLE")]
[EvaluationModeAttribute(AutomatedPolicyEvaluationMode::None|AutomatedPolicyEvaluationMode::Enforce|AutomatedPolicyEvaluationMode::CheckOnChanges|AutomatedPolicyEvaluationMode::CheckOnSchedule)]
public ref class DatabaseRole sealed : public ScriptNameObjectBase, 
    ISfcSupportsDesignMode, IObjectPermission, ICreatable, IDroppable, IAlterable, 
    IRenamable, IExtendedProperties, IScriptable
[<SealedAttribute>]
[<StateChangeEventAttribute("CREATE_ROLE", "ROLE")>]
[<StateChangeEventAttribute("ALTER_ROLE", "ROLE")>]
[<PhysicalFacetAttribute>]
[<SfcElementTypeAttribute("Role")>]
[<StateChangeEventAttribute("ALTER_AUTHORIZATION_DATABASE", "ROLE")>]
[<EvaluationModeAttribute(AutomatedPolicyEvaluationMode.None|AutomatedPolicyEvaluationMode.Enforce|AutomatedPolicyEvaluationMode.CheckOnChanges|AutomatedPolicyEvaluationMode.CheckOnSchedule)>]
type DatabaseRole =  
    class 
        inherit ScriptNameObjectBase 
        interface ISfcSupportsDesignMode 
        interface IObjectPermission 
        interface ICreatable 
        interface IDroppable 
        interface IAlterable 
        interface IRenamable 
        interface IExtendedProperties 
        interface IScriptable 
    end
public final class DatabaseRole extends ScriptNameObjectBase implements ISfcSupportsDesignMode, IObjectPermission, ICreatable, IDroppable, IAlterable, IRenamable, IExtendedProperties, IScriptable

DatabaseRole 类型公开以下成员。

构造函数

  名称 说明
公共方法 DatabaseRole() Initializes a new instance of the DatabaseRole class.
公共方法 DatabaseRole(Database, String) Initializes a new instance of the DatabaseRole class.

页首

属性

  名称 说明
公共属性 CreateDate Gets the date and time when the database role was created.
公共属性 DateLastModified Gets the date and time when the database role was last modified.
公共属性 ExtendedProperties Gets the extended properties of the database role.
公共属性 ID Gets the ID value that uniquely identifies the database role.
公共属性 IsFixedRole Gets the Boolean property value that specifies whether the database role is a fixed role or a user-defined role.
公共属性 Name Gets or sets a String value that specifies the name of the database role. (覆盖 NamedSmoObject.Name。)
公共属性 Owner Gets or sets the owner of the database role.
公共属性 Parent Gets or sets the Database object that is the parent of the DatabaseRole object.
公共属性 Properties Gets a collection of Property objects that represent the object properties. (从 SqlSmoObject 继承。)
公共属性 State Gets the state of the referenced object. (从 SmoObjectBase 继承。)
公共属性 Urn Gets the Uniform Resource Name (URN) address value that uniquely identifies the object. (从 SqlSmoObject 继承。)
公共属性 UserData Gets or sets user-defined data associated with the referenced object. (从 SmoObjectBase 继承。)

页首

方法

  名称 说明
公共方法 AddMember Adds an existing database user or database role to the database role.
公共方法 Alter Updates any DatabaseRole object property changes on the instance of Microsoft SQL Server.
公共方法 Create Creates a database role on the instance of Microsoft SQL Server as defined by the DatabaseRole object.
公共方法 Deny(ObjectPermissionSet, String) Denies the specified set of permissions for the specified grantee on the database role.
公共方法 Deny(ObjectPermissionSet, array<String[]) Denies the specified set of permissions for the specified grantees on the database role.
公共方法 Deny(ObjectPermissionSet, String, Boolean) Denies the specified set of permissions for the specified grantee and other users that the grantee granted the specified set of permissions on the database role.
公共方法 Deny(ObjectPermissionSet, array<String[], Boolean) Denies the specified set of permissions for the specified grantees and other users that the grantee granted the specified set of permissions on the database role.
公共方法 Discover Discovers a list of type Object. (从 SqlSmoObject 继承。)
公共方法 Drop Drops the database role.
公共方法 DropMember Removes the specified database user or role from the referenced database role.
公共方法 EnumAgentProxyAccounts Returns a list of agent proxy accounts that are assigned to the database role.
公共方法 EnumMembers Returns a list of database users that are members of the database role.
公共方法 EnumObjectPermissions() Returns a list of object permissions assigned to the referenced database role.
公共方法 EnumObjectPermissions(String) Returns a list of object permissions assigned to the referenced database role for the specified member of the role.
公共方法 EnumObjectPermissions(ObjectPermissionSet) Returns a list of object permissions assigned to the referenced database role for the specified set of object permissions.
公共方法 EnumObjectPermissions(String, ObjectPermissionSet) Returns a list of object permissions assigned to the referenced database role for the specified member of the role and for the specified set of permissions.
公共方法 EnumRoles Returns a list of the roles that the referenced database role is a member of.
公共方法 Equals (从 Object 继承。)
受保护方法 FormatSqlVariant Formats an object as SqlVariant type. (从 SqlSmoObject 继承。)
受保护方法 GetContextDB Gets the context database that is associated with this object. (从 SqlSmoObject 继承。)
受保护方法 GetDBName Gets the database name that is associated with the object. (从 SqlSmoObject 继承。)
公共方法 GetHashCode (从 Object 继承。)
受保护方法 GetPropValue Gets a property value of the SqlSmoObject object. (从 SqlSmoObject 继承。)
受保护方法 GetPropValueOptional Gets a property value of the SqlSmoObject object. (从 SqlSmoObject 继承。)
受保护方法 GetPropValueOptionalAllowNull Gets a property value of the SqlSmoObject object. (从 SqlSmoObject 继承。)
受保护方法 GetServerObject Gets the server of the SqlSmoObject object. (从 SqlSmoObject 继承。)
公共方法 GetType (从 Object 继承。)
公共方法 Grant(ObjectPermissionSet, String) Grants the specified set of permissions to the specified grantee on the database role.
公共方法 Grant(ObjectPermissionSet, array<String[]) Grants the specified set of permissions to the specified grantees on the database role.
公共方法 Grant(ObjectPermissionSet, String, Boolean) Grants access to the specified permission to the grantee and the ability to grant access to other users on the database role.
公共方法 Grant(ObjectPermissionSet, array<String[], Boolean) Grants access to the specified permission to the grantees and the ability to grant access to other users on the database role.
公共方法 Grant(ObjectPermissionSet, String, Boolean, String) Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the database role under an assumed role.
公共方法 Grant(ObjectPermissionSet, array<String[], Boolean, String) Grants the specified set of permissions to the grantees and the ability to grant the set of permissions to other users on the database role under an assumed role.
公共方法 Initialize() Initializes the object and forces the properties be loaded. (从 SqlSmoObject 继承。)
公共方法 Initialize(Boolean) Initializes the object and forces the properties be loaded. (从 SqlSmoObject 继承。)
受保护方法 IsObjectInitialized Verifies whether the object has been initialized. (从 SqlSmoObject 继承。)
受保护方法 IsObjectInSpace Verifies whether the object is isolated or connected to the instance of SQL Server. (从 SqlSmoObject 继承。)
公共方法 Refresh Refreshes the script name. (从 ScriptNameObjectBase 继承。)
公共方法 Rename Renames the database role.
公共方法 Revoke(ObjectPermissionSet, String) Revokes a previously granted set of permissions from a grantee on the database role.
公共方法 Revoke(ObjectPermissionSet, array<String[]) Revokes a previously granted set of permissions from a list of grantees on the database role.
公共方法 Revoke(ObjectPermissionSet, String, Boolean, Boolean) Revokes previously granted permissions from a grantee on the database role and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
公共方法 Revoke(ObjectPermissionSet, array<String[], Boolean, Boolean) Revokes previously granted permissions from grantees on the database role and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
公共方法 Revoke(ObjectPermissionSet, String, Boolean, Boolean, String) Revokes previously granted permissions from a grantee on the database role and any other users to whom the grantee has granted the specified set of permissions. The grantee is also given the ability to revoke the specified set of permissions from other users under an assumed role.
公共方法 Revoke(ObjectPermissionSet, array<String[], Boolean, Boolean, String) Revokes previously granted permissions from grantees on the database role and any other users to whom the grantees have granted the specified set of permissions. The grantees are also given the ability to revoke the specified set of permissions from other users under an assumed role.
公共方法 Script() Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server database role.
公共方法 Script(ScriptingOptions) Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server database role as specified by the scripting options.
受保护方法 SetParentImpl Sets the parent of the SqlSmoObject to the newParent parameter. (从 SqlSmoObject 继承。)
公共方法 ToString Returns a String that represents the referenced object. (从 SqlSmoObject 继承。)
公共方法 Validate Validates the state of an object. (从 SmoObjectBase 继承。)

页首

事件

  名称 说明
公共事件 PropertyChanged Represents the event that occurs when a property is changed. (从 SqlSmoObject 继承。)
公共事件 PropertyMetadataChanged Represents the event that occurs when property metadata changes. (从 SqlSmoObject 继承。)

页首

显式接口实现

  名称 说明
显式接口实现私有方法 IAlienObject.Discover Discovers any dependencies. 不要在您的代码中直接引用此成员。它支持 SQL Server 基础结构。 (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.GetDomainRoot Returns the root of the domain. (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.GetParent Gets the parent of this object. 不要在您的代码中直接引用此成员。它支持 SQL Server 基础结构。 (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.GetPropertyType Gets the type of the specified property. (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.GetPropertyValue Gets the value of the specified property. (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.GetUrn Gets the Unified Resource Name (URN) of the object. 不要在您的代码中直接引用此成员。它支持 SQL Server 基础结构。 (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.Resolve Gets the instance that contains the information about the object from the Unified Resource Name (URN) of the object. (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.SetObjectState Sets the object state to the specified SfcObjectState value. (从 SqlSmoObject 继承。)
显式接口实现私有方法 IAlienObject.SetPropertyValue Sets the property value. (从 SqlSmoObject 继承。)
显式接口实现私有方法 ISfcPropertyProvider.GetPropertySet Gets the interface reference to the set of properties of this object. (从 SqlSmoObject 继承。)
显式接口实现私有属性 ISfcSupportsDesignMode.IsDesignMode Gets a Boolean value that specifies whether the database role supports design mode.

页首

注释

To get DatabaseRole object properties, users can be a member of the public fixed server role.

To set DatabaseRole object properties, users must have ALTER permission on the database role.

To create a database role, users must have CREATE ROLE permission on the parent database.

To drop a database role, users must have ALTER ANY ROLE permission on the parent database.

To add or remove members from the database role, users must be members of the db_owner or db_security admin fixed database role.

To grant, deny, or revoke permission on the database for other users, users must have CONTROL permission on the database role.

Thread Safety

此类型的任何公共静态(Microsoft Visual Basic 中的 Shared)成员在多线程操作中是安全的。但不保证所有实例成员都是线程安全的。

示例

管理用户、角色和登录名

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。不保证所有实例成员都是线程安全的。

请参阅

参考

Microsoft.SqlServer.Management.Smo 命名空间

其他资源

管理用户、角色和登录名

数据库级别的角色

CREATE ROLE (Transact-SQL)