Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion airflow/api_fastapi/core_api/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
from airflow.configuration import conf
from airflow.exceptions import AirflowException
from airflow.settings import AIRFLOW_PATH
from airflow.utils.jwt_signer import get_signing_key

log = logging.getLogger(__name__)

Expand Down Expand Up @@ -162,7 +163,7 @@ def init_config(app: FastAPI) -> None:
# and 9 (slowest, most compression)
app.add_middleware(GZipMiddleware, minimum_size=1024, compresslevel=5)

app.state.secret_key = conf.get("webserver", "secret_key")
app.state.secret_key = get_signing_key("webserver", "secret_key")


def init_error_handlers(app: FastAPI) -> None:
Expand Down
4 changes: 2 additions & 2 deletions airflow/utils/log/file_task_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,11 +96,11 @@ def _fetch_logs_from_service(url, log_relative_path):
# Import occurs in function scope for perf. Ref: https://github.com/apache/airflow/pull/21438
import requests

from airflow.utils.jwt_signer import JWTSigner
from airflow.utils.jwt_signer import JWTSigner, get_signing_key

timeout = conf.getint("webserver", "log_fetch_timeout_sec", fallback=None)
signer = JWTSigner(
secret_key=conf.get("webserver", "secret_key"),
secret_key=get_signing_key("webserver", "secret_key"),
expiration_time_in_seconds=conf.getint("webserver", "log_request_clock_grace", fallback=30),
audience="task-instance-logs",
)
Expand Down
4 changes: 2 additions & 2 deletions airflow/utils/serve_logs.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@

from airflow.configuration import conf
from airflow.utils.docs import get_docs_url
from airflow.utils.jwt_signer import JWTSigner
from airflow.utils.jwt_signer import JWTSigner, get_signing_key
from airflow.utils.module_loading import import_string

logger = logging.getLogger(__name__)
Expand Down Expand Up @@ -71,7 +71,7 @@ def create_app():
except Exception as e:
raise ImportError(f"Unable to load {log_config_class} due to error: {e}")
signer = JWTSigner(
secret_key=conf.get("webserver", "secret_key"),
secret_key=get_signing_key("webserver", "secret_key"),
expiration_time_in_seconds=expiration_time_in_seconds,
audience="task-instance-logs",
)
Expand Down