1
0
mirror of synced 2025-12-25 02:09:19 -05:00

[airbyte-cdk] Use jinja.sandbox.SandboxEnvironment to restrict InterpolatedString (#39130)

This commit is contained in:
Natik Gadzhi
2024-06-05 14:01:07 -07:00
committed by GitHub
parent a1401c8fdb
commit 5c9115b0b7

View File

@@ -11,7 +11,7 @@ from airbyte_cdk.sources.declarative.interpolation.macros import macros
from airbyte_cdk.sources.types import Config
from jinja2 import meta
from jinja2.exceptions import UndefinedError
from jinja2.sandbox import Environment
from jinja2.sandbox import SandboxedEnvironment
class JinjaInterpolation(Interpolation):
@@ -49,7 +49,7 @@ class JinjaInterpolation(Interpolation):
RESTRICTED_BUILTIN_FUNCTIONS = ["range"] # The range function can cause very expensive computations
def __init__(self) -> None:
self._environment = Environment()
self._environment = SandboxedEnvironment()
self._environment.filters.update(**filters)
self._environment.globals.update(**macros)