view pyproject.toml @ 1598:86c7a3a625d5

server: always start a new session on connection: The session was kept when a user was connecting from service profile (but not from other profiles), this was leading to session fixation vulnerability (an attacker on the same machine could get service profile session cookie, and use it when a victim would log-in). This patch fixes it by always starting a new session on connection. fix 443
author Goffi <goffi@goffi.org>
date Fri, 23 Feb 2024 13:35:24 +0100
parents 67ff59465fe4
children
line wrap: on
line source

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "libervia-web"
dynamic = ["version"]
description = "Web frontend for Libervia, a feature-rich XMPP client"
readme = "README.md"
license = "AGPL-3.0-or-later"
requires-python = ">=3.10"
authors = [
    { name = "Libervia Dev Team", email = "contact@goffi.org" },
]
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Environment :: Web Environment",
    "Framework :: Twisted",
    "Operating System :: POSIX :: Linux",
    "Topic :: Communications :: Chat",
]
dependencies = [
    "autobahn >= 23.6.1",
    "brython >= 3.11.3",
    "jinja2 >= 3.1.2",
    # use during dev mode to have current version of backend
    # "libervia-backend == 0.9.*",
    # "libervia-templates >0.8.0b1",
    "pyopenssl >= 23.2.0",
    "shortuuid ~= 1.0.11",
    "twisted[tls] >= 22.10",
    "zope.interface >= 5",
]
keywords = [
    "XMPP",
    "web",
    "brython",
    "chat",
    "instant_messaging",
    "blogging",
    "photo albums",
    "file sharing",
    "events"
]

[project.scripts]
libervia-web = "libervia.web.server.launcher:Launcher.run"

[project.urls]
Homepage = "https://www.libervia.org"

[tool.hatch.build.targets.wheel]
packages = ["libervia", "twisted"]

[tool.hatch.envs.default]
# we need system-package for GPG
system-packages = true

[tool.hatch.envs.dev]
dependencies = [
    "ipdb",
    "pudb",
    "pytest",
    "pytest-asyncio"
]

[tool.hatch.metadata]
allow-direct-references = true

[tool.hatch.version]
path = "libervia/web/__init__.py"

[tool.hatch.build.targets.wheel.shared-data]
COPYING = "share/doc/libervia-web/COPYING"
"README.md" = "share/doc/libervia-web/README.md"