Skip to main content

Helps developers implement tailored CSRF protection strategies without tokens, ensuring robust security and easy integration.

Project description

csrf-sentry

PyPI version License: MIT Downloads LinkedIn

A Python package that helps developers implement CSRF (Cross-Site Request Forgery) protection without relying on traditional tokens or hidden form fields. The package takes a user's input describing their web application's structure and security requirements, and returns a structured response with a tailored CSRF protection strategy.

Installation

pip install csrf_sentry

Usage

Basic Usage

from csrf_sentry import csrf_sentry

# Basic usage with default LLM
response = csrf_sentry("Describe your web application structure and security requirements")
print(response)

Using Custom LLM

You can use any Langchain-compliant LLM with csrf_sentry:

OpenAI

from langchain_openai import ChatOpenAI
from csrf_sentry import csrf_sentry

llm = ChatOpenAI()
response = csrf_sentry(user_input, llm=llm)

Anthropic

from langchain_anthropic import ChatAnthropic
from csrf_sentry import csrf_sentry

llm = ChatAnthropic()
response = csrf_sentry(user_input, llm=llm)

Google

from langchain_google_genai import ChatGoogleGenerativeAI
from csrf_sentry import csrf_sentry

llm = ChatGoogleGenerativeAI()
response = csrf_sentry(user_input, llm=llm)

Using Custom API Key

If you need to use your own LLM7 API key:

from csrf_sentry import csrf_sentry

# Pass API key directly
response = csrf_sentry(user_input, api_key="your_api_key_here")

# Or set environment variable
import os
os.environ["LLM7_API_KEY"] = "your_api_key_here"
response = csrf_sentry(user_input)

Parameters

  • user_input (str): The user input text describing your web application structure and security requirements
  • llm (Optional[BaseChatModel]): A Langchain LLM instance. If not provided, defaults to ChatLLM7
  • api_key (Optional[str]): API key for LLM7. If not provided, uses the environment variable LLM7_API_KEY or the default free tier

Getting an API Key

You can get a free API key for LLM7 by registering at https://token.llm7.io/

Default LLM

The package uses ChatLLM7 from langchain_llm7 by default. The free tier rate limits are sufficient for most use cases of this package. If you need higher rate limits, you can provide your own API key.

Support

For issues and questions, please visit our GitHub issues page

Author

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

csrf_sentry-2025.12.21200926.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

csrf_sentry-2025.12.21200926-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file csrf_sentry-2025.12.21200926.tar.gz.

File metadata

  • Download URL: csrf_sentry-2025.12.21200926.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.1

File hashes

Hashes for csrf_sentry-2025.12.21200926.tar.gz
Algorithm Hash digest
SHA256 4180cbc257da3e709d4004923d1ad8495b3f39a977926a381eac801cb81a8f3a
MD5 3e9bced0df405325f91fa1163bc76fa4
BLAKE2b-256 f762c0adc46af06b6d80ccf24fbb8560f3611933e7dcb4d80ef3cbf4d1fd300c

See more details on using hashes here.

File details

Details for the file csrf_sentry-2025.12.21200926-py3-none-any.whl.

File metadata

File hashes

Hashes for csrf_sentry-2025.12.21200926-py3-none-any.whl
Algorithm Hash digest
SHA256 d980236ae627987cc23b63bc72921244ade2684b77eb3f36c97f19a6900dee7b
MD5 de547c3db0d492ce012192d7fa807ba1
BLAKE2b-256 32dac9fd6ee9dc0f542e5a8aaf0012de2690d671b51ee9dbe73b0e10e018cd95

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page