diff options
Diffstat (limited to 'participants.adoc')
-rw-r--r-- | participants.adoc | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/participants.adoc b/participants.adoc new file mode 100644 index 0000000..f75412d --- /dev/null +++ b/participants.adoc @@ -0,0 +1,67 @@ +Participants +------------ +(((ECSA,overview))) +A particpant represents a legal client in an ECSA network. + +/////////// +[[participant_basic_requirements]] +/////////// + +Basic functionalities and requirements +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Technology / Architecture +^^^^^^^^^^^^^^^^^^^^^^^^^ +(((participant,technology))) +(((participant,architecture))) + +- has to communicate with the ECS as a +ifdef::hyperdoc[{rest_home_lnk}[REST]] +ifndef::hyperdoc[REST footnote:[REST Homepage see {rest_home_txt}]] + client. +ifdef::hyperdoc[- {http_1_1_lnk}[HTTP 1.1]] +ifndef::hyperdoc[- HTTP 1.1 footnote:[HTTP 1.1 see {http_1_1_txt}]] + as transport and application protocol +- provide persistent connection (keep-alive) +- provide SSL/TLS transport layer +- has to use +ifdef::hyperdoc[{utf_8_lnk}[UTF-8]] +ifndef::hyperdoc[UTF-8 footnote:[UTF-8 see {utf_8_lnk_txt}]] + +Authentication +^^^^^^^^^^^^^^ +(((participant,authentication))) + +ifdef::hyperdoc[- {http_basic_auth_lnk}[HTTP Basic auth]] +ifndef::hyperdoc[- HTTP Basic auth footnote:[HTTP Basic auth see {http_basic_auth_txt}]] +- X.509 Certificates (SSL/TLS client authentication) + +Authorization +~~~~~~~~~~~~~ +(((participant,authorization))) + +A client should be able to use a simple "one touch token" authorization through +the ECS `sys/auths` resource. This token could be used to accomplish deligated +authorization for accessing resources on participants of a common ECSA network. +E.g. in redirecting users clicking on course links or in +ifdef::hyperdoc[<<_direct_participant_to_participant_communication,direct communicating of participants>>.] +ifndef::hyperdoc[direct communicating of participants (see <<_direct_participant_to_participant_communication>>).] + +////////////////////////////////// +ECS REST interface +~~~~~~~~~~~~~~~~~~ +////////////////////////////////// + +Ressource extensions / alterations +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +(((participant,ressource extensions))) + +To make resource extensions and alteration possible the clients have to +easily permit + +- additional ressources +- extensible data formats +- Postels's Law (robustness principle): _Be conservative in what you send; be liberal in what you accept._ +- versioning through request and response header (content negotiation) + * Accept: application/vnd.my-format.v1+json + * Accept: application/vnd.my-format.v2+json + |