Condividi tramite


ALTER APPLICATION ROLE (Transact-SQL)

Modifica il nome, la password o lo schema predefinito di un ruolo applicazione.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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

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

Argomenti

  • application_role_name
    Nome del ruolo applicazione da modificare.

  • NAME = new_application_role_name
    Specifica il nuovo nome del ruolo applicazione. Il nome non deve già essere utilizzato per fare riferimento a un'altra entità nel database.

  • PASSWORD = 'password'
    Specifica la password per il ruolo applicazione. password deve soddisfare i criteri password Windows del computer che sta eseguendo l'istanza di SQL Server. È necessario utilizzare sempre password complesse.

  • DEFAULT_SCHEMA = schema_name
    Specifica il primo schema in cui il server effettuerà le ricerche per la risoluzione dei nomi degli oggetti.schema_name può indicare uno schema che non esiste nel database.

Osservazioni

Se il nuovo nome del ruolo applicazione esiste già nel database, l'istruzione non potrà essere completata. Quando si modifica il nome, la password o lo schema predefinito di un ruolo applicazione, l'ID associato al ruolo non viene modificato.

Nota importanteImportante

 I criteri di scadenza per le password non vengono applicati alle password del ruolo applicazione. Per questo motivo, si consiglia di prestare la massima attenzione nella scelta di password complesse. Le applicazioni che richiamano i ruoli applicazione devono archiviare le relative password.

I ruoli applicazione sono visibili nella vista del catalogo sys.database_principals.

Nota di attenzioneAttenzione

Il comportamento degli schemi in SQL Server 2005 è diverso rispetto alle versioni precedenti di SQL Server. È possibile che il codice in cui gli schemi sono equivalenti agli utenti del database non restituisca risultati corretti. Non utilizzare le viste del catalogo delle versioni precedenti, inclusa sysobjects, nei database in cui sia già stata utilizzata una delle istruzioni DLL seguenti: 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. In questi database è necessario utilizzare le nuove viste del catalogo, in cui si tiene conto della separazione tra entità e schemi introdotta in SQL Server 2005. Per ulteriori informazioni sulle viste del catalogo, vedere Viste del catalogo (Transact-SQL).

Autorizzazioni

È richiesta l'autorizzazione ALTER ANY APPLICATION ROLE per il database. Per modificare lo schema predefinito, è inoltre richiesta l'autorizzazione ALTER per il ruolo applicazione. Un ruolo applicazione può modificare il proprio schema predefinito, ma non il nome o la password.

Esempi

A. Modifica del nome del ruolo applicazione

Nell'esempio seguente viene modificato il nome del ruolo applicazione weekly_receipts in receipts_ledger.

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

B. Modifica della password del ruolo applicazione

Nell'esempio seguente viene modificata la password del ruolo applicazione receipts_ledger.

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

C. Modifica del nome, della password e dello schema predefinito

Nell'esempio seguente vengono modificati contemporaneamente il nome, la password e lo schema predefinito del ruolo applicazione receipts_ledger.

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