-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Updated the 'Getting Started' guide to reflect changes in the setup and configuration process of SpiceDb in .NET projects. - Lowered the minimum required .NET version from 8 to 7. - Removed specific HTMX integration details, replaced with instructions on creating a client using the SpiceDb endpoint web address. - Expanded the 'Overview' section with detailed information about what is SpiceDb, its history, features, and how it distinguishes itself from other systems. - Added a new page titled 'Why SpiceDb?' explaining why developers should consider using this system for access control. It includes an example of a simple schema for document access control.
- Loading branch information
Showing
5 changed files
with
135 additions
and
46 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
--- | ||
title: "Why SpiceDb?" | ||
description: "" | ||
summary: "" | ||
date: 2024-04-12T12:50:41-04:00 | ||
lastmod: 2024-04-12T12:50:41-04:00 | ||
draft: false | ||
weight: 14 | ||
toc: true | ||
seo: | ||
title: "" # custom title (optional) | ||
description: "" # custom description (recommended) | ||
canonical: "" # custom canonical URL (optional) | ||
noindex: false # false (default) or true | ||
--- | ||
|
||
Zanzibar-inspired systems like SpiceDb offer an evolved approach to access control compared to traditional RBAC. These systems enable dynamic and granular permission management that adjusts in response to changes in user relationships and roles, and are driven by a configurable schema. | ||
|
||
This schema-driven flexibility allows your permission system to be tailored to your specific business needs without extensive coding. Instead of being locked into a rigid set of predefined roles, you can configure and modify your permissions model as your organizational structures or business rules change. This makes SpiceDb not only adaptable but also significantly reduces the overhead and complexity typically associated with modifying access control systems. | ||
|
||
Furthermore, SpiceDb’s approach to managing permissions at the level of individual relationships ensures that permissions are accurately represented and enforced, reducing management complexity and improving system performance in demanding environments. It also maintains consistent and auditable access controls across different services, reducing discrepancies and enhancing security without compromising scalability. | ||
|
||
For developers and businesses of any size, adopting SpiceDb means investing in a flexible and adaptable authorization mechanism that evolves efficiently with your business needs. | ||
|
||
Here is an example of a simple schema that could be used to allow access control to a document: | ||
|
||
``` | ||
/** user represents a registered user's account in our application */ | ||
definition user {} | ||
/** document represents a document with access control */ | ||
definition document { | ||
/** reader indicates that the user is a reader on the document */ | ||
relation reader: user | ||
/** writer indicates that the user is a writer on the document */ | ||
relation writer: user | ||
/** view indicates whether the user can view the document */ | ||
permission view = reader + writer | ||
} | ||
``` | ||
|
||
For more information on schema development, see [Developing a Schema](https://authzed.com/docs/spicedb/modeling/developing-a-schema) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters