Udostępnij za pośrednictwem


Application Roles

rola aplikacji jest bazą danych głównych, która umożliwia aplikacji do uruchamiania przy użyciu uprawnień, jak użytkownik.Aby umożliwić dostęp do określonych danych tylko tym użytkownikom, którzy łączą się poprzez określonej aplikacji, można użyć z ról aplikacji.W przeciwieństwie do ról bazy danych z ról aplikacji zawierać żadnych członków, a nie są aktywne, domyślnie.Praca z ról aplikacji z obu trybów uwierzytelnianie.Role aplikacji są włączone przy użyciu sp_setapprole, który wymaga podania hasła.Ponieważ z ról aplikacji głównego poziom bazy danych, mają dostęp innych baz danych za pośrednictwem tylko uprawnienia udzielone w tych bazach danych z Gość.Dlatego wszystkie bazy danych w którym Gość zostało wyłączone jest niedostępna do ról aplikacji w innych bazach danych.

W SQL Server, z ról aplikacji nie może uzyskać dostępu do metadane poziom serwera, ponieważ nie są one skojarzone z obiektem poziom serwera. Wyłączenie tego ograniczenia i tym samym umożliwić ról aplikacji uzyskać dostęp do metadane poziom serwera, należy ustawić flagę globalną 4616.Aby uzyskać więcej informacji zobacz Flagi śledzenia (Transact-SQL) i DBCC TRACEON (języka Transact-SQL).

Łączenie się z rola aplikacji

Proces, o jaką rola aplikacji przełącza kontekstów zabezpieczeń składają się następujące czynności:

  1. Użytkownik uruchamia aplikację klient.

  2. klient Aplikacja się łączy do wystąpienia SQL Server jako użytkownik.

  3. Następnie aplikacja wykonuje sp_setapprole procedura przechowywana przy użyciu hasła, znanych tylko do aplikacji.

  4. Jeśli nazwa rola aplikacji i hasło są prawidłowe, rola aplikacji jest włączona.

  5. W tym momencie połączenie utraci uprawnień użytkownika i przyjęto założenie, uprawnień rola aplikacji.

Uprawnienia, poprzez rola aplikacji będą nadal obowiązywać przez cały czas trwania połączenia.

We wcześniejszych wersjach SQL Server, jedynym sposobem na ponownie pobrać swojego oryginalnego kontekstu zabezpieczeń po uruchomieniu rola aplikacji jest odłączyć i ponownie podłączyć się do użytkownika SQL Server. Zaczyna się od SQL Server 2005, sp_setapprole jest dostępna opcja, która tworzy plik cookie.Plik cookie zawiera informacje kontekstowe, przed włączeniem rola aplikacji.Plik cookie mogą być używane przez sp_unsetapprole , aby powrócić do swojego oryginalnego kontekstu stanu sesja.Aby uzyskać informacje dotyczące opcja nowe i przykładem zobacz sp_setapprole (Transact-SQL).

Security noteSecurity Note:

ODBC szyfrowanie opcja nie jest obsługiwana przez Klient SQL.Gdy przez sieć przy przesyłaniu informacji poufnych, za pomocą Secure Sockets Layer (SSL) lub protokołu IPsec do szyfrowania w kanale.Jeśli muszą przetrwać poświadczenia w aplikacji klienckiej, szyfrowania poświadczeń przy użyciu funkcji crypto API.W SQL Server 2005 i jego nowsze wersje, parametr password jest przechowywana jako jednokierunkowa wartość mieszania.