ISO15118 Authorization¶
Description.
Authorization sent from iso15118 to ocpp, typically in the form of a MAC address.
Iso15118AuthorizationRequest¶
Topic: iso15118/ocpp. Used by 15118 to request authorization through OCPP. |
||||||||
type |
object |
|||||||
properties |
||||||||
|
type |
string |
||||||
format |
uuid |
|||||||
|
const |
iso15118_authorization |
||||||
|
const |
request |
||||||
|
type |
object |
||||||
properties |
||||||||
|
type |
string |
||||||
|
enum |
e_maid, mac_address |
||||||
|
type |
string |
||||||
allOf |
if |
properties |
||||||
|
const |
e_maid |
||||||
then |
properties |
|||||||
|
properties |
|||||||
|
type |
string |
||||||
|
type |
array |
||||||
items |
type |
object |
||||||
properties |
||||||||
|
enum |
SHA256, SHA384, SHA512 |
||||||
|
type |
string |
||||||
|
type |
string |
||||||
|
type |
string |
||||||
|
type |
string |
||||||
minItems |
1 |
Example for the AutoCharge implementation, using a MAC address:
{
"id": "57828133-8cfe-477d-b829-0b60aff90c2a",
"name": "iso15118_authorization",
"type": "request",
"data": {
"evse_id": "DE*SEV*E123456789",
"id_token": "FF44556670AA",
"token_type": "mac_address" # e_maid
}
}
Example for Plug And Charge, using the e_maid:
{
"id": "194e76cb-215d-440f-91d8-75e986c2aaaf",
"name": "iso15118_authorization",
"type": "request",
"data": {
"evse_id": "DE*SEV*E123456789",
"id_token": "DEABCC123ABC56",
"token_type": "e_maid",
# this field is only required for the e_maid token type
"token_data": {
# this certificate chain is in PEM encoded format
# it is optional, and only needs to be sent if
# the charging station cannot validate the contract certificate
# because it does not have the associated root certificate.
"certificate_chain": "—–BEGIN CERTIFICATE—–MIIDdTCCAl...",
"iso15118_hash_data": [
{
"hash_algorithm": "SHA256", # SHA256, SHA384, SHA512
"issuer_name_hash": "65df03257007316adf168dee995b98d582f871395b5d167754df7e8525efde2a",
"issuer_key_hash": "d503a88e816fbff921dc104bf711d31f2288b40cc19d01ac8c787dd829e8a2db",
"serial_number": "12345",
"responder_url": "https://ocsp.responder.com"
},
{
"hash_algorithm": "SHA256", # SHA256, SHA384, SHA512
"issuer_name_hash": "3gdf8je9007316adf168dee995b98d582fd871395b5d167754df7e8525efde2a",
"issuer_key_hash": "asdfv34asvv34dxv4g921dc104bf711d31f2288b40cc19d01ac8c787dd829e8a",
"serial_number": "54321",
"responder_url": "https://ocsp.responder.com"
}
]
}
}
}
token_data fields.
certificate_chain: Optional. The X.509 certificated presented by EV and encoded in PEM format.
hash_algorithm: Required. Used algorithms for the hashes provided.
issuer_name_hash: Required. Hashed value of the Issuer DN (Distinguished Name).
issuer_key_hash: Required. Hashed value of the issuers public key.
serial_number: Required. The serial number of the certificate.
responder_url: Required. This contains the responder URL (Case insensitive).
Iso15118AuthorizationResponse¶
Topic: ocpp/iso15118. Used by OCPP to respond to a 15118 authorization request. |
|||
type |
object |
||
properties |
|||
|
type |
string |
|
format |
uuid |
||
|
const |
iso15118_authorization |
|
|
const |
response |
|
|
type |
object |
|
properties |
|||
|
enum |
accepted, rejected, ongoing |
|
|
enum |
OK, CertificateExpired, CertificateExpiresSoon, CertificateNotAllowedAtThisEVSE, CertificateNotYetValid, CertificateRevoked, CertificateValidationError, EMSPUnknown, GeneralPnCAuthorizationError, ContractCancelled |
Example:
{
"id": "57828133-8cfe-477d-b829-0b60aff90c2a",
"name": "iso15118_authorization",
"type": "response",
"data": {"status": "accepted", # accepted, rejected, ongoing
"certificate_status": "OK"} # CertificateExpired, CertificateRevoked, CertificateNotYetValid ...
}
Authorization triggered by ISO15118.
This kind of authorization happens when ISO15118 is in use.
First 15118 (-2/-20) sends an Authorization Request to the iso15118/ocpp topic
The OCPP instance answers back, with a positive or negative status response.
The OCPP instance must send a notification (update) MQTT message to the CS with the result of the Authorization request, using the topic ocpp/cs. See external_authorization_status.
The above steps are needed, so the charger OEM is notified if the authorization was successful or not, so that the charging station can close it’s contactors (or not) and inform the EV driver about the authorization status through the HMI.
Authorization not triggered by ISO15118, but by an external source.
This kind of authorization happens if ISO15118 is not the initiator of the authorization (e.g. an RFID has been swiped by the user), but ISO15118 needs to know what the status of the authorization is.
In this case, the id_type should be “external” and the id tag should NOT be included. If the authorization hasn’t been completed yet, the response will contain a status of “ongoing”.