Privilege Authentication

User Authentication

Request:

GET /foo/bar/ HTTP/1.1
Authorization: Basic user:passwd

Response:

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Basic

<error type="privileges.authentication.user_authentication_required"/>

Client:

Client asks user to enter their password in a dialog box.

Request:

GET /foo/bar/ HTTP/1.1
Authorization: Basic user:passwd

X-ESCALATE: ADMINISTRATOR
X-ESCALATE-Authorization: Basic user:passwd_typed

Response:

HTTP/1.1 200 OK

Expected Errors:

Type Description
auth.invalid_escalation_credentials Indicates that user/mgr/admin has provided invalid username/password for their corresponding authentication

Manager Admin Authentication

Request:

GET /foo/bar/ HTTP/1.1
Authorization: Basic user:passwd

Response:

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Basic

<error type="privileges.authentication.mgr_admin_authentication_required"/>

Client:

Client asks user to enter a manager or administrator's credentials.

Request:

GET /foo/bar/ HTTP/1.1
    Authorization: Basic user:passwd

    X-ESCALATE: MANAGER
    X-ESCALATE-Authorization: Basic manager_user:passwd_typed

Response:

HTTP/1.1 200 OK

Expected Errors:

Type Description
auth.invalid_escalation_credentials Indicates that user/mgr/admin has provided invalid username/password for their corresponding authentication

Admin Authentication

Request:

GET /foo/bar/ HTTP/1.1
Authorization: Basic user:passwd

Response:

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Basic

<error type="privileges.authentication.admin_authentication_required"/>

Client:

Client asks user to enter an administrator's credentials.

Request:

GET /foo/bar/ HTTP/1.1
    Authorization: Basic administrator:passwd

    X-ESCALATE: ADMINISTRATOR
    X-ESCALATE-Authorization: Basic administrator_user:passwd_typed

Response:

HTTP/1.1 200 OK

Expected Errors:

Type Description
auth.invalid_escalation_credentials Indicates that user/mgr/admin has provided invalid username/password for their corresponding authentication