Skip to content

Commit 1a118fb

Browse files
author
Dan Costello
committed
Update relative links
1 parent 26d06e1 commit 1a118fb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+106
-106
lines changed

content/docs/(authorization)/Overview/modelling-hierarchy-with-attribute-types.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ In this article, you will learn how to model relationships and arbitrarily deep
1212
- **Organizational structures** where users can be members of different teams
1313
- **Social structures** like families and friends of friends
1414

15-
The article assumes you know what <Glossary>object</Glossary>, <Glossary>edge</Glossary>s, <Glossary>attribute</Glossary>s and <Glossary>permission</Glossary>s are. For more detail, see our [Key Concepts](https://docs.userclouds.com/docs/key-concepts-1) article.
15+
The article assumes you know what <Glossary>object</Glossary>, <Glossary>edge</Glossary>s, <Glossary>attribute</Glossary>s and <Glossary>permission</Glossary>s are. For more detail, see our [Key Concepts](/docs/key-concepts-1) article.
1616

1717
## Attribute Scopes
1818

content/docs/(authorization)/how-to-guides/1-design-your-model.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,4 +56,4 @@ Attributes are defined at the edge type level, so all edges of a given type shar
5656
- They pass a permission from one user or group to another (<Glossary>inherit</Glossary> attributes)
5757
- They propagate a permission down a hierarchy of nested objects, like folders and files (<Glossary>propagate</Glossary> attributes)
5858

59-
For more intro on attributes, see [Modelling Hierarchy with Attribute Scopes](https://docs.userclouds.com/docs/modelling-hierarchy-with-attribute-types).
59+
For more intro on attributes, see [Modelling Hierarchy with Attribute Scopes](/docs/modelling-hierarchy-with-attribute-types).

content/docs/(authorization)/how-to-guides/2-populate-the-graph.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ updatedAt: "Fri Aug 04 2023 18:42:07 GMT+0000 (Coordinated Universal Time)"
1212
Once you have designed the structure of your model, it's time to build your database of <Glossary>object</Glossary>s and <Glossary>edge</Glossary>s in UserClouds. This can be done in two steps:
1313

1414
- (a) Migrate over from a pre-existing identity system
15-
- (b) Implement UserClouds's APIs to [populate the graph with objects](https://docs.userclouds.com/reference/post_authz-objects) and [edges](https://docs.userclouds.com/reference/post_authz-edges) on an ongoing basis
15+
- (b) Implement UserClouds's APIs to [populate the graph with objects](/reference/post_authz-objects) and [edges](/reference/post_authz-edges) on an ongoing basis
1616

1717
If you are building your product or user base from scratch, you will skip straight to part (b).
1818

@@ -24,6 +24,6 @@ _Docs coming soon! For help migrating over from your existing AuthZ system, plea
2424

2525
## B. Implement Write APIs in your software
2626

27-
Maintaining your authorization graph is simple with UserClouds's CRUD APIs. These allow you to [create Objects](https://docs.userclouds.com/reference/post_authz-objects) and [Edges](https://docs.userclouds.com/reference/post_authz-edges) programmatically in your application.
27+
Maintaining your authorization graph is simple with UserClouds's CRUD APIs. These allow you to [create Objects](/reference/post_authz-objects) and [Edges](/reference/post_authz-edges) programmatically in your application.
2828

29-
For more information on the APIs for Authorization, check out our [Authorization API Docs](https://docs.userclouds.com/reference/post_authz-objects).
29+
For more information on the APIs for Authorization, check out our [Authorization API Docs](/reference/post_authz-objects).

content/docs/(authorization)/how-to-guides/3-run-permissions-checks.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ hidden: false
66
createdAt: "Thu Aug 03 2023 23:22:50 GMT+0000 (Coordinated Universal Time)"
77
updatedAt: "Thu Jun 06 2024 17:25:04 GMT+0000 (Coordinated Universal Time)"
88
---
9-
Once you have populated UserClouds with your types, objects and edges, UserClouds is ready to be the source-of-truth for permissions. To implement <Glossary>permission</Glossary>s in your system, all you need to do is add UserClouds's [Permission Check APIs](https://docs.userclouds.com/reference/get_authz-checkattribute) in the appropriate places in your software.
9+
Once you have populated UserClouds with your types, objects and edges, UserClouds is ready to be the source-of-truth for permissions. To implement <Glossary>permission</Glossary>s in your system, all you need to do is add UserClouds's [Permission Check APIs](/reference/get_authz-checkattribute) in the appropriate places in your software.
1010

1111
- **CheckAttribute** answers the question: does user X have permission Y on object Z?
1212
- **ListAttributes** receives a source object ID and target object ID. It returns a list of attributes that the source object has on the target object.

content/docs/(authorization)/illustrative-examples/b2b2c-marketplace.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ hidden: false
66
createdAt: "Wed Nov 22 2023 20:16:42 GMT+0000 (Coordinated Universal Time)"
77
updatedAt: "Wed Jun 19 2024 16:57:24 GMT+0000 (Coordinated Universal Time)"
88
---
9-
This article explains how to design a graph-based authorization model for a B2B2C marketplace. The article assumes you are familiar with our [Key Concepts](https://docs.userclouds.com/docs/key-concepts-1) and [Attribute Scopes](https://docs.userclouds.com/docs/modelling-hierarchy-with-attribute-types).
9+
This article explains how to design a graph-based authorization model for a B2B2C marketplace. The article assumes you are familiar with our [Key Concepts](/docs/key-concepts-1) and [Attribute Scopes](/docs/modelling-hierarchy-with-attribute-types).
1010

1111
There are four steps to design a model:
1212

content/docs/(authorization)/illustrative-examples/edtech-platform.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ hidden: false
66
createdAt: "Thu Aug 03 2023 23:30:24 GMT+0000 (Coordinated Universal Time)"
77
updatedAt: "Wed Jun 19 2024 16:57:02 GMT+0000 (Coordinated Universal Time)"
88
---
9-
This article explains how to design a graph-based authorization model for Slack. The article assumes you are familiar with our [Key Concepts](https://docs.userclouds.com/docs/key-concepts-1) and [Attribute Scopes](https://docs.userclouds.com/docs/modelling-hierarchy-with-attribute-types).
9+
This article explains how to design a graph-based authorization model for Slack. The article assumes you are familiar with our [Key Concepts](/docs/key-concepts-1) and [Attribute Scopes](/docs/modelling-hierarchy-with-attribute-types).
1010

1111
There are four steps to design a model:
1212

content/docs/(authorization)/illustrative-examples/slack.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ hidden: false
66
createdAt: "Thu Aug 03 2023 23:29:52 GMT+0000 (Coordinated Universal Time)"
77
updatedAt: "Thu Feb 06 2025 05:14:29 GMT+0000 (Coordinated Universal Time)"
88
---
9-
This article explains how to design a graph-based authorization model for Slack. The article assumes you are familiar with our [Key Concepts](https://docs.userclouds.com/docs/key-concepts-1) and [Attribute Scopes](https://docs.userclouds.com/docs/modelling-hierarchy-with-attribute-types#attribute-types).
9+
This article explains how to design a graph-based authorization model for Slack. The article assumes you are familiar with our [Key Concepts](/docs/key-concepts-1) and [Attribute Scopes](/docs/modelling-hierarchy-with-attribute-types#attribute-types).
1010

1111
There are four steps to design a model:
1212

content/docs/(data-access)/definitions/access-policies.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ Access Policies are executed in three places in UserClouds:
1818

1919
In addition, two special types of access policies are available:
2020

21-
- **Column Default Access Policies**: These policies are associated with specific columns and are applied by default to all reads that extract data from those columns. They ensure consistent application of access rules for sensitive data, such as automatically applying a role check to the SSN column. They can be overridden for individual accessors. Learn more [here](https://docs.userclouds.com/docs/protect-a-column-with-defaults).
22-
- **Global Baseline Access Policies**: These policies are applied by default to all reads, providing a consistent security baseline. For example, a global policy might always require a valid token or restrict access to trusted IP addresses. They cannot be overridden. Learn more [here](https://docs.userclouds.com/docs/apply-global-protection-policies).
21+
- **Column Default Access Policies**: These policies are associated with specific columns and are applied by default to all reads that extract data from those columns. They ensure consistent application of access rules for sensitive data, such as automatically applying a role check to the SSN column. They can be overridden for individual accessors. Learn more [here](/docs/protect-a-column-with-defaults).
22+
- **Global Baseline Access Policies**: These policies are applied by default to all reads, providing a consistent security baseline. For example, a global policy might always require a valid token or restrict access to trusted IP addresses. They cannot be overridden. Learn more [here](/docs/apply-global-protection-policies).
2323

2424
Access policies provide central, fine-grained control over sensitive data access. They can evaluate purpose, identity, authorization, location, , and more. They can range from simple "always allow resolution" policies to complex evaluations.
2525

@@ -190,7 +190,7 @@ const params = {}; // No specific parameters needed for this example
190190

191191
## checkAttribute
192192

193-
The `checkAttribute` function runs a permission check against the UserClouds authorization graph. If you are using UserClouds for authorization as a service, this can verify if a user has the necessary permissions. In short, it asks whether a given object (usually a user) has an attribute (e.g. "can-read" or "is-admin") on another object (which could be just about any entity in your system). You can read more about this in the [Authorization Documentation](https://docs.userclouds.com/reference/get_authz-checkattribute).
193+
The `checkAttribute` function runs a permission check against the UserClouds authorization graph. If you are using UserClouds for authorization as a service, this can verify if a user has the necessary permissions. In short, it asks whether a given object (usually a user) has an attribute (e.g. "can-read" or "is-admin") on another object (which could be just about any entity in your system). You can read more about this in the [Authorization Documentation](/reference/get_authz-checkattribute).
194194

195195
### Example
196196

@@ -232,7 +232,7 @@ function policy(context, params) {
232232

233233
UserClouds has several built-in access policies for common use cases, like role-based and time-based expiration of data. However you can also create custom policies, in two ways:
234234

235-
- Call the [CreateAccessPolicy API](https://docs.userclouds.com/reference/post_tokenizer-policies-access)
235+
- Call the [CreateAccessPolicy API](/reference/post_tokenizer-policies-access)
236236
- Compose a new policy from existing policies and parametrizable templates in the UserClouds Console
237237

238238
To learn more about creating access policies, see our How to Guide on Creating Access Policies.

content/docs/(data-access)/definitions/accessors-read-apis.mdx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Accessors are configurable APIs that allow a client to retrieve data from the us
1212

1313
As an example of data minimization, you might configure an accessor called `GetPhoneCountryCodeForAnalytics` that returns the country code of a user's phone number when called, instead of the raw phone number. This reduces the sensitivity of the data outside your store, minimizing your surface area for an attack and simplifying compliance.
1414

15-
Accessors can be configured to access either live or soft-deleted data. Soft-deleted data is data that has been deleted but is temporarily retained for a narrow set of purposes, e.g. fraud investigations. See [Data Lifecycle](https://docs.userclouds.com/docs/data-lifecycle) for more details.
15+
Accessors can be configured to access either live or soft-deleted data. Soft-deleted data is data that has been deleted but is temporarily retained for a narrow set of purposes, e.g. fraud investigations. See [Data Lifecycle](/docs/data-lifecycle) for more details.
1616

1717
## What Accessors Do
1818

@@ -23,11 +23,11 @@ Accessors can be configured to access either live or soft-deleted data. Soft-del
2323
1. Data, <Glossary>consent</Glossary>s and <Glossary>purpose</Glossary>s are stored inside the safety layer boundary (either in UserClouds User Store or an owned-and-operated database like RDS)
2424
2. Data consumers request access by sending context, like purpose or identity, to a use-case specific <Glossary>accessor</Glossary> API
2525
3. Several access policies are evaluated for each user record, using the data passed in <Glossary>context</Glossary> and data in the user object:
26-
1. **Global baseline policy for accessors**: Applied to ensure baseline security. Learn more [here](https://docs.userclouds.com/docs/apply-global-protection-policies).
27-
2. **Column-default access policies**: Column default policies for all columns accessed by the accessor are applied, unless overridden. Learn more [here](https://docs.userclouds.com/docs/protect-a-column-with-defaults).
26+
1. **Global baseline policy for accessors**: Applied to ensure baseline security. Learn more [here](/docs/apply-global-protection-policies).
27+
2. **Column-default access policies**: Column default policies for all columns accessed by the accessor are applied, unless overridden. Learn more [here](/docs/protect-a-column-with-defaults).
2828
3. **Accessor-specific access policy composition**: Applied in addition to the above policies.
2929
4. User data is further filtered according to whether the users have consented to the accessor's data processing purpose.
30-
5. For records where access is granted, the accessor's <Glossary>data transformer</Glossary>s transform each column of the outbound data, minimizing the data for the given use case. If no transformer is specified for a given column, the column's default transformer is used. Learn more [here](https://docs.userclouds.com/docs/protect-a-column-with-defaults).
30+
5. For records where access is granted, the accessor's <Glossary>data transformer</Glossary>s transform each column of the outbound data, minimizing the data for the given use case. If no transformer is specified for a given column, the column's default transformer is used. Learn more [here](/docs/protect-a-column-with-defaults).
3131

3232
## Structure of an Accessor
3333

@@ -36,12 +36,12 @@ At creation time, each accessor is associated with a user record <Glossary>selec
3636
- The user record <Glossary>selector</Glossary> is a SQL-like clause that specifies which records the accessor should return data for, based on an array of values that are passed at execution time. The accessor's response will only include users that have consented to the accessor's purpose for all non-<Glossary>system column</Glossary>s used in the selector. Since UserClouds does not store consents for <Glossary>system column</Glossary>s, they can be referenced in the selector regardless of accessor purpose / user consents.
3737
- The columns indicate which data fields the accessor will retrieve.
3838
- Each column is associated with a transformer, which tokenizes, minimizes or otherwise obscures the outbound data from that column.
39-
- The purpose is selected from your company's list of data processing purposes. This indicates what the accessor will be used for, e.g. marketing. The accessor will run a <Glossary>purpose check</Glossary>, filtering out user records and data for which the user has not consented to the specified purpose across all columns. The accessor's response will only include users that have consented to the accessor's purpose for all columns being retrieved, and all non-system columns used in the selector. Learn more [here](https://docs.userclouds.com/docs/purpose-and-consent).
39+
- The purpose is selected from your company's list of data processing purposes. This indicates what the accessor will be used for, e.g. marketing. The accessor will run a <Glossary>purpose check</Glossary>, filtering out user records and data for which the user has not consented to the specified purpose across all columns. The accessor's response will only include users that have consented to the accessor's purpose for all columns being retrieved, and all non-system columns used in the selector. Learn more [here](/docs/purpose-and-consent).
4040
- The access policy determines the circumstances in which the data can be retrieved. Access policies run on each user record and filter out user records which fail the access policy.
4141

4242
## Learn More
4343

4444
For more info on accessors, see:
4545

46-
- [Creating an accessor](https://docs.userclouds.com/docs/create-an-accessor)
47-
- [Executing an accessor](https://docs.userclouds.com/reference/post_userstore-api-accessors)
46+
- [Creating an accessor](/docs/create-an-accessor)
47+
- [Executing an accessor](/reference/post_userstore-api-accessors)

content/docs/(data-access)/definitions/index.mdx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ updatedAt: "Fri Apr 05 2024 22:17:29 GMT+0000 (Coordinated Universal Time)"
88
---
99
This section is designed to give you a deep understanding of the core concepts in UserClouds Safety Layer:
1010

11-
- [Access Policies](https://docs.userclouds.com/docs/access-policies) control the circumstances in which data can be accessed or edited
12-
- [Data Transformers](https://docs.userclouds.com/docs/transformers) allow you to manipulate and minimize data
13-
- [Selectors](https://docs.userclouds.com/docs/selectors) are SQL-like clauses that specify which records to retrieve or edit
14-
- [Accessors](https://docs.userclouds.com/docs/accessors-read-apis) are custom read APIs that allow a client to retrieve data from User Store
15-
- [Mutators](https://docs.userclouds.com/docs/mutators-write-apis) are custom write APIs that allow a client to send data to User Store
11+
- [Access Policies](/docs/access-policies) control the circumstances in which data can be accessed or edited
12+
- [Data Transformers](/docs/transformers) allow you to manipulate and minimize data
13+
- [Selectors](/docs/selectors) are SQL-like clauses that specify which records to retrieve or edit
14+
- [Accessors](/docs/accessors-read-apis) are custom read APIs that allow a client to retrieve data from User Store
15+
- [Mutators](/docs/mutators-write-apis) are custom write APIs that allow a client to send data to User Store
1616

1717
Click the link below to begin.

0 commit comments

Comments
 (0)