Setting up RAiD Integration
Aim of this document
This section explains how, as an RSpace admin, you can set up RSpace to enable users to report their research directly to a RAiD server.
If your RSpace instance is hosted by RSpace (i.e. your RSpace web address ends in .researchspace.com), please contact your Account Manager for more information.
This is a one-off step - it does not need to be done for every RSpace user!
Prerequisites
- The configuration for one or more RAiD servers. The following information is required:
serverAlias: The alias of the RAiD provider, which is used by RSpace to identify the server. This can be any name of your choosing. Only alphanumeric characters are accepted.url: The URL of the RAiD server, typically the homepage.authUrl: The authentication URL for the RAiD server, provided by the RAiD provider. When a user tries to connect to a RAiD server, RSpace will redirect the user to this URL.servicePointId: The Service Point ID, provided by the RAiD provider.clientId: The client ID of the OIDC application on the RAiD server, provided by the RAiD provider.clientSecret: The client secret of the OIDC application on the RAiD server, provided by the RAiD provider.
- Access to RSpace server in order to set in configuration you will acquire from the RAiD provider.
- The RSpace server must allow 2-way HTTPS communication with the RAiD servers
Steps in RSpace
The RAiD configuration is a JSON object with the following schema:
{
"serverAliasOne": {
"url": "url",
"authUrl": "authUrl",
"servicePointId": serverPointIdNumber,
"clientId": "clientId",
"clientSecret": "clientSecret"
},
"serverAliasTwo": {
... same as above
}
}In deployment.properties, use the configuration JSON object, escaping all newlines with the \ symbol. An example is below:
raid.server.config={ \
"DEMO": {\
"url": "https://example.com", \
"authUrl": "https://example.com/realms/raid/protocol/openid-connect", \
"servicePointId": 1234567, \
"clientId": "clientIdHere", \
"clientSecret": "secretHere" \
}, \
"anotherServer": {\
"url": "https://another.example.com", \
"authUrl": "https://another.example.com/realms/raid/protocol/openid-connect", \
"servicePointId": 7654321, \
"clientId": "clientIdHere", \
"clientSecret": "secretHere" \
}
\}NOTE: In deployment.properties, newlines must be escaped by a backwards slash (\) symbol at the end of the line. As a reminder, trailing commas are not allowed in JSON objects, therefore if you only have one server to configure, be sure to remove the last comma in }, at the last line.
- Connect to the RSpace server using ssh, or Putty, or your preferred client
- Open
/etc/rspace/deployment.propertiesand enter the configuration object as above. - Save the file and restart RSpace
- Log into RSpace, go to System -> Configuration -> System Settings, then set
raid.availableto Allowed.
Testing the App
- Logon to RSpace web application as an RSpace user and open Apps page. The RAiD integration should be listed under Disabled integrations.
- Click on the RAiD card, then click Enable.
- Click on the Add button on the bottom left. You should see the list of servers you have configured in here. Click on one of the servers, then click Connect.
- Follow the instructions of the RAiD provider to log into your RAiD account.
- You should now be able to report your research to RAiD when exporting.