CREATE APPLICATION ROLE (Transact-SQL)
向当前数据库中添加应用程序角色。
语法
CREATE APPLICATION ROLE application_role_name
WITH PASSWORD = 'password' [ , DEFAULT_SCHEMA = schema_name ]
参数
- application_role_name
指定应用程序角色的名称。该名称一定不能被用于引用数据库中任何主体。
- PASSWORD ='password'
指定数据库用户将用于激活应用程序角色的密码。应始终使用强密码。
- DEFAULT_SCHEMA **=**schema_name
指定服务器在解析该角色的对象名时将搜索的第一个架构。如果未定义 DEFAULT_SCHEMA,则应用程序角色将使用 DBO 作为其默认架构。schema_name 可以是数据库中不存在的架构。
备注
重要提示: |
---|
当设置应用程序角色密码时,将检查密码复杂性。调用应用程序角色的应用程序必须存储其密码。而且应当始终以加密的形式存储应用程序角色密码。 |
在 sys.database_principals 目录视图中可以查看应用程序角色。
有关如何使用应用程序角色的信息,请参阅应用程序角色。
注意: |
---|
在 SQL Server 2005 中,架构的行为与早期版本的 SQL Server 中的行为不同。假设架构与数据库用户等价的代码不能返回正确的结果。在曾经使用过以下任何 DDL 语句的数据库中,不应当使用旧目录视图(包括 sysobjects):CREATE SCHEMA、ALTER SCHEMA、DROP SCHEMA、CREATE USER、ALTER USER、DROP USER、CREATE ROLE、ALTER ROLE、DROP ROLE、CREATE APPROLE、ALTER APPROLE、DROP APPROLE、ALTER AUTHORIZATION。在曾经使用过这些语句中的任意一个语句的数据库中,必须使用新的目录视图。新的目录视图将采用在 SQL Server 2005 中引入的使主体和架构分离的方法。有关目录视图的详细信息,请参阅目录视图 (Transact-SQL)。 |
权限
要求对数据库具有 ALTER ANY APPLICATION ROLE 权限。
示例
以下示例创建名为 weekly_receipts
的应用程序角色,该角色使用密码 987Gbv876sPYY5m23
和 Sales
作为其默认架构。
CREATE APPLICATION ROLE weekly_receipts
WITH PASSWORD = '987G^bv876sPY)Y5m23'
, DEFAULT_SCHEMA = Sales;
GO
请参阅
参考
sp_setapprole (Transact-SQL)
ALTER APPLICATION ROLE (Transact-SQL)
DROP APPLICATION ROLE (Transact-SQL)
EVENTDATA (Transact-SQL)