Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

First draft of Personal Applications #1316

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions docs/Researcher/best-practices/personal-applications.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Personal Applications
SherinDaher-Runai marked this conversation as resolved.
Show resolved Hide resolved

This article explains the procedure to create personal applications.

Applications are used for API integrations with Run:ai. An application contains a client secret. Using the client key you can obtain a token and use it within subsequent API calls.
SherinDaher-Runai marked this conversation as resolved.
Show resolved Hide resolved

Personal applications are managed locally and assigned with the user's Access Rules to manage its permissions. TBD


## Creating Personal Applications

To create a personal application:

1. Press the user icon, then select Settings.
2. Click **+APPLICATION**
3. Enter the application’s **Name**
4. Click **CREATE**
5. Copy the **Client ID** and **Client secret** and store securely
6. Click **DONE**

You can create up to 20 personal applications.

!!!Note
The client secret is visible only at the time of creation. It cannot be recovered but can be regenerated.


## Regenerating client secret

To regenerate a client secret:

1. Locate the application you want to regenerate its client secret
2. Click **Regenerate client secret**
3. Click **REGENERATE**
4. Copy the **New client secret** and store it securely
5. Click **DONE**

!!!Warning
Regenerating a client secret revokes the previous one.

## Deleting an application

1. Locate the application you want to delete
2. Click on the trash icon
3. On the dialog, click **DELETE** to confirm

## Using API

TBD

59 changes: 30 additions & 29 deletions docs/admin/authentication/applications.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,36 @@
This article explains the procedure to manage applications and it’s permissions.
This article explains the procedure to manage applications.

Applications are used for API integrations with Run:ai. An application contains a secret key. Using the secret key you can obtain a token and use it within subsequent API calls.
Applications are used for API integrations with Run:ai. An application contains a client secret. With the client secret you can obtain a token and use it within subsequent API calls.

SherinDaher-Runai marked this conversation as resolved.
Show resolved Hide resolved
Applications are managed locally and assigned with Access Rules to manage its permissions.
Applications are managed locally and assigned with Access Rules to manage permissions.

For example, application **ci-pipeline-prod** assigned with a **Researcher** role in **Cluster: A**.
For example, application **ci-pipeline-prod** assigned with a **Researcher** role in **Cluster: A**. TBD

## Applications table

The Applications table can be found under **Tools & Settings** in the Run:ai platform.
The Applications table can be found under **Access** in the Run:ai platform.

The Applications table provides a list of all the applications defined in the platform, and allows you to manage them.
The Applications table provides a list of all the applications defined in the platform, and allows you to manage them. TBD: not personal applications?

![](img/appstable.png)

TBD: add new screenshot

The Applications table consists of the following columns:

| Column | Description |
| :---- | :---- |
| Application | The name of the application |
| client ID | The name of the application TBD |
| Status | The status of the application |
| Access rule(s) | The access rules assigned to the application |
| Last login | The timestamp for the last time the user signed in |
| Created by | The user who created the application |
| Creation time | The timestamp for when the application was created |
| Last updated | The last time the application was updated |

TBD: client ID same as app name but not in personal application

### Customizing the table view

* Filter \- Click ADD FILTER, select the column to filter by, and enter the filter values
Expand All @@ -40,27 +44,25 @@ The Applications table consists of the following columns:
To create an application:

1. Click **\+NEW APPLICATION**
1. Enter the application’s **Name**
1. Click **CREATE**
1. Copy the credentials and store it securely:
* **Application name**
* **Secret key**
1. Click **DONE**
2. Enter the application’s **name**
3. Click **CREATE**
4. Copy the **Client ID** and **Client secret** and store them securely
5. Click **DONE**

!!!Note
The secret key is visible only at the time of creation, it cannot be recovered but can be regenerated.
The client secret is visible only at the time of creation. It cannot be recovered but can be regenerated.

## Adding an access rule to an application

To create an access rule:

1. Select the application you want to add an access rule for
1. Click **ACCESS RULES**
1. Click **\+ACCESS RULE**
1. Select a role
1. Select a scope
1. Click **SAVE RULE**
1. Click **CLOSE**
2. Click **ACCESS RULES**
3. Click **\+ACCESS RULE**
4. Select a role
5. Select a scope
6. Click **SAVE RULE**
7. Click **CLOSE**

## Deleting an access rule from an application

Expand All @@ -72,20 +74,19 @@ To delete an access rule:
1. Click on the trash icon
1. Click **CLOSE**

## Regenerating key
## Regenerating client secret

To regenerate an application’s key:
To regenerate a client secret:

1. Select the application you want to regenerate it’s secret key
1. Click **REGENERATE KEY**
1. Click **REGENERATE**
1. Review the user’s credentials and store it securely:
* **Application** name
* **Secret key**
1. Click **DONE**
1. Locate the application you want to regenerate its client secret
2. Click **REGENERATE CLIENT SECRET**
3. Click **REGENERATE**
4. Copy the **New client secret** and store it securely
5. Click **DONE**

!!!Warning
Regenerating an application key revokes its previous key.
Regenerating a client secret revokes the previous one.


## Deleting an application

Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,7 @@ nav:
- 'Save Deep Learning Checkpoints' : 'Researcher/best-practices/save-dl-checkpoints.md'
- 'Environment Variables' : 'Researcher/best-practices/env-variables.md'
- 'Email Notifications' : 'Researcher/best-practices/researcher-notifications.md'
- 'Personal Applications' : 'Researcher/best-practices/personal-applications.md'
- 'Secrets as Environment Variables (CLI)' : 'Researcher/best-practices/secrets-as-env-var-in-cli.md'
- 'Scheduling' :
- 'The Run:ai Scheduler' : 'Researcher/scheduling/the-runai-scheduler.md'
Expand Down
Loading