Entsprechend der documentation sollte der Benutzer entweder VIEW ANY DEFINITION
oder ALTER ANY CREDENTIAL
zum Anzeigen der Anmeldeinformationen haben. Wenn ich diese Berechtigung erteile, kann der Benutzer alle Anmeldeinformationen sehen. Gibt es eine Möglichkeit, den Benutzer zu beschränken, kann nur eine Berechtigung in SQL Server 2014 angezeigt werden?SQL Server sys.credentials Berechtigungen
0
A
Antwort
0
Sie erstellen ein neues Ansichtsobjekt, das die Tabelle sys.credentials
basierend auf der aktuellen Benutzeranmeldung, z.
CREATE VIEW dbo.GetAllowedCredentials
AS
SELECT c.credential_id,
c.name,
c.credential_identity,
c.create_date,
c.modify_date,
c.target_type,
c.target_id
FROM sys.credentials AS c
INNER JOIN sys.server_principals AS sp ON sp.credential_id = c.credential_id
WHERE sp.name = ORIGINAL_LOGIN();
Sie können Berechtigungen für diese Ansicht nach Bedarf zuweisen.
Haben Sie sich das Modul Signieren angesehen? Erstellen Sie eine gespeicherte Prozedur und verwenden Sie dann "Signatur erstellen", um sie zu signieren (und gewähren Sie Berechtigungen basierend auf dem Zertifikat, das sie signiert hat). –