def authenticate(realm, authid, details): print("WAMP-Ticket dynamic authenticator invoked: realm='{}', authid='{}', details=".format(realm, authid)) pprint_json(details) if authid in PRINCIPALS_DB: ticket = details['ticket'] principal = PRINCIPALS_DB[authid] if ticket != principal['ticket']: raise ApplicationError(u'com.example.invalid_ticket', "could not authenticate session - invalid ticket '{}' for principal {}".format(ticket, authid)) if realm and realm != principal[u'realm']: raise ApplicationError(u'com.example_invalid_realm', "user {} should join {}, not {}".format(authid, principal[u'realm'], realm)) res = { u'realm': principal[u'realm'], u'role': principal[u'role'], u'extra': { u'my-custom-welcome-data': [1, 2, 3] } } print("WAMP-Ticket authentication success: {}".format(res)) return res else: raise ApplicationError("com.example.no_such_user", "could not authenticate session - no such principal {}".format(authid))
def authenticate(realm, authid, details): print("WAMP-CRA dynamic authenticator invoked: realm='{}', authid='{}'".format(realm, authid)) pprint_json(details) if authid in USERDB: # return a dictionary with authentication information ... return USERDB[authid] else: raise ApplicationError(u'com.example.no_such_user', 'could not authenticate session - no such user {}'.format(authid))
def authenticate(realm, authid, details): ticket = details['ticket'] print("WAMP-Ticket dynamic authenticator invoked: realm='{}', authid='{}', ticket='{}'".format(realm, authid, ticket)) pprint_json(details) if authid in PRINCIPALS_DB: if ticket == PRINCIPALS_DB[authid]['ticket']: return PRINCIPALS_DB[authid]['role'] else: raise ApplicationError("com.example.invalid_ticket", "could not authenticate session - invalid ticket '{}' for principal {}".format(ticket, authid)) else: raise ApplicationError("com.example.no_such_user", "could not authenticate session - no such principal {}".format(authid))
def authenticate(realm, authid, details): ticket = details['ticket'] print("WAMP-Ticket dynamic authenticator invoked: realm='{}', authid='{}', ticket='{}'".format(realm, authid, ticket)) pprint_json(details) if authid in PRINCIPALS_DB: secret = PRINCIPALS_DB[authid][u'seed'] if check_totp(secret, ticket): return PRINCIPALS_DB[authid][u'role'] else: raise ApplicationError(u'com.example.invalid_ticket', u'could not authenticate session - invalid ticket "{}" for principal {}'.format(ticket, authid)) else: raise ApplicationError(u'com.example.no_such_user', u'could not authenticate session - no such principal {}'.format(authid))
def authenticate(realm, authid, details): print( "WAMP-CRA dynamic authenticator invoked: realm='{}', authid='{}'" .format(realm, authid)) pprint_json(details) if authid in USERDB: # return a dictionary with authentication information ... return USERDB[authid] else: raise ApplicationError( u'com.example.no_such_user', 'could not authenticate session - no such user {}'.format( authid))
def authenticate(realm, authid, details): ticket = details['ticket'] print( "WAMP-Ticket dynamic authenticator invoked: realm='{}', authid='{}', ticket='{}'" .format(realm, authid, ticket)) pprint_json(details) if authid in PRINCIPALS_DB: if ticket == PRINCIPALS_DB[authid]['ticket']: return PRINCIPALS_DB[authid]['role'] else: raise ApplicationError( "com.example.invalid_ticket", "could not authenticate session - invalid ticket '{}' for principal {}" .format(ticket, authid)) else: raise ApplicationError( "com.example.no_such_user", "could not authenticate session - no such principal {}". format(authid))
def authenticate(realm, authid, details): print( "WAMP-Ticket dynamic authenticator invoked: realm='{}', authid='{}', details=" .format(realm, authid)) pprint_json(details) if authid in PRINCIPALS_DB: ticket = details['ticket'] principal = PRINCIPALS_DB[authid] if ticket != principal['ticket']: raise ApplicationError( u'com.example.invalid_ticket', "could not authenticate session - invalid ticket '{}' for principal {}" .format(ticket, authid)) if realm and realm != principal[u'realm']: raise ApplicationError( u'com.example_invalid_realm', "user {} should join {}, not {}".format( authid, principal[u'realm'], realm)) res = { u'realm': principal[u'realm'], u'role': principal[u'role'], u'extra': { u'my-custom-welcome-data': [1, 2, 3] } } print("WAMP-Ticket authentication success: {}".format(res)) return res else: raise ApplicationError( "com.example.no_such_user", "could not authenticate session - no such principal {}". format(authid))