Skip to content

Commit

Permalink
Update workspace.md
Browse files Browse the repository at this point in the history
  • Loading branch information
ruanyl authored Oct 10, 2023
1 parent 4436d80 commit 6011a5a
Showing 1 changed file with 13 additions and 10 deletions.
23 changes: 13 additions & 10 deletions docs/plugins/workspace.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ The follow example shows the dashboard object is associated with workspace which
}
```

Saved object can also associated with multiple workspaces, this is useful in scenarios where a saved object is relevant
Saved object can also be associated with multiple workspaces, this is useful in scenarios where a saved object is relevant
to multiple teams, projects, or use cases.

Consider the following example, where a visualization is associated with multiple workspaces:
Expand All @@ -106,12 +106,12 @@ Consider the following example, where a visualization is associated with multipl
By allowing saved objects to be linked with multiple workspaces, this enables users to share and collaborate on resources
across various workspaces(teams).

## Copy saved objects among workspaces
While associating saved objects with multiple workspaces links a single object instance to multiple places, copying saved
objects takes a different approach. When copying objects, it creates hard copies of the objects in the target workspace,
## Duplicate saved objects among workspaces
While associating saved objects with multiple workspaces links a single object instance to multiple places, duplicating saved
objects takes a different approach. When duplicating objects, it creates hard copies of the objects in the target workspace,
regardless of their original workspaces.

For example, if copy this object to `<target-workspace>`
For example, if duplicate this object to `<target-workspace>`
```typescript
{
type: "visualization",
Expand All @@ -128,13 +128,14 @@ Then a new object will be created with new `id` and associated with `<target-wor
}
```
### Handling Dependencies
A significant aspect of copying saved objects is the handling of dependencies. Many saved objects, particularly
A significant aspect of duplicating saved objects is the handling of dependencies. Many saved objects, particularly
visual objects like dashboards and visualizations, often have a hierarchical structure with dependencies.
For example, a dashboard may depend on multiple visualizations, and each visualization may rely on specific
index pattern objects.

The copying process is not limited to the saved object itself. Instead, it copies the entire dependency hierarchy
associated with the saved object. For example:
The duplicating process is not limited to the saved object itself. The user has the flexibility to choose whether
or not to duplicate the entire dependency tree. If duplicating the entire dependency hierarchy, all dependencies
will be duplicated. For example:
1. If the visualization depends on specific index pattern objects, these index pattern objects will also be duplicated
in `<target-workspace>`.
2. If the dashboard depends on multiple visualizations, those visualizations and their associated index patterns will
Expand All @@ -151,7 +152,7 @@ and permissions tailored to their intended purposes. Currently, workspace plugin
- **Purpose**: The Global Workspace serves as a centralized environment for managing resources and configurations that apply
globally across OpenSearch Dashboards.
- **Features**: It includes features that are accessible to all users, regardless of their specific teams or projects.
- **Permissions**: All users have `read` and `write` permission to public workspace and its associated saved objects.
- **Permissions**: All users have `read` and `write` permission to global workspace and its associated saved objects.
2. Personal Workspace
- **Purpose**: The Personal Workspace is designed to provide individual users with a dedicated space for their personal work.
However, it's important to note that a **Personal Workspace will only be created if user/role information can be retrieved**.
Expand All @@ -164,7 +165,9 @@ and permissions tailored to their intended purposes. Currently, workspace plugin
- **Permissions**: Initially, access to the Management Workspace is set to public during initialization, administrators have the
responsibility and privilege to restrict access and define permissions within the Management Workspace.


## Appendix
1. The PR the introduce [object access control](https://github.com/opensearch-project/OpenSearch-Dashboards/issues/5083)
2. The [PR](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4633/files)of the design doc for saved object access control



Expand Down

0 comments on commit 6011a5a

Please sign in to comment.