aboutsummaryrefslogtreecommitdiff
path: root/participants.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'participants.adoc')
-rw-r--r--participants.adoc67
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
+