You can download this code by clicking the button below.
This code is now available for download.
This function creates a simple authentication provider using the Crossbar library and checks the username and password using a randomly generated key.
Technology Stack : Crossbar, os, crossbarlib
Code Type : The type of code
Code Difficulty : Intermediate
def crossbar_random_auth(username, password):
from crossbar import crossbarlib
import os
# Create a new crossbarlib object
cb = crossbarlib.CrossbarLib()
# Generate a random secret key for the auth provider
secret = os.urandom(32)
# Define an authentication provider
auth_provider = {
'type': 'password',
'password_hash': 'sha256',
'password_salt': secret,
'check_credentials': lambda username, password, realm: cb.auth_check_credentials(username, password, realm)
}
# Add the authentication provider to the crossbarlib object
cb.add_auth_provider(auth_provider)
# Authenticate the user
authenticated = cb.auth_check_credentials(username, password, 'default')
return authenticated