Notatka:
Połączenia z bazami danych są obsługiwane w aplikacjach Insights in ArcGIS Enterprise i Insights desktop.
W aplikacji ArcGIS Insights występują dwa typy operacji na danych:
- Nawiązywanie połączenia z relacyjną bazą danych i przeglądanie jej zasobów bez buforowania danych w pamięci podręcznej.
- Nawiązywanie połączenia z relacyjną bazą danych i przeglądanie jej zasobów z użyciem funkcji buforowania danych w pamięci podręcznej.
Nawiązywanie połączenia z relacyjną bazą danych i przeglądanie jej zasobów z użyciem funkcji buforowania danych w pamięci podręcznej umożliwia aplikacji Insights tworzenie tymczasowych tabel w bazach danych i zarządzanie nimi.
Następujące tabele zawierają minimalne wymagane uprawnienia potrzebne do nawiązania połączenia z relacyjną bazą danych oraz do przeglądania jej zasobów, a także opcjonalnie do zezwolenia aplikacji Insights na korzystanie z funkcji buforowania danych w pamięci podręcznej.
Notatka:
Połączenia są tylko do odczytu. Aplikacja Insights nie zezwala na tworzenie ani na edycję danych w bazie danych.
Jeśli nie masz uprawnień do bazy danych wymaganych do korzystania z funkcji buforowania danych w pamięci podręcznej, dane zostaną skopiowane do hostowanego magazynu danych wdrożenia.
Google BigQuery
W bazie danych BigQuery uprawnienia użytkowników są nadawane za pośrednictwem ról. Użytkownik, który tworzy połączenie z bazą danych BigQuery, musi mieć uprawnienia ról bazowych (edytujący, właściciel lub przeglądający) albo odpowiednie uprawnienia w roli niestandardowej.
Microsoft SQL Server
Typ operacji | Wymagane uprawnienia | Cel |
---|---|---|
Bez buforowania danych | CONNECT | To uprawnienie umożliwia użytkownikom łączenie się z bazą danych. Uprawnienie CONNECT jest domyślnie nadawane publicznej roli bazy danych dla baz danych. Jeśli to uprawnienie zostanie odebrane roli publicznej, należy jawnie nadać uprawnienie CONNECT konkretnym rolom lub loginom dla baz danych. |
SELECT dla tabel innych użytkowników | Osoby przeglądające dane potrzebują uprawnień SELECT dla konkretnych tabel, które mają być dla nich widoczne i do których mogą wysyłać zapytania. Jeśli dozwolony jest odczyt wszystkich tabel w bazie danych, można przypisać użytkownikom rolę bazy danych db_datareader. W przeciwnym razie należy nadać uprawnienie SELECT do konkretnych tabel i widoków. | |
Z buforowaniem danych Notatka:Połączenia korzystające z buforowania danych wymagają również uprawnień mających zastosowanie do połączeń bez buforowania danych. | ALTER dla schematu | Uprawnienie ALTER pozwala aplikacji Insights na tworzenie indeksów i zarządzanie tymczasowymi tabelami w schemacie użytkownika. |
CREATE TABLE | Uprawnienie CREATE TABLE umożliwia aplikacji Insights utworzenie tymczasowych tabel lub widoków w schemacie użytkownika. |
Przykłady
Następujący kod SQL stanowi przykład operacji nadawania uprawnień w bazach danych SQL Server. Administratorzy baz danych mogą dostosować te przykłady, aby nadać uprawnienia użytkownikom baz danych w swoich instytucjach.
Nadawanie użytkownikom uprawnień do odczytywania i zapisywania:
use <databaseName>;
GO
GRANT CREATE TABLE TO <userName>;
GRANT ALTER ON SCHEMA::dbo TO <userName>;
EXEC sp_addrolemember N'db_datareader', N'<userName>';
EXEC sp_addrolemember N'db_datawriter', N'<userName>';
GO
Nadawanie użytkownikom, którzy mogą tylko odczytywać dane, uprawnień na poziomie bazy danych:
use <databaseName>;
GO
EXEC sp_addrolemember N'db_datareader', N'<userName>';
GO
Nadawanie użytkownikom, którzy mogą tylko odczytywać dane, uprawnienia SELECT do konkretnych tabel:
use <databaseName>;
GO
GRANT SELECT ON OBJECT::<schema>.<tableName1> TO <userName>;
GRANT SELECT ON OBJECT::<schema>.<tableName2> TO <userName>;
Oracle
Typ operacji | Wymagane uprawnienia | Cel |
---|---|---|
Bez buforowania danych | Rola CONNECT lub uprawnienie CREATE SESSION | Rola CONNECT lub uprawnienie CREATE SESSION umożliwia użytkownikom łączenie się z bazą danych. Począwszy od wersji Oracle 10g Release 2 (10.2), rola CONNECT dysponuje tylko uprawnieniem CREATE SESSION. |
SELECT dla tabel innych użytkowników | Osoby przeglądające dane potrzebują uprawnień SELECT dla konkretnych tabel, które mają być dla nich widoczne i do których mogą wysyłać zapytania. | |
Z buforowaniem danych Notatka:Połączenia korzystające z buforowania danych wymagają również uprawnień mających zastosowanie do połączeń bez buforowania danych. | CREATE TABLE* | Uprawnienie CREATE TABLE umożliwia aplikacji Insights utworzenie tymczasowych tabel w schemacie użytkownika. *Należy przydzielić odpowiednią wielkość przydziału (QUOTA) dla użytkownika w obszarze tabel za pomocą polecenia ALTER USER <username> QUOTA <size> ON <tablespace>. |
CREATE SEQUENCE | Uprawnienie CREATE SEQUENCE umożliwia aplikacji Insights generowanie indeksów przestrzennych. |
Przykłady
Następujący kod SQL stanowi przykład operacji nadawania uprawnień w bazach danych Oracle. Administratorzy baz danych mogą dostosować te przykłady, aby nadać uprawnienia użytkownikom baz danych w swoich instytucjach.
Nadawanie użytkownikom uprawnień do odczytywania i zapisywania:
GRANT CONNECT TO <userName>;
GRANT CREATE TABLE TO <userName>;
ALTER USER <userName> QUOTA <size> ON USERS;
GRANT CREATE SEQUENCE TO <userName>;
Nadawanie użytkownikom uprawnień tylko do odczytywania:
GRANT CONNECT TO <userName>;
GRANT SELECT ON <schema>.<tableName> TO <userName>;
PostgreSQL
Typ operacji | Wymagane uprawnienia | Cel |
---|---|---|
Bez buforowania danych | Uprawnienie CONNECT dla bazy danych | To uprawnienie umożliwia użytkownikom łączenie się z bazą danych. Uprawnienie CONNECT dla baz danych należy przyznawać określonym loginom bazy danych. |
Uprawnienie USAGE dla schematów użytkowników lub uprawnienie SELECT dla tabel użytkowników | Użytkownicy przeglądający dane potrzebują uprawnienia USAGE w przypadku określonych schematów zawierających tabele użytkowników. Mogą potrzebować także uprawnień SELECT dotyczących określonych tabel lub widoków użytkowników, aby mogli je wyświetlać i tworzyć dla nich zapytania. Przyznaj uprawnienie SELECT dla określonych tabel i widoków. | |
Z buforowaniem danych Notatka:Połączenia korzystające z buforowania danych wymagają również uprawnień mających zastosowanie do połączeń bez buforowania danych. | Uprawnienie CREATE dla schematu | Uprawnienie CREATE pozwala aplikacji Insights na tworzenie indeksów i zarządzanie tabelami tymczasowymi w schemacie użytkownika. |
Przykłady
Następujący kod SQL stanowi przykład operacji nadawania uprawnień w bazach danych PostgreSQL. Administratorzy baz danych mogą dostosować te przykłady, aby nadać uprawnienia użytkownikom baz danych w swoich instytucjach.
Nadawanie użytkownikom uprawnień do odczytywania i zapisywania:
GRANT CONNECT ON DATABASE <databaseName> TO <userName>;
GRANT USAGE ON SCHEMA <schemaName>TO <userName>;
GRANT CREATE ON SCHEMA <schemaName> TO <userName>;
Nadawanie użytkownikom uprawnień tylko do odczytywania:
GRANT CONNECT ON DATABASE <databaseName> TO <userName>;
GRANT USAGE ON SCHEMA <schemaName>TO <userName>; -- Give the access to all tables in the schema
GRANT SELECT ON <tableName> TO <userName>; -- Or give the access to a specific table
SAP HANA
Typ operacji | Wymagane uprawnienia | Cel |
---|---|---|
Bez buforowania danych | SELECT ON sys.st_geometry_columns i sys.st_spatial_reference_systems | Te uprawnienia są wymagane do odczytu metadanych ST_GEOMETRY na potrzeby operacji przestrzennych. |
SELECT ON <tabela_1>,<tabela_2>, <tabela_n> | Osoby przeglądające dane potrzebują uprawnień SELECT dla konkretnych tabel, które mają być dla nich widoczne i do których mogą wysyłać zapytania. | |
Z buforowaniem danych Notatka:Połączenia korzystające z buforowania danych wymagają również uprawnień mających zastosowanie do połączeń bez buforowania danych. | CREATE TABLE DROP TABLE Alternatywnie użytkownik musi być standardowym użytkownikiem HANA. | Umożliwia aplikacji Insights tworzenie lub usuwanie tabel we własnym schemacie oraz wstawianie danych. |
Przykłady
Następujący kod SQL stanowi przykład operacji nadawania uprawnień w bazach danych SAP HANA. Administratorzy baz danych mogą dostosować te przykłady, aby nadać uprawnienia użytkownikom baz danych w swoich instytucjach.
Standardowy użytkownik z uprawnieniami do odczytu i zapisu ma wszystkie uprawnienia wymagane do używania aplikacji Insights.
Użytkownicy niestandardowi:
GRANT SELECT ON SCHEMA <schemaName> to <userName>; -- executed by the schema owner
GRANT SELECT ON sys.st_geometry_columns TO <userName>; -- executed by SYSTEM account
GRANT SELECT ON sys.st_spatial_reference_systems TO <userName>;
Snowflake
W bazie danych Snowflake uprawnienia użytkowników są nadawane za pośrednictwem ról. Rola użytkownika, który tworzy połączenie z bazą danych Snowflake, musi uwzględniać następujące uprawnienia:
Wymagane uprawnienie | Cel |
---|---|
USAGE on <baza_danych> | Wymagane do uzyskiwania dostępu do tabel w bazie danych. Użytkownik, który tworzy połączenie z bazą danych, musi mieć nadane uprawnienie USAGE do tej bazy danych. |
USAGE on <schemat> | Wymagane do uzyskiwania dostępu do tabel ze schematu. Domyślny schemat to PUBLIC. |
SELECT on <tabela> | Wymagane, aby widzieć dane w tabeli i wysyłać zapytania o te dane. Dla każdej tabeli używanej z poziomu połączenia z bazą danych musi zostać nadane uprawnienie SELECT. |
USAGE on <magazyn> | Wymagane do uruchamiania zapytań w podanym magazynie. |
Przykłady
Następujący kod SQL stanowi przykład operacji nadawania uprawnień w bazie danych Snowflake. Administratorzy baz danych mogą dostosować te przykłady, aby nadać uprawnienia użytkownikom baz danych w swoich instytucjach.
Nadaj uprawnienia do wszystkich tabel w bazie danych:
grant USAGE on DATABASE <databaseName> to role <roleName>;
grant USAGE on SCHEMA <schemaName> to role <roleName>;
grant SELECT ON ALL TABLES IN DATABASE <databaseName> to role <roleName>;
grant USAGE on WAREHOUSE <warehouseName> to role <roleName>;
Kolejne etapy
Po zweryfikowaniu i zaktualizowaniu uprawnień do bazy danych (jeśli było to niezbędne) następną czynnością jest utworzenie połączenia z bazą danych, dzięki któremu można będzie uzyskać dostęp do tabel baz danych bezpośrednio z aplikacji Insights. Więcej informacji zawiera temat Tworzenie połączenia z bazą danych.