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
Voegt een toepassingsrol toe aan de huidige database.
Belangrijk
Deze functie wordt verwijderd in een toekomstige versie van SQL Server. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie. Gebruik in plaats daarvan CREATE APPLICATION ROLE .
Transact-SQL syntaxis-conventies
Syntaxis
sp_addapprole
[ @rolename = ] N'rolename'
, [ @password = ] N'password'
[ ; ]
Argumenten
[ @rolename = ] N'rolename'
De naam van de nieuwe toepassingsrol. @rolenameis sysname, zonder standaardinstelling. @rolename moet een geldige id zijn en kan nog niet bestaan in de huidige database.
Namen van toepassingsrollen kunnen uit 1 tot 128 tekens bestaan, inclusief letters, symbolen en cijfers. Rolnamen mogen geen backslash (\) bevatten of NULL een lege tekenreeks ('').
[ @password = ] N'wachtwoord'
Het wachtwoord dat is vereist voor het activeren van de toepassingsrol.
@password is sysname, zonder standaardinstelling.
@password kan niet zijn NULL.
Codewaarden retourneren
0 (geslaagd) of 1 (mislukt).
Opmerkingen
In eerdere versies van SQL Server verschillen gebruikers (en rollen) niet volledig van schema's. Vanaf SQL Server 2005 (9.x) verschillen schema's volledig van rollen. Deze architectuur wordt weerspiegeld in het gedrag van CREATE APPLICATION ROLE. Deze verklaring vervangt sp_addapprole.
Als u compatibiliteit met eerdere versies van SQL Server wilt behouden, sp_addapprole voert u de volgende controles uit:
Als er nog geen schema met dezelfde naam bestaat als de toepassingsrol, wordt het schema gemaakt. Het nieuwe schema is eigendom van de toepassingsrol en het is het standaardschema van de toepassingsrol.
Als er al een schema met dezelfde naam als de toepassingsrol bestaat, mislukt de procedure.
sp_addapprolecontroleert de complexiteit van het wachtwoord niet. Wachtwoordcomplexiteit wordt gecontroleerd doorCREATE APPLICATION ROLE.
De parameter @password wordt opgeslagen als een hash in één richting.
De sp_addapprole opgeslagen procedure kan niet worden uitgevoerd vanuit een door de gebruiker gedefinieerde transactie.
Belangrijk
De microsoft ODBC-optie encrypt wordt niet ondersteund door SqlClient. Wanneer u dat kunt, vraagt u gebruikers om referenties voor de toepassingsrol op te geven tijdens runtime. Vermijd het opslaan van referenties in een bestand. Als u referenties moet behouden, versleutelt u deze met behulp van de CryptoAPI-functies.
Machtigingen
Vereist ALTER ANY APPLICATION ROLE-machtiging voor de database. Als er nog geen schema met dezelfde naam en eigenaar als de nieuwe rol bestaat, is ook de machtiging SCHEMA MAKEN vereist voor de database.
Voorbeelden
In het volgende voorbeeld wordt de nieuwe toepassingsrol SalesApp toegevoegd aan de huidige database. Vervang <password> door een sterk wachtwoord.
EXECUTE sp_addapprole 'SalesApp', '<password>';
GO