Skip to main content

Simplify user authentication and secure access from anywhere with customizable prompts and temporary links.

Project description

PromptLink

PyPI version License: MIT

Simplify user authentication and secure access from anywhere with temporary links.

PromptLink is a Python package that allows you to streamline user authentication and enable secure access to your application from anywhere. It provides a seamless way to generate temporary links for user authentication, without relying on specific web frameworks. A Google Cloud Function is set up to ensure a secure temporary link for authentication.

Key Features

  • Easy and secure: Generate secure temporary links to enable easy secure access from anywhere.
  • Versatile Integration: Works across various application types, not limited to web applications.

Installation

You can install PromptLink using pip:

pip install promptlink

Alternatively, if you are using Poetry (recommended), you can install it as follows:

poetry add promptlink

Usage

Here's a basic example of using PromptLink:

from promptlink import Authenticator


with Authenticator(send_link_callback=lambda l: print(f"URL: {l}")) as authenticator:
    # The code in this block is executed after the link has been accessed 
    # in order to avoid authentication timeouts
    print("Setting up authentication...")
    authenticator.authenticate(lambda s: s == "12345678")
    # Below statements will be reached after '12345678' was input on the webpage prompt
    print("Finished")

GCP permission requirements

The following permissions are needed for this library:

  • Permissions to create Storage buckets and objects
  • Permissions to set up a Pub/Sub topic and subscriptions
  • Permissions to deploy a Cloud Function

The library will attempt to use the default service account. Any resources created will be named 'promptlink-' followed by a random UUID, so that collision with existing resources is extremely unlikely.

License

This project is licensed under the MIT License. See the LICENSE file for details.

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

promptlink-0.1.5.tar.gz (24.3 kB view details)

Uploaded Source

Built Distribution

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

promptlink-0.1.5-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

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