diff --git a/docs/admin-panel/AllProjectsPage.mdx b/docs/admin-panel/AllProjectsPage.mdx index f70739a48..187308c14 100644 --- a/docs/admin-panel/AllProjectsPage.mdx +++ b/docs/admin-panel/AllProjectsPage.mdx @@ -87,6 +87,10 @@ To modify project settings please refer to [Project Settings](/configuration/Pro ## Invite user on "All Projects" page +:::info +Depending on the toggle state in [Server Settings](/admin-panel/ServerSettings), the ability to manually invite external users to ReportPortal can be disabled. +::: + To invite a user to a project on "All Projects" page, perform the following steps: 1. Login into the ReportPortal instance as an `Administrator`. diff --git a/docs/admin-panel/AllUsersPage.mdx b/docs/admin-panel/AllUsersPage.mdx index 1ba36c1bf..26e465a1e 100644 --- a/docs/admin-panel/AllUsersPage.mdx +++ b/docs/admin-panel/AllUsersPage.mdx @@ -24,6 +24,10 @@ ReportPortal allows to create a new user account on the "All Users" page in the ## Add user +:::info +Depending on the toggle state in [Server Settings](/admin-panel/ServerSettings), the ability to manually invite external users to ReportPortal can be disabled. +::: + To add a user on the "All Users" page, perform the following steps: 1. Login into ReportPortal instance as `Administrator`. @@ -56,6 +60,10 @@ Please, do not forget to review project roles on regular basis. We recommend to ## Invite user on the "All Users" page +:::info +Depending on the toggle state in [Server Settings](/admin-panel/ServerSettings), the ability to manually invite external users to ReportPortal can be disabled. +::: + To invite a user on the "All Users" page, perform the following steps: 1. Login into ReportPortal instance as `Administrator`. diff --git a/docs/admin-panel/ServerSettings.mdx b/docs/admin-panel/ServerSettings.mdx new file mode 100644 index 000000000..c53e14ff2 --- /dev/null +++ b/docs/admin-panel/ServerSettings.mdx @@ -0,0 +1,84 @@ +--- +sidebar_position: 4 +sidebar_label: Server Settings +--- + +# Server Settings + +In the Server Settings section, you can enable GitHub authorization, allowing users to sign in with their GitHub credentials. Additionally, you can configure the instance to allow login only through SSO and here you can enable or disable Google Analytics. + +## Authorization configuration + +### GitHub + +To enable [GitHub authorization](/plugins/authorization/GitHub/): + +1. Log in as ADMIN. +2. Go to Administrate > Server Settings. +3. Switch ON the "GitHub authorisation" toggle. +4. Fill in required [parameters for authorization](/plugins/authorization/GitHub#reportportal-configuration). +5. Click "Submit". + + + +Now you can access ReportPortal by clicking the "Login with GitHub" button on the login page. + +### Instance Invitations + +Administrator can disable the possibility for manual invitation of external users. In such case, users can get access to ReportPortal via identity provider only (for example, SAML) configured on the instance. + +The default state of toggle on "Instance Invitations" section is OFF. + + + +When toggle is OFF: + +1. The "Invite User" and "Add User" buttons are displayed on the "All Users" page. + + + +2. The "Invite User" button is displayed on the "Project Members" page. + + + +When toggle is ON, manual invitation of external is disabled: + +1. The "Invite User" and "Add User" buttons are removed from the "All Users" page. + + + +2. The "Invite User" button on the "Project Members" page has been changed to the "Assign User" button. Now, the Project Manager and Administrator can no longer invite new users to this project and instance; they can only assign existing users to this project. + + + +To assign user on the project: + +1. Log in as Project Manager or ADMIN. +2. Go to the "Project Members" page. +3. Click the "Assign User" button. +4. Start type the name > suggestions will be provided in the dropdown. + + + +or + +1. Log in as ADMIN. +2. Go to Administrate > "All Projects" page. +3. Click on the ellipsis button on the project preview. +4. Select the "Members" option. +5. Click on the "Assign User" button. +6. Start type the name > suggestions will be provided in the dropdown. + + + +## Analytics + +To turn on [Google Analytics](/terms-and-conditions/GoogleAnalyticsUsageByReportPortal/) on ReportPortal UI: + +1. Log in as ADMIN. +2. Go to Administrate > Server Settings. +3. Go to Analytics tab. +4. Check "Help make Report Portal better by automatically sending analytics to us" checkbox. +5. Click on "Submit" button. + + diff --git a/docs/admin-panel/img/server-settings/ServerSettings1.png b/docs/admin-panel/img/server-settings/ServerSettings1.png new file mode 100644 index 000000000..282dd9c73 Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings1.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings2.png b/docs/admin-panel/img/server-settings/ServerSettings2.png new file mode 100644 index 000000000..4d51cc0c1 Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings2.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings3.png b/docs/admin-panel/img/server-settings/ServerSettings3.png new file mode 100644 index 000000000..1b3fb237f Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings3.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings4.png b/docs/admin-panel/img/server-settings/ServerSettings4.png new file mode 100644 index 000000000..f485eec5c Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings4.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings5.png b/docs/admin-panel/img/server-settings/ServerSettings5.png new file mode 100644 index 000000000..dcb9b8e2e Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings5.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings6.png b/docs/admin-panel/img/server-settings/ServerSettings6.png new file mode 100644 index 000000000..4b912d7dd Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings6.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings7.png b/docs/admin-panel/img/server-settings/ServerSettings7.png new file mode 100644 index 000000000..57fc475aa Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings7.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings8.png b/docs/admin-panel/img/server-settings/ServerSettings8.png new file mode 100644 index 000000000..b3599b453 Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings8.png differ diff --git a/docs/admin-panel/img/server-settings/ServerSettings9.png b/docs/admin-panel/img/server-settings/ServerSettings9.png new file mode 100644 index 000000000..7deab7f1d Binary files /dev/null and b/docs/admin-panel/img/server-settings/ServerSettings9.png differ diff --git a/docs/configuration/UserManagement.mdx b/docs/configuration/UserManagement.mdx index 6957addb7..55089ca01 100644 --- a/docs/configuration/UserManagement.mdx +++ b/docs/configuration/UserManagement.mdx @@ -12,6 +12,10 @@ User with `ADMINISTRATOR` role and users with project role `PROJECT_MANAGER`. ### Invite user on a project +:::info +Depending on the toggle state in [Server Settings](/admin-panel/ServerSettings), the ability to manually invite external users to ReportPortal can be disabled. +::: + To invite a user on the "Project Members" page, perform the following steps: 1. Login into ReportPortal instance as with the `PROJECT_MANAGER` project role. diff --git a/docs/features/SCIMServerFeature.md b/docs/features/SCIMServerFeature.md new file mode 100644 index 000000000..139465d8d --- /dev/null +++ b/docs/features/SCIMServerFeature.md @@ -0,0 +1,35 @@ +--- +sidebar_position: 8 +sidebar_label: SCIM Server feature +--- + +# SCIM Server feature + +SCIM is a protocol that simplifies how you manage user identities and access across various applications and services. It automates the sharing of user identity information between your identity provider (like Azure AD or Okta) and service providers, such as ReportPortal. + +ReportPortal includes a SCIM Server that acts as a bridge between your identity provider and ReportPortal, streamlining the management of user accounts. + +**Benefits** + +* Reduced administrative work: Automating the creation and removal of user accounts helps eliminate manual errors and saves time. +* Enhanced security: SCIM ensures that security policies and access controls are consistently applied across different systems. +* Improved user experience: Users are automatically assigned to projects and roles based on their group memberships in the identity provider. + +**Key Features** + +* Automated Account Setup: SCIM allows for the automatic creation of user accounts in ReportPortal, complete with project and role assignments. +* Flexible Account Types: Users can be designated as Admins or Regular Users in ReportPortal. +* Dynamic Updates: Changes in the identity provider trigger updates in account type and project assignments in ReportPortal. +* Account De-provisioning: Supports both "soft" delete (disabling accounts) and "hard" delete (removing accounts). + +**Group Management** + +Both user and application groups are recognized as sources for project membership. Group names in the identity provider must follow a specific pattern set on the SCIM Server to correctly update project and role assignments in ReportPortal. This involves a regular expression pattern that identifies the project name and role from the group name. + +**Default Roles** + +A default project role can be assigned to users who don't have a specific role pattern in their group membership on the Identity Provider side. + +:::note +The SCIM server feature is a premium offering from ReportPortal, available as part of our paid support services. We provide assistance with both the identity provider settings and the SCIM Server configuration.
+If you're interested in enabling SCIM for your setup, please [contact us](https://reportportal.io/contact-us/general) for more information. diff --git a/docs/plugins/EmailServer.mdx b/docs/plugins/EmailServer.mdx index f2d7038c0..f7bf4670e 100644 --- a/docs/plugins/EmailServer.mdx +++ b/docs/plugins/EmailServer.mdx @@ -1,163 +1,126 @@ --- sidebar_position: 10 -sidebar_label: E-mail server +sidebar_label: Email Server --- -# E-mail server +# Email Server -E-mail server plugin is available in ReportPortal on the Plugins page. +Email Server plugin is available in ReportPortal on the Plugins page. You don't need to download. It is already available in ReportPortal on the Plugins page. -## Add E-mail server integrations +## Add Email Server integration -You can integrate our centralized test automation tool with an E-mail server via SMTP protocol. With this integration, you will be able to perform such functions as: +You can integrate our centralized test automation tool with an Email Server via the SMTP protocol. -- invite a new user to the project -- configure notification rules on launch finish +This integration enables you to perform functions such as: +* inviting new users to the project +* configuring notification rules on launch finish +* receiving notifications about account deletion, creation of project Email Server integration, completion of index generation for the analyzer -**Permissions:** - -user with account role *ADMINISTRATOR* can configure E-mail integration for the whole instance or per project. -User with account role *PROJECT MANAGER* can configure E-mail integration only on a project where he is assigned on as Project Manager. +:::important +A user with the account role Administrator can configure email integration for the entire instance or on a per-project basis.
+A user with the account role Project Manager can configure email integration only for projects where they are assigned as the Project Manager. +::: -## Global E-mail server integration +## Global Email Server integration To configure the SMTP server for the whole instance: -1. Log in to the ReportPortal as an ADMIN user +1. Log in as ADMIN. -2. Then open the list on the right of the user's image. +2. Go to Administrate > Plugins. -3. Click the 'Administrative' link +3. Click on Email Server plugin panel. -4. Click the 'Plugins' from the left-hand sidebar +4. Click on "Add integration" button. -5. Click on the 'Email Server' tab. + -6. Click on Add new integration +5. Fill in required parameters for integration. -7. The next fields should be present: +6. Click "Create" button. -```javascript -`Host`: -`Protocol`: SMTP (predefined) -`Default sender name`: (optional) -`Port`: -`Authorization`: OFF/ON -`Username`: -`Password`: -'TLS' or 'SSL': should be checked depends on the selected port. +```javascript +`Host`: (required) +`Protocol`: (predefined) +`From name`: (optional) +`From Email`: (required) +`Port`: (required) +`Authorization`: OFF/ON (dropdown) +`Username`: (required) +`Password`: (required) +`TLS` or `SSL`: (checkbox) ``` -Example of SMTP server configuration for Gmail email server (detailed info could be found [here](https://support.google.com/a/answer/176600?hl=en)) +:::note +You can configure an Email Server using an email service provider (such as SendGrid) and enter a username in the `Username` field without including the @ symbol or undergoing additional validation. +::: + +Example of SMTP server configuration for Gmail email server (detailed info could be found [here](https://support.google.com/a/answer/176600?hl=en)). ```javascript `Host`: smtp.gmail.com `Protocol`: SMTP -`Default sender name`: Report Portal -`Port`: 465 +`From name`: reportportal +`From Email`: reportportal1@gmail.com +`Port`: 587 `Authorization`: ON -`Username`: -`Password`: -`SSL`: checkbox should be checked. +`Username`: reportportal1 +`Password`: +`TLS`: checkbox should be checked ``` -Example of an SMTP server configuration for a Yandex email server (detailed info can be found [here](https://yandex.com/support/mail-new/mail-clients.html)) + -```javascript -`Host`: smtp.yandex.com -`Protocol`: SMTP -`Default sender name`: Report Portal -`Port`: 465 -`Authorization`: ON -`Username`: -`Password`: -`SSL`: checkbox should be checked. -``` +After Email Server integration is added, the configuration will apply to all projects within the instance. -8. Confirm data in the form +## Project Email Server integration - +If email integration has not been added to the project, or if a Project Manager or Administrator wants to specify unique configurations for a specific project, they can configure the Email Server in the project settings. -After E-mail server integration adding, the configuration will be applied to all projects on the instance. +To configure an SMTP server for a single project instance: -## Project E-mail integration +1. Log in as an ADMIN or Project Manager. -If E-mail integration has not to be added on the project, or if Project Manager or Admin want to specified special configurations for a special project, they can configure E-mail server in the project settings. +2. Go to Project Settings > Integrations. -To configure SMTP server for one single project instance: +3. Click on the Email Server integration panel. -1. Log in to the ReportPortal as an ADMIN or PM user -2. Then click on the Project settings icon. -3. Click on the Integrations tab. -4. Click on the 'E-mail Server' tab. -5. Click on the button "Unlink & Setup Manually" -6. The next fields should be present: -```javascript -`Host`: -`Protocol`: SMTP (predefined) -`Default sender name`: (optional) -`Port`: -`Authorization`: OFF/ON -`Username`: -`Password`: -'TLS' or 'SSL': should be checked depends on the selected port. -``` +4. Click on "Add Project integration" button. -Example of SMTP server configuration for Gmail email server (detailed info could be found [here](https://support.google.com/a/answer/176600?hl=en)) + -```javascript -`Host`: smtp.gmail.com -`Protocol`: SMTP -`Default sender name`: Report Portal -`Port`: 465 -`Authorization: ON -`Username`: -`Password`: -`SSL`: checkbox should be checked. +5. Fill in required parameters for integration. + +6. Click "Create" button. + +```javascript +`Host`: (required) +`Protocol`: (predefined) +`From name`: (optional) +`From Email`: (required) +`Port`: (required) +`Authorization`: OFF/ON (dropdown) +`Username`: (required) +`Password`: (required) +`TLS` or `SSL`: (checkbox) ``` -Example of an SMTP server configuration for a Yandex email server (detailed info can be found [here](https://yandex.com/support/mail-new/mail-clients.html)) +Example of SMTP server configuration for Gmail email server (detailed info could be found [here](https://support.google.com/a/answer/176600?hl=en)): ```javascript -Host: smtp.yandex.com +`Host`: smtp.gmail.com `Protocol`: SMTP -`Default sender name`: Report Portal -`Port`: 465 +`From name`: reportportal +`From Email`: reportportal1@gmail.com +`Port`: 587 `Authorization`: ON -`Username`: -`Password`: -`SSL`: checkbox should be checked. +`Username`: reportportal1 +`Password`: +`TLS`: checkbox should be checked ``` + -8. Confirm data in the form - -After E-mail server integration adding, the configuration will be applied to all projects on the instance. - -:::note -In case you unlink your project settings from Global settings, for the chosen project -::: -**A possibility to provide custom host in links** (started from 5.4 version) - -You can make this operation via API. -For that just choose an API call Integration controller - Update project integration instance, and provide a link to your host in the field ' "rpHost": "custom_link.com" '' - -```javascript -PUT/v1/integration/{projectName}/{integrationId} - -{ - "enabled": true, - "integrationParameters": { - "protocol": "smtp", - "rpHost": "custom_link.com", - "authEnabled": true, - "port": "", - "sslEnabled": false, - "starTlsEnabled": true, - "host": "smtp.com", - "username": "" - } -} -``` + diff --git a/docs/plugins/img/email-server/EmailServer1.png b/docs/plugins/img/email-server/EmailServer1.png new file mode 100644 index 000000000..3ecfca1aa Binary files /dev/null and b/docs/plugins/img/email-server/EmailServer1.png differ diff --git a/docs/plugins/img/email-server/EmailServer2.png b/docs/plugins/img/email-server/EmailServer2.png new file mode 100644 index 000000000..580217ff5 Binary files /dev/null and b/docs/plugins/img/email-server/EmailServer2.png differ diff --git a/docs/plugins/img/email-server/EmailServer3.png b/docs/plugins/img/email-server/EmailServer3.png new file mode 100644 index 000000000..e5097e247 Binary files /dev/null and b/docs/plugins/img/email-server/EmailServer3.png differ diff --git a/docs/plugins/img/email-server/EmailServer4.png b/docs/plugins/img/email-server/EmailServer4.png new file mode 100644 index 000000000..62e6ca911 Binary files /dev/null and b/docs/plugins/img/email-server/EmailServer4.png differ