Изменения документа F19. Trino
Редактировал(а) Ирина Сафонова 23.01.2024, 01:06
От версии 1.1
отредактировано Ирина Сафонова
на 18.07.2023, 23:21
на 18.07.2023, 23:21
Изменить комментарий:
К данной версии нет комментариев
К версии 6.1
отредактировано Ирина Сафонова
на 19.07.2023, 00:31
на 19.07.2023, 00:31
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,8 +1,128 @@ 1 1 **Содержание** 2 2 3 +{{toc/}} 3 3 4 4 = Общая информация = 5 5 6 6 ---- 7 7 8 -Поддерживается версия Trino 352 и выше. 9 +Поддерживается версия [[Trino>>https://trino.io/]] 352 и выше. 10 + 11 +Укажите следующий формат строки подключения (поле **SQLALCHEMY URI** вкладки **Базовая настройка**): 12 + 13 +{{code language="none"}} 14 +trino://{username}:{password}@{hostname}:{port}/{catalog} 15 +{{/code}} 16 + 17 +Если вы используете Trino с docker на локальном компьютере, используйте следующий URL-адрес подключения: 18 + 19 +{{code language="none"}} 20 +trino://trino@host.docker.internal:8080 21 +{{/code}} 22 + 23 += Способы аутентификации = 24 + 25 +Поддерживаются следующие способы аутентификации: 26 + 27 +* Базовый 28 +* Через Kerberos. 29 +* Через сертификат. 30 +* Через JWT. 31 +* Пользовательский. 32 + 33 +== Базовый способ аутентификации == 34 + 35 +Вы можете указать имя пользователя/пароль в строке подключения или в поле {{code language="none"}}Secure Extra{{/code}} в Advanced / Security. 36 + 37 +Строка подключения 38 + 39 +{{code language="none"}} 40 +trino://{username}:{password}@{hostname}:{port}/{catalog} 41 +{{/code}} 42 + 43 +В поле {{code language="none"}}Secure Extra{{/code}}: 44 + 45 +{{code language="none"}} 46 +{ 47 + "auth_method": "basic", 48 + "auth_params": { 49 + "username": "<username>", 50 + "password": "<password>" 51 + } 52 +} 53 +{{/code}} 54 + 55 +{{info}} 56 +Если указаны оба параметра, {{code language="none"}}Secure Extra{{/code}} всегда имеет более высокий приоритет. 57 +{{/info}} 58 + 59 +== Аутентификация через Kerberos == 60 + 61 +Настройте поле {{code language="none"}}Secure Extra{{/code}} следующим образом: 62 + 63 +{{code language="none"}} 64 +{ 65 + "auth_method": "kerberos", 66 + "auth_params": { 67 + "service_name": "superset", 68 + "config": "/path/to/krb5.config", 69 + ... 70 + } 71 +} 72 +{{/code}} 73 + 74 +== Аутентификация через сертификат == 75 + 76 +(% id="cke_bm_20700S" style="display:none" %) (%%)Настройте поле {{code language="none"}}Secure Extra{{/code}} следующим образом: 77 + 78 +{{code language="none"}} 79 +{ 80 + "auth_method": "certificate", 81 + "auth_params": { 82 + "cert": "/path/to/cert.pem", 83 + "key": "/path/to/key.pem" 84 + } 85 +} 86 +{{/code}} 87 + 88 +== Аутентификация через [[JWT>>https://jwt.io/]] == 89 + 90 +Настройте {{code language="none"}}auth_method{{/code}} и укажите токен в поле {{code language="none"}}Secure Extra{{/code}} следующим образом: 91 + 92 +{{code language="none"}} 93 +{ 94 + "auth_method": "jwt", 95 + "auth_params": { 96 + "token": "<your-jwt-token>" 97 + } 98 +} 99 +{{/code}} 100 + 101 +== Пользовательская аутентификация == 102 + 103 +Чтобы использовать пользовательскую аутентификацию, сначала добавьте ее в список разрешений {{code language="none"}}ALLOWED_EXTRA_AUTHENTICATIONS{{/code}} в конфигурационном файле Cloud BI: 104 + 105 +{{code language="none"}} 106 +from your.module import AuthClass 107 +from another.extra import auth_method 108 + 109 +ALLOWED_EXTRA_AUTHENTICATIONS: Dict[str, Dict[str, Callable[..., Any]]] = { 110 + "trino": { 111 + "custom_auth": AuthClass, 112 + "another_auth_method": auth_method, 113 + }, 114 +} 115 +{{/code}} 116 + 117 +Далее настройте поле {{code language="none"}}Secure Extra{{/code}} следующим образом: 118 + 119 +{{code language="none"}} 120 +{ 121 + "auth_method": "custom_auth", 122 + "auth_params": { 123 + ... 124 + } 125 +} 126 +{{/code}} 127 + 128 +Вы также можете использовать пользовательскую аутентификацию, предоставив ссылку на свой класс {{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}}.