Udostępnij za pośrednictwem


sp_addapprole (Transact-SQL)

Dodaje rola aplikacji w bieżącej bazie danych.

Important noteImportant Note:

This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature. Użycie TWORZENIE rola aplikacji zamiast niego.

Topic link iconKonwencje składni języka Transact-SQL

sp_addapprole [ @rolename = ] 'role' , [ @password = ] 'password'

Argumenty

  • [ @rolename = ] 'role'
    Is the name of the new application role.role is sysname, with no default.role must be a valid identifier and cannot already exist in the current database.

    Nazwa roli aplikacji może zawierać od 1 do 128 znaków, łącznie z liter, symboli i liczb.Nazwy roli nie może zawierać kreski ułamkowej odwróconej (\) ani mieć wartości NULL lub ciąg pusty ("").

  • [ @password = ] 'password'
    Is the password required to activate the application role.password is sysname, with no default.password cannot be NULL.

Wartości kodów powrotnych

0 (sukces) lub 1 (brak)

Remarks

We wcześniejszych wersjach SQL Server, użytkownicy (i role) nie są całkowicie odmienne od schematów. Zaczyna się od SQL Server 2005, schematy całkowicie różni się od ról. Ta nowa architektura jest odzwierciedlane w zachowanie CREATE rola aplikacji.Ta instrukcja zastępuje sp_addapprole.Aby uzyskać więcej informacji zobaczUser-Schema Separation.

Aby zachować zgodność ze starszymi wersjami SQL Server, sp_addapprole będzie wykonać następujące czynności:

  • Jeśli schemat o tej samej nazwie jak rola aplikacji już nie istnieje, zostanie utworzony taki schemat.Nowy schemat zostanie właścicielem roli aplikacji, a zostanie on domyślnego schematu rola aplikacji.

  • Jeśli schemat o tej samej nazwie jak rola aplikacji już istnieje, procedura nie powiedzie się.

  • Co do złożoności haseł nie jest sprawdzany przez sp_addapprole.Ale co do złożoności haseł jest sprawdzany przez CREATE rola aplikacji.

Parametr password jest przechowywana jako jednokierunkowa wartość mieszania.

The sp_addapprole procedura przechowywana cannot be executed from within a user-defined transaction.

Security noteSecurity Note:

Program Microsoft ODBC szyfrowanie opcja nie jest obsługiwana przez Klient SQL.Gdy użytkownik może monitował użytkowników o wprowadzenie poświadczenia rola aplikacji w czasie wykonywania.Należy unikać przechowywania poświadczenia w pliku.Muszą przetrwać poświadczenia, ich szyfrowania za pomocą funkcji CryptoAPI.

Uprawnienia

Wymaga ALTER ROLE aplikacja bez uprawnień w bazie danych.Jeśli schemat o takiej samej nazwie i właściciela jako nową rolę jeszcze nie istnieje, wymaga również uprawnienie CREATE SCHEMA w bazie danych.

Przykłady

W następującym przykładzie dodano nową rola aplikacji SalesApp przy użyciu hasła x97898jLJfcooFUYLKm387gf3 w bieżącej bazie danych.

EXEC sp_addapprole 'SalesApp', 'x97898jLJfcooFUYLKm387gf3' ;
GO