Condividi tramite


CREATE APPLICATION ROLE (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Aggiunge un ruolo applicazione al database corrente.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

CREATE APPLICATION ROLE application_role_name
    WITH PASSWORD = 'password' [ , DEFAULT_SCHEMA = schema_name ]

Argomenti

application_role_name

Specifica il nome del ruolo applicazione. Il nome non deve già essere usato per fare riferimento a un'altra entità nel database.

PASSWORD = 'password'

Specifica la password che verrà usata dagli utenti di database per attivare il ruolo applicazione. È necessario usare sempre password complesse. password deve soddisfare i requisiti dei criteri password di Windows del computer che esegue l'istanza di SQL Server.

DEFAULT_SCHEMA = schema_name

Specifica il primo schema in cui il server eseguirà la ricerca per la risoluzione dei nomi degli oggetti per il ruolo. Se DEFAULT_SCHEMA viene lasciato indefinito, il ruolo applicazione userà dbo come schema predefinito. schema_name può essere uno schema che non esiste nel database.

Osservazioni:

Importante

In fase di impostazione delle password per i ruoli applicazione viene eseguito il controllo dei requisiti di complessità delle password. Le applicazioni che richiamano i ruoli applicazione devono archiviare le relative password. Le password dei ruoli applicazione devono essere sempre archiviate in forma crittografata.

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

Per altre informazioni sull'uso dei ruoli applicazione, vedere Ruoli applicazione.

Annotazioni

Gli schemi non sono equivalenti agli utenti del database. Usare le viste del catalogo di sistema per identificare eventuali differenze tra gli utenti del database e gli schemi.

A partire da SQL Server 2012 (11.x), SQL Server e database SQL di Azure usavano un hash SHA-512 combinato con un salt casuale e univoco a 32 bit. Questo metodo ha reso statisticamente infeasible per gli utenti malintenzionati di dedurre le password.

SQL Server 2025 (17.x) Preview introduce un algoritmo hash iterato, RFC2898, noto anche come funzione di derivazione della chiave basata su password (PBKDF). Questo algoritmo usa ancora SHA-512, ma esegue l'hashing della password più volte (100.000 iterazioni), rallentando significativamente gli attacchi di forza bruta. Questa modifica migliora la protezione delle password in risposta alle minacce alla sicurezza in continua evoluzione e aiuta i clienti a rispettare le linee guida NIST SP 800-63b.

Autorizzazioni

È richiesta l'autorizzazione ALTER ANY APPLICATION ROLE nel database.

Esempi

Nell'esempio seguente viene creato un ruolo applicazione denominato weekly_receipts con la password 987Gbv876sPYY5m23 e lo schema predefinito Sales.

CREATE APPLICATION ROLE weekly_receipts
    WITH PASSWORD = '987G^bv876sPY)Y5m23'
    , DEFAULT_SCHEMA = Sales;
GO