-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Withdraw authorization #978
Comments
"Authorization was requested, EVSE is selected and EV is plugged in (transaction is running)": This case may also require changes in EvseManager. Currently withdraw_authorization() in evse_manager implementation only succeeds if charging was not started yet. This would need to be changed, so that EvseManager ends the transaction when auth is withdrawn. |
Since the Auth module has the requirement This would mean that |
In this case no changes to EvseManager would be neccessary |
Describe the problem
The Auth module is a central module in EVerest that is able to handle incoming authorization requests from modules implementing the
token_provider
interface and forwards these requests to modules implemeting thetoken_validator
interface.If an authorization request was accepted, the Auth module provides authorization via the
authorize_response
command of theevse_manager
requirement(s).Currently there is no way to withdraw this granted authorization. The authorization can only timeout. A valid use case for authorization terminals and displays is to be able to withdraw authorization which was previously requested or granted. Currently this only happens after a timeout.
EVerest Domain
Authorization
Affected EVerest Module
Auth
Describe your solution
The goal of this issue is to extend the
auth
interface by an additional commandwithdraw_authorization
and to implement this command as part of theAuth
module. The implementation of the command shall withdraw the specified granted authorization based on the specified parameters.The parameters of the command shall be:
If only the evse_id is given, the granted authorization for this EVSE shall be withdrawn.
If only the id_token is given, the granted authorization for every EVSE where this id_token is placed shall be withdrawn
If both parameters are given, the granted authorization for the given EVSE shall be withdrawn, if the placed id_token matches the given id_token
If no parameter is given, all granted authorizations for all EVSEs shall be removed
Note that it should be possible to withdraw authorization in all of the following phases:
In the last two cases the
withdraw_authorization
command at theevse_manager
requirement shall be called as part of handling the new command.Additional context
This likely requires these (or similar) types definitions:
The text was updated successfully, but these errors were encountered: