Your system will need to have a page which accepts the following GET parameters:
The id parameter is the current user's External ID. The time parameter is an Epoch/Unix timestamp of the current time generated by Schoolbox. You should ensure that this time is within 5 minutes of the current time on your server for security purposes. Finally, the key parameter is a SHA1 hash of the shared secret, the time and the user's External ID concatenated together in that particular order.
The following is an example scenario where a user has accessed http://10.1.1.31/enrolment_details/ through the custom module we are developing.
Link to http://schoolbox/modules/remote/IGh0dHA6Ly8xMC4xLjEuMzEvZW5yb2xtZW50X2RldGFpbHMv
Internal vars
- secret = ASDSDF3245324566
- time = 1323305767
- id = 24249
- user = jsmith
- key = SHA1 hash of [secret][time][externalUserId]
User is redirected to http://10.1.1.31/enrolment_details/?key=01f78cd0b7fdf44268c53e096e6044861ea58614&time=1323305767&id=24249&user=jsmith
The shared secret and URL where the parameters will be passed to for authentication are changeable.
The shared secret is set in Schoolbox at: Administration > Settings > Security > Remote Shared Secret
Note: The placeholders [username], [externalId], and [email] are automatically filled with the profile’s actual details.