Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: split apart Cedarling Docs into Multiple Pages #9670

Merged
merged 4 commits into from
Oct 8, 2024

Conversation

nynymike
Copy link
Contributor

@nynymike nynymike commented Oct 6, 2024

Prepare


Description

Target issue

#8831

Implementation Details

Split apart the Cedarling docs into multiple pages


Test and Document the changes

  • Static code analysis has been run locally and issues have been fixed
  • Relevant unit and integration tests have been added/updated
  • Relevant documentation has been updated if any (i.e. user guides, installation and configuration guides, technical design docs etc)

Please check the below before submitting your PR. The PR will not be merged if there are no commits that start with docs: to indicate documentation changes or if the below checklist is not selected.

  • I confirm that there is no impact on the docs due to the code changes in this PR.

Closes #9671,

Copy link

dryrunsecurity bot commented Oct 6, 2024

DryRun Security Summary

The pull request updates the documentation for the Cedarling, an embeddable, stateful Policy Decision Point (PDP) built on top of the Cedar policy syntax, focusing on its security features such as centralized log management, fine-grained access control, secure JWT-based authorization, robust JWT validation, secure policy store, and comprehensive monitoring and logging.

Expand for full summary

Summary:

The code changes in this pull request are primarily focused on updating the documentation for the Cedarling, an embeddable, stateful Policy Decision Point (PDP) built on top of the Cedar policy syntax. The changes introduce various aspects of the Cedarling system, including its logging options, authorization process, JWT-based identity management, policy store, and configuration properties.

From an application security perspective, the key highlights are:

  1. Centralized Log Management: The introduction of the lock logging option, which sends logs to the Jans Lock Server, provides benefits such as improved compliance, forensics, scalability, reliability, and security.
  2. Fine-Grained Access Control: The Cedarling enables the implementation of fine-grained access control policies using the PARC (Principal, Action, Resource, Context) syntax of Cedar, which is a positive security feature.
  3. Secure JWT-based Authorization: The Cedarling uses cryptographically signed JSON Web Tokens (JWTs) for authorization, which is a secure approach to passing authorization-related information.
  4. Robust JWT Validation: The Cedarling can validate the signatures of incoming JWTs, check their revocation status, and perform various other token validation checks, helping to mitigate the risks of token-based attacks.
  5. Secure Policy Store: The Cedarling Policy Store contains sensitive information that should be stored and transmitted securely, and the policy and schema authoring process should be thoroughly reviewed for security.
  6. Comprehensive Monitoring and Logging: The Cedarling application has features for audit logging, health monitoring, and telemetry transmission, which can be valuable for security monitoring and incident response.

Overall, the changes in this pull request appear to be well-designed and focused on enhancing the security features and documentation of the Cedarling system, which is an important component for implementing fine-grained access control and authorization in modern, distributed applications.

Files Changed:

  1. docs/cedarling/cedarling-logs.md: Introduces the different logging options available in Cedarling, including the lock mode for centralized log management.
  2. docs/cedarling/cedarling-authz.md: Explains the authorization process using the Cedarling component, highlighting the use of ABAC, RBAC, JWT-based authorization, and context-based policies.
  3. docs/cedarling/cedarling-overview.md: Provides an overview of the Cedarling, emphasizing its fine-grained access control, frontend and backend security, JWT-based identity, and extensible architecture.
  4. docs/cedarling/cedarling-jwt.md: Introduces the Cedarling's JWT validation, revocation checking, and various token validation checks.
  5. docs/cedarling/cedarling-policy-store.md: Describes the Cedarling Policy Store, which contains sensitive information that should be stored and transmitted securely.
  6. mkdocs.yml: Updates the navigation structure of the Janssen Project documentation, adding new pages for various Cedarling-related topics.
  7. docs/cedarling/cedarling-properties.md: Outlines the configuration properties of the Cedarling application, including settings for JWT validation, audience validation, role mapping, and Lock Server integration.

Code Analysis

We ran 9 analyzers against 15 files and 0 analyzers had findings. 9 analyzers had no findings.

Riskiness

🟢 Risk threshold not exceeded.

View PR in the DryRun Dashboard.

@mo-auto
Copy link
Member

mo-auto commented Oct 6, 2024

Error: Hi @nynymike, You did not reference an open issue in your PR. I attempted to create an issue for you.
Please update that issues' title and body and make sure I correctly referenced it in the above PRs body.

@mo-auto mo-auto mentioned this pull request Oct 6, 2024
@nynymike nynymike changed the title docs: docs: Split apart Cedarling Docs into Multiple Pages Oct 7, 2024
@ossdhaval
Copy link
Contributor

Hi @nynymike

I reviewed the changes. I see few changes that need to be made with respect to format and structure. For example, few docs are missing tags, at some places the title is ### (should be #).

Let me know once you are writing the content, I'll make these changes in one go.

@moabu moabu changed the title docs: Split apart Cedarling Docs into Multiple Pages docs: split apart Cedarling Docs into Multiple Pages Oct 8, 2024
moabu and others added 2 commits October 8, 2024 06:09
Signed-off-by: ossdhaval <343411+ossdhaval@users.noreply.github.com>
@ossdhaval ossdhaval enabled auto-merge (squash) October 8, 2024 06:53
@ossdhaval ossdhaval merged commit 91b6874 into main Oct 8, 2024
11 checks passed
@ossdhaval ossdhaval deleted the mike-cedarling-docs-08 branch October 8, 2024 06:55
yuriyz pushed a commit that referenced this pull request Nov 7, 2024
* docs: Updated Cedarling Docs

* docs: Updated Mkdocs Navidation

* docs: proofreading changes

Signed-off-by: ossdhaval <343411+ossdhaval@users.noreply.github.com>

---------

Signed-off-by: ossdhaval <343411+ossdhaval@users.noreply.github.com>
Co-authored-by: Mohammad Abudayyeh <47318409+moabu@users.noreply.github.com>
Co-authored-by: ossdhaval <343411+ossdhaval@users.noreply.github.com>
Former-commit-id: 91b6874
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

fix: docs: -autocreated
4 participants