Service Security
Before I start this document I will define a Service. A Service is anything that registers with the Registry for access to the DIMSIM instance. This will include portals, instrument representatives and data managers.
Link to the Registry
We have to be able to trust the https link that gets set up between the registry and the service. When we are going to interact with another service we need to be able to trust the registry for verification purposes.
Public and Private keys
When a service registers it adds a public key to the registry so that other services are able to use that key for handshake purposes.
A service will not be allowed to get a public key from the registry until it has been accepted into the registry by a portal administrator.
Handshake Protocol
Using the example of a command being given to a Service from a portal.
1. Portal uses the public key for the Service received from the registry and sends information encrypted for verification.
2. Service decrypts and checks with the registry to see if the portal is accepted.
3. Service uses the public key for the Portal received from the registry and sends information encrypted for verification.
4. Portal decrypts and checks to see if the details are correct.
5. Portal sends the command to the Service.
(Need to add in here what information is sent with the verification messages)
Link to the Registry
We have to be able to trust the https link that gets set up between the registry and the service. When we are going to interact with another service we need to be able to trust the registry for verification purposes.
Public and Private keys
When a service registers it adds a public key to the registry so that other services are able to use that key for handshake purposes.
A service will not be allowed to get a public key from the registry until it has been accepted into the registry by a portal administrator.
Handshake Protocol
Using the example of a command being given to a Service from a portal.
1. Portal uses the public key for the Service received from the registry and sends information encrypted for verification.
2. Service decrypts and checks with the registry to see if the portal is accepted.
3. Service uses the public key for the Portal received from the registry and sends information encrypted for verification.
4. Portal decrypts and checks to see if the details are correct.
5. Portal sends the command to the Service.
(Need to add in here what information is sent with the verification messages)