diff --git a/dev/breeze/tests/test_packages.py b/dev/breeze/tests/test_packages.py index 8e9d44e63b8bf..22684f50a4cb1 100644 --- a/dev/breeze/tests/test_packages.py +++ b/dev/breeze/tests/test_packages.py @@ -173,7 +173,7 @@ def test_get_old_documentation_package_path(): """ "apache-airflow-providers-common-compat>=1.2.1", "apache-airflow>=3.0.0.dev0", - "flask-appbuilder==4.5.2", + "flask-appbuilder==4.5.3", "flask-login>=0.6.2", "flask>=2.2,<2.3", "google-re2>=1.0", @@ -187,7 +187,7 @@ def test_get_old_documentation_package_path(): """ "apache-airflow-providers-common-compat>=1.2.1.dev0", "apache-airflow>=3.0.0.dev0", - "flask-appbuilder==4.5.2", + "flask-appbuilder==4.5.3", "flask-login>=0.6.2", "flask>=2.2,<2.3", "google-re2>=1.0", @@ -201,7 +201,7 @@ def test_get_old_documentation_package_path(): """ "apache-airflow-providers-common-compat>=1.2.1b0", "apache-airflow>=3.0.0b0", - "flask-appbuilder==4.5.2", + "flask-appbuilder==4.5.3", "flask-login>=0.6.2", "flask>=2.2,<2.3", "google-re2>=1.0", diff --git a/generated/provider_dependencies.json b/generated/provider_dependencies.json index c0a2e488d0f86..5060869ea3c6a 100644 --- a/generated/provider_dependencies.json +++ b/generated/provider_dependencies.json @@ -572,7 +572,7 @@ "deps": [ "apache-airflow-providers-common-compat>=1.2.1", "apache-airflow>=3.0.0.dev0", - "flask-appbuilder==4.5.2", + "flask-appbuilder==4.5.3", "flask-login>=0.6.2", "flask>=2.2,<2.3", "google-re2>=1.0", diff --git a/providers/src/airflow/providers/fab/auth_manager/security_manager/override.py b/providers/src/airflow/providers/fab/auth_manager/security_manager/override.py index d0e00b0977ce8..508720fd894cd 100644 --- a/providers/src/airflow/providers/fab/auth_manager/security_manager/override.py +++ b/providers/src/airflow/providers/fab/auth_manager/security_manager/override.py @@ -839,6 +839,12 @@ def _init_config(self): app.config.setdefault("AUTH_ROLES_MAPPING", {}) app.config.setdefault("AUTH_ROLES_SYNC_AT_LOGIN", False) app.config.setdefault("AUTH_API_LOGIN_ALLOW_MULTIPLE_PROVIDERS", False) + app.config.setdefault( + "AUTH_DB_FAKE_PASSWORD_HASH_CHECK", + "scrypt:32768:8:1$wiDa0ruWlIPhp9LM$6e409d093e62ad54df2af895d0e125b05ff6cf6414" + "8350189ffc4bcc71286edf1b8ad94a442c00f890224bf2b32153d0750c89ee9" + "401e62f9dcee5399065e4e5", + ) # LDAP Config if self.auth_type == AUTH_LDAP: @@ -2103,8 +2109,7 @@ def auth_user_db(self, username, password): if user is None or (not user.is_active): # Balance failure and success check_password_hash( - "pbkdf2:sha256:150000$Z3t6fmj2$22da622d94a1f8118" - "c0976a03d2f18f680bfff877c9a965db9eedc51bc0be87c", + self.appbuilder.get_app.config["AUTH_DB_FAKE_PASSWORD_HASH_CHECK"], "password", ) log.info(LOGMSG_WAR_SEC_LOGIN_FAILED, username) diff --git a/providers/src/airflow/providers/fab/provider.yaml b/providers/src/airflow/providers/fab/provider.yaml index 322e750eece22..6f0e98240f2c4 100644 --- a/providers/src/airflow/providers/fab/provider.yaml +++ b/providers/src/airflow/providers/fab/provider.yaml @@ -59,7 +59,7 @@ dependencies: # Every time we update FAB version here, please make sure that you review the classes and models in # `airflow/providers/fab/auth_manager/security_manager/override.py` with their upstream counterparts. # In particular, make sure any breaking changes, for example any new methods, are accounted for. - - flask-appbuilder==4.5.2 + - flask-appbuilder==4.5.3 - flask-login>=0.6.2 - google-re2>=1.0 - jmespath>=0.7.0