Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
In dit onderwerp wordt beschreven hoe u een toepassingsrol maakt in SQL Server met behulp van SQL Server Management Studio of Transact-SQL. Toepassingsrollen beperken gebruikerstoegang tot een database, behalve via specifieke toepassingen. Toepassingsrollen hebben geen gebruikers, dus de lijst met rolleden wordt niet weergegeven wanneer toepassingsrol is geselecteerd.
Belangrijk
Wachtwoordcomplexiteit wordt gecontroleerd wanneer wachtwoorden voor de toepassingsrol zijn ingesteld. Toepassingen die toepassingsrollen aanroepen, moeten hun wachtwoorden opslaan. Wachtwoorden voor de toepassingsrol moeten altijd versleuteld worden opgeslagen.
In Dit Onderwerp
Voordat u begint:
AchtergrondEen toepassingsrol maken met behulp van:
Voordat u begint
Achtergrond
Vanaf SQL Server 2012 (11.x) hebben SQL Server en Azure SQL DB een SHA-512-hash gebruikt in combinatie met een 32-bits willekeurige en unieke zout. Deze methode maakte het statistisch onfeilbaar voor aanvallers om wachtwoorden te afleiden.
SQL Server 2025 (17.x) Preview introduceert een iterated hash-algoritme, RFC2898, ook wel bekend als een functie voor sleutelontzetting op basis van een wachtwoord (PBKDF). Dit algoritme gebruikt nog steeds SHA-512, maar hashes het wachtwoord meerdere keren (100.000 iteraties), waardoor beveiligingsaanvallen aanzienlijk worden vertraagd. Deze wijziging verbetert de wachtwoordbeveiliging als reactie op veranderende beveiligingsrisico's en helpt klanten te voldoen aan de NIST SP 800-63b-richtlijnen. Deze beveiligingsverbetering maakt gebruik van een sterker hashing-algoritme, wat de aanmeldingstijd voor SQL-verificatieaanmelding enigszins kan verhogen. De impact is over het algemeen lager in omgevingen met verbindingspooling, maar kan in scenario's duidelijker zijn zonder pooling of waar de aanmeldingslatentie nauw wordt bewaakt.
Veiligheid
Machtigingen
Vereist ALTER ANY APPLICATION ROLE-machtiging voor de database.
SQL Server Management Studio gebruiken
Een toepassingsrol maken
Vouw in Objectverkenner de database uit waarin u een toepassingsrol wilt maken.
Vouw de map Security uit.
Vouw de map Roles uit.
Klik met de rechtermuisknop op de map Toepassingsrollen en selecteer Nieuwe toepassingsrol....
Voer in het dialoogvenster Toepassingsrol - Nieuw op de Algemene paginade naam van de nieuwe toepassingsrol in het vak Rolnaam in.
Geef in het vak Standaardschema het schema op dat de eigenaar is van objecten die door deze rol zijn gemaakt door de objectnamen in te voeren. U kunt ook op het beletselteken (...) klikken om het dialoogvenster Schema zoeken te openen.
Voer in het vak Wachtwoord een wachtwoord in voor de nieuwe rol. Voer dat wachtwoord opnieuw in het vak Wachtwoord bevestigen in.
Onder Schema's die eigendom zijn van deze rol, selecteer of bekijk de schema's die eigendom zijn van deze rol. Een schema kan slechts eigendom zijn van één schema of rol.
Selecteer OK-.
Aanvullende opties
Het dialoogvenster Toepassingsrol - Nieuw biedt ook opties op twee extra pagina's: Beveiligbare elementen en Uitgebreide eigenschappen.
De pagina Securables bevat alle mogelijke beveiligbare objecten en de machtigingen voor deze beveiligbare objecten die aan de aanmelding kunnen worden verleend.
Met de uitgebreide eigenschappen pagina kunt u aangepaste eigenschappen toevoegen aan databasegebruikers.
Transact-SQL gebruiken
Een toepassingsrol maken
Maak in Objectverkennerverbinding met een exemplaar van Database Engine.
Klik op de standaardbalk op Nieuwe query.
Kopieer en plak het volgende voorbeeld in het queryvenster en klik op uitvoeren.
-- Creates an application role called "weekly_receipts" that has the password "987Gbv876sPYY5m23" and "Sales" as its default schema. CREATE APPLICATION ROLE weekly_receipts WITH PASSWORD = '987G^bv876sPY)Y5m23' , DEFAULT_SCHEMA = Sales; GO
Zie CREATE APPLICATION ROLE (Transact-SQL)voor meer informatie.