keystone.receipt.providers.base module

class keystone.receipt.providers.base.Provider[source]

Bases: object

Interface description for a Receipt provider.

abstract generate_id_and_issued_at(receipt)[source]

Generate a receipt based on the information provided.


receipt (keystone.models.receipt.ReceiptModel) – A receipt object containing information about the authorization context of the request.


tuple containing an ID for the receipt and the issued at time of the receipt (receipt_id, issued_at).

abstract validate_receipt(receipt_id)[source]

Validate a given receipt by its ID and return the receipt_data.


receipt_id (str) – the unique ID of the receipt


receipt data as a tuple in the form of:

(user_id, methods, issued_at, expires_at)

user_id is the unique ID of the user as a string methods a list of authentication methods used to obtain the receipt issued_at a datetime object of when the receipt was minted expires_at a datetime object of when the receipt expires


keystone.exception.ReceiptNotFound – when receipt doesn’t exist.