Access Management

Eolymp offers a flexible access management system to control permissions within your space. Access is handled through policies, with each policy defining a set of allowed actions for a user within a specific scope. You can create space-wide policies to grant access to all resources, or set up multiple resource-specific policies to restrict access to individual resources.

If two policies overlap on the same resource, their permissions are combined. For example, if a space-wide policy allows problem reading and a problem-specific policy allows writing, the user will be able to both read and write that problem.

To ensure uninterrupted access to the space, at least one policy must grant full access ("Allow all actions" checked) to at least one user.

How to Create a Policy

  1. Open the console and select the space you want to manage.

  2. Navigate to the "Permissions" section.

  3. Click "Add policy" and set the policy parameters:

    • User: Select the user you want to grant access to.

    • Scope: Choose between space, problem, contest, or course. The scope defines whether the policy applies to the entire space or a specific resource.

    • Actions: Either select "Allow all actions" for full access or specify the actions you want to allow.

How to Define Actions

Most resources have basic "Read" and "Write" actions:

  • Read: Allows the user to view a specific resource.

  • Write: Allows the user to make changes to that resource.

For example, a "Read" action for "Billing" lets the user view billing details, dates, and seat usage, but not modify the plan or payment details. Adding the "Write" action would grant permission to make these changes.

Some resources have additional actions:

  • Delete (Space): Grants the ability to delete the entire space.

  • Testing (Problem): Grants access to manage testing configurations, such as test data, checkers, invokers, solutions, and scripts. Combining "Testing" with "Write" allows the user to modify these parameters.

  • Assign (Course): Allows the user to manage students and their assignments. In this context, "Write" only allows managing course modules and materials, while "Assign" permits managing students.

Examples

Full Access to the Space

To grant a user full access:

  • Scope: Space

  • Check "Allow all actions."

Administrator Access to the Space

Administrator access allows a user to perform all actions except deleting the space or changing permissions. To set this up:

  • Scope: Space

  • Leave "Allow all actions" unchecked.

  • Check all actions except: Space Delete, Permissions Read, and Permissions Write.

Read Access to All Problems and Write Access to Selected Problems

In this scenario you would need to create one read policy and multiple write policies, one for each one of the selected problems.

  1. Read Access to All Problems:

    • Scope: Space

    • Leave "Allow all actions" unchecked.

    • Check "Problem Read."

  2. Write Access to Specific Problems:

    • Scope: Problem (choose the specific problem for write access)

    • Leave "Allow all actions" unchecked.

    • Check "Problem Read," "Problem Write," and optionally "Problem Testing."