Megosztás:


ALKALMAZÁS SZEREPÉNEK MÓDOSÍTÁSA (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Módosítja egy alkalmazásszerepkör nevét, jelszavát vagy alapértelmezett sémáját.

Transact-SQL szintaxis konvenciók

Szemantika

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

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

Érvek

application_role_name

A módosítani kívánt alkalmazásszerepkör neve.

NÉV = new_application_role_name

Az alkalmazásszerepkör új nevét adja meg. Ez a név még nem használható az adatbázis egyik tagjának hivatkozására sem.

PASSWORD = 'jelszó'

Megadja az alkalmazásszerepkör jelszavát. password meg kell felelnie az SQL Server-példányt futtató számítógép Windows jelszóházirend-követelményeinek. Mindig használjon erős jelszavakat.

DEFAULT_SCHEMA = schema_name

Megadja az első sémát, amelyet a kiszolgáló az objektumok neveinek feloldásakor keres. schema_name lehet olyan séma, amely nem létezik az adatbázisban.

Megjegyzések

Ha az új alkalmazásszerepkör neve már létezik az adatbázisban, az utasítás meghiúsul. Ha egy alkalmazásszerepkör neve, jelszava vagy alapértelmezett sémája megváltozik, a szerepkörhöz társított azonosító nem módosul.

Fontos

A jelszó lejárati szabályzata nem vonatkozik az alkalmazásszerepkör-jelszavakra. Ezért fokozottan ügyeljen az erős jelszavak kiválasztására. Az alkalmazásszerepköröket meghívó alkalmazásoknak tárolniuk kell a jelszavukat.

Az alkalmazásszerepkörök a sys.database_principals katalógusnézetben láthatók.

Megjegyzés:

A sémák nem egyenértékűek az adatbázis felhasználóival. A rendszerkatalógus nézeteivel azonosíthatja az adatbázis-felhasználók és a sémák közötti különbségeket.

Az SQL Server 2012 -től (11.x) kezdődően az SQL Server és az Azure SQL DB sha-512 kivonatot használt egy 32 bites véletlenszerű és egyedi sóval kombinálva. Ez a módszer statisztikailag kiszámíthatatlanná tette, hogy a támadók jelszavakat következtethessenek.

Az SQL Server 2025 (17.x) iterált kivonatoló algoritmust vezet be, RFC2898, más néven jelszóalapú kulcs származtatási függvényt (PBKDF). Ez az algoritmus továbbra is SHA-512-t használ, de többször is kivonatosítja a jelszót (100 000 iteráció), jelentősen lelassítva a találgatásos támadásokat. Ez a módosítás javítja a jelszóvédelmet a változó biztonsági fenyegetésekre válaszul, és segít az ügyfeleknek megfelelni az NIST SP 800-63b irányelveinek. Ez a biztonsági fejlesztés erősebb kivonatolási algoritmust használ, amely kis mértékben növelheti az SQL Authentication-bejelentkezések bejelentkezési idejét. A hatás általában alacsonyabb a kapcsolatkészletezéssel rendelkező környezetekben, de a készletezés nélküli helyzetekben vagy a bejelentkezési késést szorosan figyelik.

Engedélyek

Az adatbázis BÁRMELY ALKALMAZÁSSZEREPKÖR-engedélyének módosítása szükséges. Az alapértelmezett séma módosításához a felhasználónak alter engedélyre is szüksége van az alkalmazásszerepkörhöz. Egy alkalmazásszerepkör módosíthatja a saját alapértelmezett sémáját, a nevét és a jelszavát azonban nem.

Példák

Egy. Az alkalmazásszerepkör nevének módosítása

Az alábbi példa az alkalmazásszerepkör weekly_receipts nevét a következőre receipts_ledgermódosítja: .

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

B. Az alkalmazásszerepkör jelszavának módosítása

Az alábbi példa megváltoztatja az alkalmazásszerepkör receipts_ledgerjelszavát.

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

C. A név, a jelszó és az alapértelmezett séma módosítása

Az alábbi példa egyszerre módosítja az alkalmazásszerepkör receipts_ledger nevét, jelszavát és alapértelmezett sémáját.

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