현재 작업 상태 저장
This commit is contained in:
parent
07cc67761e
commit
6bd91b0d5e
674 changed files with 8726 additions and 298 deletions
|
|
@ -29,13 +29,13 @@ def patched_settings(**values: Any):
|
|||
setattr(settings, key, value)
|
||||
|
||||
|
||||
def _request() -> Request:
|
||||
def _request(headers: list[tuple[bytes, bytes]] | None = None) -> Request:
|
||||
return Request(
|
||||
{
|
||||
"type": "http",
|
||||
"method": "GET",
|
||||
"path": "/auth/login",
|
||||
"headers": [(b"host", b"localhost:8000")],
|
||||
"headers": headers or [(b"host", b"localhost:8000")],
|
||||
}
|
||||
)
|
||||
|
||||
|
|
@ -111,6 +111,64 @@ class AuthProviderScaffoldTest(unittest.IsolatedAsyncioTestCase):
|
|||
self.assertTrue(providers["saml"].enabled)
|
||||
self.assertEqual(providers["saml"].login_path, "/auth/login?provider=saml")
|
||||
|
||||
async def test_auth_config_allows_dev_login_from_configured_tailnet_origin(self) -> None:
|
||||
request = _request(
|
||||
[
|
||||
(b"host", b"127.0.0.1:8000"),
|
||||
(b"origin", b"https://alpaca-home.taile93291.ts.net"),
|
||||
]
|
||||
)
|
||||
|
||||
with patched_settings(
|
||||
environment="dev",
|
||||
auth_dev_login_enabled=True,
|
||||
auth_dev_login_extra_origins=["https://alpaca-home.taile93291.ts.net"],
|
||||
):
|
||||
config = await auth_routes.auth_config(request)
|
||||
|
||||
self.assertTrue(config.dev_login_enabled)
|
||||
|
||||
async def test_auth_config_allows_dev_login_from_configured_tailnet_forwarded_host(self) -> None:
|
||||
request = _request(
|
||||
[
|
||||
(b"host", b"127.0.0.1:8000"),
|
||||
(b"x-forwarded-host", b"alpaca-home.taile93291.ts.net"),
|
||||
]
|
||||
)
|
||||
|
||||
with patched_settings(
|
||||
environment="dev",
|
||||
auth_dev_login_enabled=True,
|
||||
auth_dev_login_extra_origins=["https://alpaca-home.taile93291.ts.net"],
|
||||
):
|
||||
config = await auth_routes.auth_config(request)
|
||||
|
||||
self.assertTrue(config.dev_login_enabled)
|
||||
|
||||
async def test_auth_config_allows_dev_login_config_probe_without_origin_when_extra_origin_is_set(self) -> None:
|
||||
request = _request([(b"host", b"127.0.0.1:8000")])
|
||||
|
||||
with patched_settings(
|
||||
environment="dev",
|
||||
auth_dev_login_enabled=True,
|
||||
auth_dev_login_extra_origins=["https://alpaca-home.taile93291.ts.net"],
|
||||
):
|
||||
config = await auth_routes.auth_config(request)
|
||||
|
||||
self.assertTrue(config.dev_login_enabled)
|
||||
|
||||
async def test_frontend_origin_map_routes_vnet_api_callbacks_to_vnet_frontend(self) -> None:
|
||||
request = _request([(b"host", b"api-vnet.18ka.net")])
|
||||
|
||||
with patched_settings(
|
||||
frontend_base_url="https://vignette.chanpaca.net",
|
||||
frontend_origin_map={"api-vnet.18ka.net": "https://vnet.18ka.net"},
|
||||
cors_origins=["https://vignette.chanpaca.net", "https://vnet.18ka.net"],
|
||||
):
|
||||
origin = auth_routes._frontend_origin_for_request(request)
|
||||
|
||||
self.assertEqual(origin, "https://vnet.18ka.net")
|
||||
|
||||
async def test_saml_login_builds_redirect_authn_request_and_relay_state(self) -> None:
|
||||
with patched_settings(
|
||||
auth_saml_enabled=True,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue