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
Copy file name to clipboardExpand all lines: setup/security/authentication/oidc.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,10 +53,10 @@ stackstate:
53
53
secret: "<oidc-secret>"
54
54
baseUrl: "<rancher-url>"
55
55
```
56
-
You can override and extend some of the OIDC config for Rancher with the following fields:
57
-
- `discoveryUri`
58
-
- `redirectUri`
59
-
- `customParams`
56
+
You can override and extend the OIDC config for Rancher with the following fields:
57
+
* **discoveryUri** - URI that can be used to discover the OIDC provider. Normally also documented or returned when creating the client in the OIDC provider.
58
+
* **redirectUri** - Optional \(not in the example\): The URI where the login callback endpoint of SUSE Observability is reachable. Populated by default using the `stackstate.baseUrl`, but can be overridden. This must be a fully qualified URL that points to the `/loginCallback` path.
59
+
* **customParameters** - Optional map of key/value pairs that are sent to the OIDC provider as custom request parameters. Some OIDC providers require extra request parameters not sent by default.
60
60
61
61
If you need to disable TLS verification due to a setup not using verifiable SSL certificates, you can disable SSL checks with some application config (don't use in production):
Copy file name to clipboardExpand all lines: setup/security/rbac/README.md
+5-3Lines changed: 5 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,10 @@ Access Management helps you manage who has access to the specific topology eleme
8
8
9
9
RBAC is an authorization system that provides fine-grained access management of SUSE Observability resources, a clean and easy way to audit user privileges and to fix identified issues with access rights.
10
10
11
+
There are two different ways to configure RBAC:
12
+
***Kubernetes RBAC** - Roles and RoleBindings are provisioned on both the cluster running SUSE Observability as well as any monitored cluster. The supported way to do this is by using Rancher.
13
+
***Standalone RBAC** - Configuration is done via the SUSE Observability application itself.
14
+
11
15
## What can I do with RBAC?
12
16
13
17
Here are some examples of what you can do with RBAC:
@@ -24,9 +28,7 @@ This depends a bit on how SUSE Observability is deployed. Both modes of deploym
24
28
## More on RBAC configuration
25
29
26
30
*[Rancher RBAC](rbac_rancher.md)
27
-
*[Permissions](rbac_permissions.md)
28
-
*[How to set up roles](rbac_roles.md)
29
-
*[Scopes](rbac_scopes.md)
31
+
*[Standalone RBAC](rbac_roles.md)
30
32
*[How to configure authentication](../authentication/)
This page only applies to "Standalone RBAC". Details on permissions in "Rancher RBAC" can be found in [Resource details](rbac_rancher.md#resource-details).
11
+
{% endhint %}
12
+
9
13
Permissions in SUSE Observability allow Administrators to manage the actions that each user or user group can perform inside SUSE Observability and the information that will be shown in their SUSE Observability UI. Only the feature set relevant to each user's active role will be presented. The actions, information and pages that a user doesn't have access to are simply not displayed in their SUSE Observability UI.
The SUSE Rancher Prime Observability Extension allows RBAC configuration of users access in SUSE Observability.
7
+
The SUSE Rancher Prime Observability Extension uses Kubernetes RBAC to grant access to Rancher users in SUSE Observability.
8
+
If you do not use Rancher, look at [How to set up roles](rbac_roles.md) in a standalone installation.
8
9
9
10
Two kinds of roles are used for accessing SUSE Observability:
10
11
* A *scope role* (Observer) grants access to data - either all data in a SUSE Observability instance, data coming from a cluster, or just the data for a namespace. This role is provisioned in a cluster to be observed.
@@ -20,13 +21,16 @@ The observer role grants a user the permission to read topology, metrics, logs a
20
21
***Cluster Observer** - grants access to all data coming from a Cluster. This template can be used in the "Cluster Membership" section of the cluster configuration.
21
22
***Instance Observer** - grants access to all data in a SUSE Observability instance. This template can be used on the Project that includes SUSE Observability itself.
22
23
24
+
In order to use these observer roles, it is recommended that the following role is granted on the Project running SUSE Observability itself:
25
+
***Recommended Access** - has recommended permissions for using SUSE Observability.
26
+
23
27
### Instance roles
24
28
25
-
There are four roles predefined in SUSE Observability:
29
+
There are two roles predefined in SUSE Observability, allowing for configuring the system - setting up views, monitors, notitifications etcetera:
30
+
As these concern "global" settings of SUSE Observability, these roles include access to all data in an observability instance.
26
31
27
-
***Recommended Access** - has recommended permissions for using SUSE Observability.
28
-
***Instance Troubleshooter** - has all permissions required to use SUSE Observability for troubleshooting, including the ability to enable/disable monitors, create custom views and use the Cli. This role includes access to all data in an observability instance.
29
-
***Instance Administrator** - has full access to all views and has all permissions. This role includes access to all data in an observability instance.
32
+
***Instance Troubleshooter** - has all permissions required to use SUSE Observability for troubleshooting, including the ability to enable/disable monitors, create custom views and use the Cli.
33
+
***Instance Administrator** - has full access to all views and has all permissions.
30
34
31
35
The permissions assigned to each predefined SUSE Observability role can be found below. For details of the different permissions and how to manage them using the `sts` CLI, see [Role based access control (RBAC) permissions](/setup/security/rbac/rbac_permissions.md)
Copy file name to clipboardExpand all lines: setup/security/rbac/rbac_roles.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -273,6 +273,8 @@ suse-observability \
273
273
suse-observability/suse-observability
274
274
```
275
275
276
+
For details on the `topologyScope`, see [RBAC Scopes](rbac_scopes.md).
277
+
276
278
### Custom roles via the CLI
277
279
278
280
To set up a new role called `development-troubleshooter`, which will allow the same permissions as the normal troubleshooter role, but only for the `dev-test` cluster, a new subject needs to be created. Further more this subject needs to be assigned the required set of permissions:
Copy file name to clipboardExpand all lines: setup/security/rbac/rbac_scopes.md
+13-9Lines changed: 13 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,23 +2,27 @@
2
2
description: SUSE Observability Self-hosted
3
3
---
4
4
5
-
# Scopes
5
+
# Topology Scopes
6
6
7
-
## How do scopes work?
7
+
{% hint style="warning" %}
8
+
The topology scopes discussed here only apply to a *Standalone RBAC* deployment. See [Rancher RBAC](Rancher RBAC) for the available scopes in a *Rancher RBAC* deployment.
9
+
{% endhint %}
8
10
9
-
The scope is an [STQL query](../../../develop/reference/k8sTs-stql_reference.md) that's added as a prefix to every query executed in SUSE Observability. Whenever a user wants to select a view or pass a query in SUSE Observability, this prefix query is executed as a part of the user's query. This limits the results accordingly to match the user's role.
11
+
## How do topology scopes work?
12
+
13
+
The topology scope is an [STQL query](../../../develop/reference/k8sTs-stql_reference.md) that's added as a prefix to every query executed in SUSE Observability. Whenever a user wants to select a view or pass a query in SUSE Observability, this prefix query is executed as a part of the user's query. This limits the results accordingly to match the user's role.
10
14
11
15
Note: Please note that function calls like `withCauseOf` and `withNeighborsOf` aren't supported as they would not be performant in this context.
12
16
13
-
If a user belongs to multiple groups, then this user can have multiple scopes, which translates to multiple prefixes. In this situation, the prefix is executed as an OR of all scopes that this user has.
17
+
If a user belongs to multiple groups, then this user can have multiple topology scopes, which translates to multiple prefixes. In this situation, the prefix is executed as an OR of all topology scopes that this user has.
14
18
15
19
Users need to log out and authenticate again to SUSE Observability whenever any changes to roles or permissions are made.
16
20
17
-
## Why scopes?
21
+
## Why topology scopes?
18
22
19
-
Scopes are introduced as a security feature that's mandatory for every subject within SUSE Observability. The predefined SUSE Observability users Administrator, Power User and Guest roles have no scope defined.
23
+
Topology scopes are introduced as a security feature that's mandatory for every subject within SUSE Observability. The predefined SUSE Observability users Administrator, Power User and Guest roles have no scope defined.
20
24
21
-
It's possible to specify a scope as a query wildcard, however, this will result in access to everything and isn't recommended. If there is a need for access without a scope, it's recommended to use one of the [predefined roles](rbac_permissions.md#predefined-roles) instead.
25
+
It's possible to specify a topology scope as a query wildcard, however, this will result in access to everything and isn't recommended. If there is a need for access without a topology scope, it's recommended to use one of the [predefined roles](rbac_permissions.md#predefined-roles) instead.
22
26
23
27
## Examples
24
28
@@ -34,7 +38,7 @@ The query for this view is the same as for the others, but without any prefix:
34
38
'layer = "Infrastructure" AND domain IN ("Customer1", "Customer2")'
35
39
```
36
40
37
-
### Below user is in a group with configured subject X with the following scope:
41
+
### Below user is in a group with configured subject X with the following topology scope:
38
42
39
43
```text
40
44
'domain = "Customer1"'
@@ -48,7 +52,7 @@ Query with the prefix for this view is:
48
52
'(domain = "Customer1") AND (layer = "Infrastructure" AND domain IN ("Customer1", "Customer2"))'
49
53
```
50
54
51
-
### Another user who is a part of a group with a configured subject Y that has the following scope:
55
+
### Another user who is a part of a group with a configured subject Y that has the following topology scope:
0 commit comments