You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Authentication concerns who the user is. User Authentication tokens are used to verify a user’s identity.
6
+
Authentication concerns *who the user is*.
7
7
8
-
Ego’s User Authentication tokens are signed JSON Web Tokens (see http://jwt.io) that Ego issues when a user successfully logs into Ego using their Google or Facebook credentials.
8
+
User Authentication tokens are used to verify a user’s identity.
9
9
10
-
Ego will then issue an authentication token, which confirms the user’s identity, and contains information about the user’s name, their role (user or administrator), and any applications, permissions, and groups associated with their Ego account.
10
+
Ego’s User Authentication tokens are signed JSON Web Tokens (see http://jwt.io) that Ego issues when a user successfully logs into Ego using their Google or Facebook credentials.
11
11
12
-
An authentication token contains all of the information that ego has about a given user, including which groups they are a part of, which applications they are authorized to use , which permissions they have to use those applications.
12
+
Ego's authentication tokens confirm the user’s identity, and contain information about a user’s name, their role (user/administrator), and any applications, permissions, and groups associated with their Ego account etc.
13
13
14
-
This data current as of the time the token is issued, and the token is digitally signed by Ego with a publicly available signing key that applications have to use to verify that an authentication token is valid. Most of Ego’s REST endpoints require an Ego authentication token to validate the user’s identity before operating on their data.
14
+
This data is current as of the time the token is issued, and the token is digitally signed by Ego with a publicly available signing key that applications have to use to verify that an authentication token is valid. Most of Ego’s REST endpoints require an Ego authentication token to be provided in the authorization header, in order to validate the user’s identity before operating on their data.
Authorization concerns what a user is allowed to do.
20
+
Authorization concerns *what a user is allowed to do*.
21
+
22
+
User Authorization tokens are used to verify a user's permissions to execute on a desired scope.
21
23
22
24
Ego’s User Authorization tokens are random numbers that Ego issues to users so they can interact with Ego-aware applications with a chosen level of authority.
23
25
@@ -27,12 +29,12 @@ Unlike passwords, Authorization tokens automatically expire, and they can be rev
27
29
28
30
The user can then use their token with Ego-authorized applications as proof of who they are and what they are allowed to do. Typically, the user will configure a client program (such as SING, the client program used with SONG, the ICGC Metadata management service) with their secret token, and the program will then operate with the associated level of authority.
29
31
30
-
In more detail, when an Ego-aware application wants to know if it authorized to do something on behalf of a given user, it just sends their user authorization token to Ego, and gets back the associated information about who the user is (their user id), and what they are allowed to do (the permissions associated with their token). If the permissions that the user have include the permission the application wants, the application know it is authorized to perform the requested service on behalf of the user.
32
+
In more detail, when an Ego-aware application wants to know if it is authorized to do something on behalf of a given user, it just sends their user authorization token to Ego, and gets back the associated information about who the user is (their user id), and what they are allowed to do (the permissions associated with their token). If the permissions that the user have include the permission the application wants, the application know it is authorized to perform the requested service on behalf of the user.
For security reasons, applications need to be able to prove to Ego that they are the legitimate applications that Ego has been configured to work with.
37
39
38
-
For this reason, every Ego-aware application must be configured in Ego with it’s own unique client_id and password, and the application must send an authentication token with this information to Ego whenever it makes a request to get the identity and credentials associated with a user’s authorization token.
40
+
For this reason, every Ego-aware application must be configured in Ego with it’s own unique CLIENT ID and CLIENT SECRET, and the application must send a token with this information to Ego whenever it makes a request to get the identity and credentials associated with a user’s authorization token.
0 commit comments