Вход через Airflow Web Authentication показывает страницу с ошибкой - PullRequest
0 голосов
/ 29 апреля 2019

Я включил веб-аутентификацию для воздушного потока, следуя инструкциям на http://airflow.apache.org/security.html#web-authentication (и перезапустил веб-сервер)

Кажется, что вход в систему работает, но я вижу страницу с сообщением об ошибке:

  File "/usr/local/lib/python2.7/dist-packages/airflow/contrib/auth/backends/password_auth.py", line 154, in login
    user = authenticate(session, username, password)
  File "/usr/local/lib/python2.7/dist-packages/airflow/contrib/auth/backends/password_auth.py", line 131, in authenticate
    if not user.authenticate(password):
  File "/usr/local/lib/python2.7/dist-packages/airflow/contrib/auth/backends/password_auth.py", line 72, in authenticate
    return check_password_hash(self._password, plaintext)
  File "/usr/local/lib/python2.7/dist-packages/flask_bcrypt.py", line 67, in check_password_hash
    return Bcrypt().check_password_hash(pw_hash, password)
  File "/usr/local/lib/python2.7/dist-packages/flask_bcrypt.py", line 193, in check_password_hash
    return safe_str_cmp(bcrypt.hashpw(password, pw_hash), pw_hash)
  File "/usr/local/lib/python2.7/dist-packages/bcrypt/__init__.py", line 81, in hashpw
    original_salt, salt = salt, _normalize_re.sub(b"$2b$", salt)
TypeError: expected string or buffer

Есть идеи / идеи по этому вопросу?

1 Ответ

0 голосов
/ 09 июля 2019

Как уже упоминалось здесь , использование следующего работало для меня, когда у меня была та же ошибка:

import airflow
from airflow import models, settings
from airflow.contrib.auth.backends.password_auth import PasswordUser
from flask_bcrypt import generate_password_hash
user = PasswordUser(models.User())
user.username = 'some'
user.email = 'some@email.com'
user._password = generate_password_hash('password', 12).decode('utf-8')
session = settings.Session()
session.add(user)
session.commit()
session.close()
...