Delen via


Een toepassingsrol maken

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

In dit artikel 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 Rolleden wordt niet weergegeven wanneer de 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.

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) introduceert een iterated hash-algoritme, RFC2898, ook wel bekend als een wachtwoord-gebaseerde sleutelaanmaakfunctie (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, waardoor de aanmeldingstijd voor AANMELDINGen met SQL-verificatie enigszins kan worden verhoogd. De impact is over het algemeen lager in omgevingen met verbindingspooling, maar is mogelijk duidelijker in scenario's zonder pooling of waar de aanmeldingslatentie nauw wordt bewaakt.

SQL Server Management Studio gebruiken

  1. Vouw in Objectverkenner de database uit waarin u een toepassingsrol wilt maken.

  2. Vouw de map Security uit.

  3. Vouw de map Roles uit.

  4. Klik met de rechtermuisknop op de map Toepassingsrollen en selecteer Nieuwe toepassingsrol....

  5. Voer in het dialoogvenster Toepassingsrol - Nieuw op de Algemene paginade naam van de nieuwe toepassingsrol in het vak Rolnaam in.

  6. 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 het beletselteken (...) selecteren om het dialoogvenster Schema zoeken te openen.

  7. Voer in het vak Wachtwoord een wachtwoord in voor de nieuwe rol. Voer dat wachtwoord opnieuw in het vak Wachtwoord bevestigen in.

  8. 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.

  9. 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

  1. Maak in Objectverkennerverbinding met een exemplaar van Database Engine.

  2. Selecteer op de Standaardbalk Nieuwe query.

  3. Kopieer en plak het volgende voorbeeld in het queryvenster en selecteer uitvoeren. Met deze code maakt u een toepassingsrol weekly_receipts die een wachtwoord heeft en Sales als standaardschema. Vervang <password> door een sterk wachtwoord.

    -- 
    
    CREATE APPLICATION ROLE weekly_receipts
        WITH PASSWORD = '<password>'
        , DEFAULT_SCHEMA = Sales;
    GO
    

Machtigingen

Vereist ALTER ANY APPLICATION ROLE machtiging voor de database.