GithubHelp home page GithubHelp logo

sambit003 / keyshade-contrib Goto Github PK

View Code? Open in Web Editor NEW

This project forked from keyshade-xyz/keyshade

0.0 0.0 0.0 10.88 MB

Realtime secret and configuration management tool, with the best in class security and seamless integration support

Home Page: https://keyshade.xyz

License: Mozilla Public License 2.0

Shell 0.03% JavaScript 1.01% TypeScript 97.47% CSS 0.07% PLpgSQL 1.23% Dockerfile 0.20%

keyshade-contrib's Introduction

thumb


WebsiteDocumentationJoin our CommunityTwitter LinkedIn

keyshade.xyz Discord

keyshade - Manage all your secrets securely | Product Hunt


keyshade is designed to simplify the integration of your secrets and variables into your codebase. We prioritize the security of your data by leveraging the power of Public Key Encryption empowered by Elliptic Curve Cryptography for storing and transferring your secrets to your runtime environment in realtime.

With keyshade, managing your configurations becomes a breeze while ensuring their security.

Why keyshade?

Any application that you host on a cloud provider would need access to configurations. These configurations help you to access other APIs or perform internal actions. You would generally be managing this from the dashboard of your project in the cloud provider. However, this comes with a few caveats:

  • Security: Cloud providers store your sensitive data in plaintext, or decipherable hashes. This means that anyone with access to your cloud provider's dashboard can view your secrets.

  • Access Control: Cloud providers don't give you the ability to control who can access your secrets. This becomes a problem since you might not want everyone to have access to everything.

  • Maintainability: As the application grows, you'll need to add more secrets. This means that you'll have to update your secrets in multiple places, manually.

  • Need to restart: Secrets are generally configured as environmental variables, which means that you'll need to restart your application to update them.

  • Collaboration: Collaboration is hard. You'll need to share your secrets with your team members, which means that you'll have to share your cloud provider's credentials with them. Worse, you will be sending them over insecure channels such as email, or your communication platform.

This is where keyshade comes in. We intend to solve these shortcomings by providing you with a simple, secure, and easy-to-use solution for managing your secrets.

Features

Our goal is to enable you to manage your secrets effortlessly. We don't want to bog you down with unnecessary details or complexity, and only want you to focus on building your application. Here's how we do it:

  • Security: We use Public Key Encryption to encrypt your secrets. This means that your secrets are encrypted at rest and in transit. This makes it mathematically impossible for anyone to decrypt your secrets without your private key. The best part of this approach is, any of your team member can use the secrets in your runtime environment without having to know your private key.

  • Live Updates: Whenever you make any changes to your secrets, they're automatically updated in your runtime environment. This means that you don't have to restart your application to update your secrets.

  • Multiple Environments: We allow you to create multiple environments for your application. This feature enables you to manage your secrets for different environments such as development, staging, and production separately, and reference them in your codebase.

  • Object Values: You can store your secrets as JSON like objects. This gives you the ability to group similar secrets together.

  • Secret and variable versioning: We maintain a history of all your secrets. This means that you can easily revert to an older version of your configuration if you need to.

  • Secret Rotation: We allow you to rotate your secrets regularly. This means that you can update your secrets without having to update your application.

  • Workspaces and projects: Managing your data in a clean and efficient goes a long way in improving your productivity. We allow you to organize your secrets into workspaces and projects. This gives you the ability to share your secrets with your team members easily.

  • Access Control: You are the owner of your secrets. This means that you have complete control over who can access your secrets. You can share your secrets with your team members by adding them to your workspace.

  • Custom Roles: We allow you to create custom roles for your team members. This will allow you to fine tune your control over who gets to do what.

  • Event tracking: For every event that happens, we maintain an in detailed log of what happened, accounting for who did what and when.

  • Auditing and anomaly detection: Our robots are continuously monitoring access to your secrets and variables. With the power of AI, it becomes near to impossible to breach your data.

  • Integrations: Our vast library of integration allows you to use keyshade with your favorite tools and platforms.

Architecture

The following few diagrams try to explain the architecture of keyshade.

Control Flow

Control Flow

Hierarchical Structure

Hierarchical Structure

Behind the curtain

Projects

Projects

Creating secrets

Creating secrets

Retrieving secrets

Retrieving secrets

Setting things up

We maintain an in-detailed documentation about how to get started with keyshade. You can find it here.

Contributing

We welcome contributions from everyone. Please read our contributing guide to get started.

Contributors

keyshade-contrib's People

Contributors

rajdip-b avatar harshpatel5940 avatar srinjaydasgupta-git avatar kriptonian1 avatar sharmaudit124 avatar semantic-release-bot avatar ezhil56x avatar abbhiishek avatar ratnesh2003 avatar lakshay-saini-au8 avatar risv1 avatar subhajit1237 avatar doomdagadiggiedahdah avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.