Исходный код вики Trino

Версия 1.1 от Ирина Сафонова на 05.03.2024, 11:59

Последние авторы
1 {{box cssClass="floatinginfobox" title="**Содержание**"}}
2 {{toc/}}
3 {{/box}}
4
5 (% data-xwiki-non-generated-content="java.util.List" %)
6 (((
7 = Параметры подключения =
8 )))
9
10 ----
11
12 Поддерживается версия [[Trino>>https://trino.io/]] 352 и выше. Укажите следующий формат строки подключения в поле **SQLALCHEMY URI** вкладки **Базовая настройка**:
13
14 {{code language="none"}}
15 trino://{username}:{password}@{hostname}:{port}/{catalog}
16 {{/code}}
17
18 Узнайте [[про список доступных портов>>url:https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/#H42143F43844143E43A43443E44144244343F43D44B44543F43E44044243E432]].
19
20 Если  используете Trino с docker на локальном компьютере, укажите следующий URL-адрес подключения:
21
22 {{code language="none"}}
23 trino://trino@host.docker.internal:8080
24 {{/code}}
25
26 = Способы аутентификации =
27
28 Поддерживаются следующие способы аутентификации:
29
30 * [[базовый>>https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/G21.%20Trino/#H41143043743E43244B43944143F43E44143E43143044344243543D44243844443843A430446438438]].
31 * [[через Kerberos>>https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/G21.%20Trino/#H41044344243543D44243844443843A43044643844F447435440435437Kerberos]].
32 * [[через сертификат>>https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/G21.%20Trino/#H41044344243543D44243844443843A43044643844F44743544043543744143544044243844443843A430442]].
33 * [[через JWT>>https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/G21.%20Trino/#H41044344243543D44243844443843A43044643844F447435440435437JWT]].
34 * [[пользовательский>>https://wiki.dfcloud.ru/bin/view/Big%20Data/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20Cloud%20BI/2.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/02.%20%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B0/A.%20%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20%D1%81%20%D0%B1%D0%B0%D0%B7%D0%B0%D0%BC%D0%B8%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/G21.%20Trino/#H41F43E43B44C43743E43243044243543B44C44143A43843944143F43E44143E43143044344243543D44243844443843A430446438438]].
35
36 == Базовый способ аутентификации ==
37
38 Укажите имя пользователя/пароль в строке подключения или в поле {{code language="none"}}Secure Extra{{/code}} в **Advanced / Security**.
39
40 **Строка подключения:**
41
42 {{code language="none"}}
43 trino://{username}:{password}@{hostname}:{port}/{catalog}
44 {{/code}}
45
46 В поле {{code language="none"}}Secure Extra{{/code}}:
47
48 {{code language="none"}}
49 {
50 "auth_method": "basic",
51 "auth_params": {
52 "username": "<username>",
53 "password": "<password>"
54 }
55 }
56 {{/code}}
57
58 {{info}}
59 Если указаны оба параметра, у поля {{code language="none"}}Secure Extra{{/code}} всегда более высокий приоритет.
60 {{/info}}
61
62 == Аутентификация через Kerberos ==
63
64 Настройте поле {{code language="none"}}Secure Extra{{/code}}:
65
66 {{code language="none"}}
67 {
68 "auth_method": "kerberos",
69 "auth_params": {
70 "service_name": "superset",
71 "config": "/path/to/krb5.config",
72 ...
73 }
74 }
75 {{/code}}
76
77 == Аутентификация через сертификат ==
78
79 (% id="cke_bm_20700S" style="display:none" %) (%%)Настройте поле {{code language="none"}}Secure Extra{{/code}}:
80
81 {{code language="none"}}
82 {
83 "auth_method": "certificate",
84 "auth_params": {
85 "cert": "/path/to/cert.pem",
86 "key": "/path/to/key.pem"
87 }
88 }
89 {{/code}}
90
91 == Аутентификация через [[JWT>>https://jwt.io/]] ==
92
93 Настройте {{code language="none"}}auth_method{{/code}} и укажите токен в поле {{code language="none"}}Secure Extra{{/code}}:
94
95 {{code language="none"}}
96 {
97 "auth_method": "jwt",
98 "auth_params": {
99 "token": "<your-jwt-token>"
100 }
101 }
102 {{/code}}
103
104 == Пользовательский способ аутентификации ==
105
106 Добавьте пользовательскую аутентификацию в список разрешений {{code language="none"}}ALLOWED_EXTRA_AUTHENTICATIONS{{/code}} конфигурационного файла:
107
108 {{code language="none"}}
109 from your.module import AuthClass
110 from another.extra import auth_method
111
112 ALLOWED_EXTRA_AUTHENTICATIONS: Dict[str, Dict[str, Callable[..., Any]]] = {
113 "trino": {
114 "custom_auth": AuthClass,
115 "another_auth_method": auth_method,
116 },
117 }
118 {{/code}}
119
120 Далее настройте поле {{code language="none"}}Secure Extra{{/code}}:
121
122 {{code language="none"}}
123 {
124 "auth_method": "custom_auth",
125 "auth_params": {
126 ...
127 }
128 }
129 {{/code}}
130
131 При необходимости используйте пользовательскую аутентификацию, предоставив ссылку на свой класс {{code language="none"}}trino.auth.Authentication{{/code}} или [[фабричную функцию>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%A4%D0%B0%D0%B1%D1%80%D0%B8%D1%87%D0%BD%D0%B0%D1%8F%20%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F]], возвращающую экземпляр {{code language="none"}}Authentication{{/code}}) в {{code language="none"}}auth_method{{/code}}.
132
133 = Статьи по теме =
134
135 ----
136
137 * [[Подключение к БД>>doc:Big Data.Сервис Cloud BI.2\. Инструкция.02\. Руководство администратора.A\. Соединение с базами данных.Подключение к БД.WebHome]]
138 * [[Официальная документация БД>>https://trino.io/docs/current/]]