ALTER APPLICATION ROLE (Transact-SQL)

Esta instrucción cambia el nombre, la contraseña o el esquema predeterminado de una función de aplicación.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

ALTER APPLICATION ROLE application_role_name 
        WITH <set_item> [ ,...n ]

<set_item> ::= 
    NAME = new_application_role_name 
    | PASSWORD = 'password'
    | DEFAULT_SCHEMA = schema_name

Argumentos

  • application_role_name
    Nombre de la función de aplicación que se va a modificar.
  • NAME **=**new_application_role_name
    Especifica el nuevo nombre de la función de aplicación. Ninguna entidad de seguridad de la base de datos debe utilizar ya este nombre.
  • PASSWORD ='password'
    Especifica la contraseña de la función de aplicación. Se comprobará la complejidad de las contraseñas. Utilice siempre contraseñas seguras.
  • DEFAULT_SCHEMA **=**schema_name
    Especifica el primer esquema en que el servidor buscará cuando resuelva los nombres de los objetos. schema_name puede ser un esquema que no exista en la base de datos.

Notas

Si el nombre de la función de aplicación nueva ya existe en la base de datos, la instrucción producirá un error. Cuando cambia el nombre, la contraseña o el esquema predeterminado de una función de aplicación, no se cambia el Id. asociado a la función.

ms188900.note(es-es,SQL.90).gifImportante:
 La regla de caducidad de contraseñas no se aplica a las contraseñas de función de aplicación. Por esta razón, debe extremar las precauciones y seleccionar contraseñas seguras. Las aplicaciones que invocan funciones de aplicación deben almacenar sus propias contraseñas.

Las funciones de aplicación se pueden ver en la vista de catálogo sys.database_principals.

ms188900.Caution(es-es,SQL.90).gifAdvertencia:
En SQL Server 2005 el comportamiento de los esquemas es distinto al de las versiones anteriores de SQL Server. Si en el código se supone que los esquemas son equivalentes a usuarios de base de datos, los resultados obtenidos podrían ser incorrectos. Las vistas de catálogo antiguas, incluida sysobjects, no deben usarse en una base de datos en la que se ha usado alguna de las siguientes instrucciones DDL: 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. En una base de datos en la que se ha usado alguna de estas instrucciones, deben usarse las nuevas vistas de catálogo. En las nuevas vistas de catálogo se tiene en cuenta la separación de entidades de seguridad y esquemas que se establece en SQL Server 2005. Para obtener más información sobre las vistas de catálogo, vea Vistas de catálogo (Transact-SQL).

Permisos

Requiere el permiso ALTER ANY APPLICATION ROLE en la base de datos. Para cambiar el esquema predeterminado, el usuario también tiene que cambiar el permiso en la función de aplicación. Una función de aplicación puede alterar su propio esquema predeterminado, pero no su nombre ni contraseña.

Ejemplos

A. Cambiar el nombre de una función de aplicación

En el ejemplo siguiente, se cambia el nombre de la función de aplicación de weekly_receipts a receipts_ledger.

USE AdventureWorks;
CREATE APPLICATION ROLE weekly_receipts 
    WITH PASSWORD = '987Gbv8$76sPYY5m23' , 
    DEFAULT_SCHEMA = Sales;
GO
ALTER APPLICATION ROLE weekly_receipts 
    WITH NAME = receipts_ledger;
GO

B. Cambiar la contraseña de una función de aplicación

En el ejemplo siguiente, se cambia la contraseña de la función de aplicación receipts_ledger.

ALTER APPLICATION ROLE receipts_ledger 
    WITH PASSWORD = '897yUUbv867y$200nk2i';
GO

C. Cambiar el nombre, la contraseña y el esquema predeterminado

En el ejemplo siguiente, se cambia el nombre, la contraseña y el esquema predeterminado de la función de aplicación receipts_ledger en la misma operación.

ALTER APPLICATION ROLE receipts_ledger 
    WITH NAME = weekly_ledger, 
    PASSWORD = '897yUUbv77bsrEE00nk2i', 
    DEFAULT_SCHEMA = Production;
GO

Vea también

Referencia

CREATE APPLICATION ROLE (Transact-SQL)
DROP APPLICATION ROLE (Transact-SQL)
EVENTDATA (Transact-SQL)

Otros recursos

Funciones de aplicación
Cambio de contexto

Ayuda e información

Obtener ayuda sobre SQL Server 2005