Giter Club home page Giter Club logo

sawtooth-next-directory's Introduction

logo

Hyperledger Sawtooth NEXT Identity Platform

This repo contains multiple components which together with a Hyperledger Sawtooth validator, will comprise the "blockchain" components of the NEXT Identity Platform project. The components include:

  • a server which provides a REST API for querying blockchain data
  • a transaction processor which handles RBAC-specific transaction logic
  • a ledger sync which writes blockchain state changes to a local database

Usage

The easiest way to run these components is with Docker. To start these components, first install Docker for your platform and clone this repo.

Next, create a server/config.py file based off the example at server/config.py.example. Pay special attention to the secret keys at the bottom of the example file. While other settings have defaults and can be omitted, these keys have no defaults and must be provided to run the server. The examples listed are insecure, and should be replaced before deployment.

Once there is a config file in place, you can simply run:

docker-compose up

This will build all components, start them in individual Docker containers, and download and run the necessary Sawtooth components. Once complete, the REST API will be available at http://localhost:8000.

Later, if the repo is updated, the local components will need to be rebuilt, which can be accomplished using the --build flag:

docker-compose up --build

Once all the docker containers are running without error, see ui/readme.md for configuring / running the UI server.

Development

Docker containers are also available for developers, and are marked with a -dev tag in their filename. There are a few differences between how these containers work compared to the defaults:

  • they do not need to be rebuilt when local files change
  • Protobuf files will need to be built locally
  • some dependencies may need to be installed locally*
  • a Sawtooth shell container is included for testing
  • Sawtooth's blockchain REST API will be available at http://localhost:8080
  • Rethink's database admin panel will be available at http://localhost:9090

To start the dev containers, from the root project directory run:

bin/build -p
docker-compose -f docker-compose-dev.yaml up

* Dependencies that may need to be locally installed include Sawtooth dependencies like thesawtooth_sdk, as well as some pip3 modules.

Testing

Tests can be run using the run_docker_test script, with the desired docker-compose file as an argument. For example:

bin/run_docker_test integration_tests/blockchain/docker-compose.yaml
bin/run_docker_test integration_tests/api/docker-compose.yaml

License

Hyperledger Sawtooth NEXT Identity Platform software is licensed under the Apache License Version 2.0 software license.

sawtooth-next-directory's People

Contributors

dplumb94 avatar agoldingay avatar chrisspanton avatar mtn217 avatar grkvlt avatar cianx avatar scealiontach avatar kthblmfld avatar yunhangc avatar ghowlett avatar ryjones avatar ncriss avatar devsatishm avatar delventhalz avatar

Watchers

 avatar

sawtooth-next-directory's Issues

[User Story] Batch Approval

User Story Batch Approval, Approval configuration
Epic Title Approval configuration
User Story Title Batch approval
T-shirt size: S(mall), M(edium), L(arge) TBD
Story Points - Fibonacci (1,2,3,5,8,13) TBD
User Story As a NEXT user, I want to approve or disapprove multiple application/system requests in one session so I don't have to retrieve each request one at a time.
Description Ability to approve requests in a batch
Business Need (the why): Approval engine feature. Built in intelligence in the engine.
Details All the details needed to accomplish the story. Tasks - can be linked
Additional User Story all approval types in scope: expiration, re-authorization of access, new access
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions all entities in the requests exist in their respective apps/systems
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Permanent Delegation

User Story, Epic Permanent Delegation, Delegation
Epic Title Delegation
User Story Title Permanent Delegation
T-shirt size: S(mall), M(edium), L(arge) TBD
Story Points - Fibonacci (1,2,3,5,8,13) TBD
User Story As a NEXT user, I want to designate a permanent proxy who can review and approve/disapprove application/system access on my behalf
Description A short description
Business Need (the why): from epic, if needed
Details All the details needed to accomplish the story. Tasks - can be linked
Additional User Story linked
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Expiration of Access

User Story Expiration of Access
Task TBD
Epic Title
User Story Title Expiration of Access
T-shirt size: S(mall), M(edium), L(arge) TBD
Story Points - Fibonacci (1,2,3,5,8,13) TBD
User Story "As a manager, app/system access for my direct reports to expire automatically as per policy so I don't have to manually expire each person's permission"
Description Role entitlements may be set to expire after owner-defined period as per policy
Business Need (the why): mgr and group owner has to approve it. Go to multi-party approval. build configurable access so it's intelligence and has logic
Details All the details needed to accomplish the story. Tasks - can be linked
Additional User Story linked
Acceptance Criteria/Tests _The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests_
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Hierarchy Approval, Approval Configuration

User Story Hierarchical Approval, Approval configuration
Task Hierarchical approval type
Epic Title Approval Configuration
User Story Title Hierarchy Approval
T-shirt size: S(mall), M(edium), L(arge)
Story Points - Fibonacci (1,2,3,5,8,13)
User Story "As a manager, I want application/system access requests to automatically escalate to my manager while I'm out of the office to prevent approval delays"
Description Technology allowing approvals to automatically advance up the organizational chart.
Business Need (the why): from epic, if needed
Details group under Delegation Config e.g. if a mgr is OOO/PTO, then system automatically escalates to the next up in the hierarchy. Should be codified in the back end.
Additional User Story linked if needed
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies_
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Approval Type, Multi-party approval, Approval Configuration

[Task] [User Story] [Epic] Approval Type, Multi-party approval, Approval configuration
Task Approval Type
Epic Title Approval configuration
User Story Title Multi-party approval
T-shirt Size M (edium)
Story Points 8
Statement As a user of NEXT, I want to define the eligible roles so I can enable multi-party approvals
Description
Business Need (the why): multi-party approval functionality
Details Define roles
Additional User Story
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed at least from a Rally perspective. It may still need UAT or SIT / integration testing with other stories.
Failure if any
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note an such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Short-Term Delegation

User Story Short-term delegation, Delegation
Epic Title Delegation
User Story Title Short-term delegation
T-shirt size: S(mall), M(edium), L(arge) M
Story Points - Fibonacci (1,2,3,5,8,13) 8
User Story As a NEXT user, I want to designate a proxy who can review and approve/disapprove application/system access for a defined period.
Description e.g. if manager on vacation, allow manager ability to assign for a limited time a specific person who can approve/disapprove. Ensure assignee is allowed per policy.
Business Need (the why): allows for no delays in access request in the event a NEXT user is out of office, on medical leave, vacation, etc.
Details All the details needed to accomplish the story. Tasks - can be linked
Additional User Story linked
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure designated proxy doesn't receive requests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[Epic] Active Directory Integration

Epic Active Directory Integration
Task TBD
Epic Title Active Directory Integration
User Story Title (2) NEXT to Azure Active Directory (cloud) integration and NEXT to Active Directory on-prem
T-shirt size: S(mall), M(edium), L(arge) TBD
Story Points - Fibonacci (1,2,3,5,8,13) TBD
User Story As a NEXT user I want to manage my app/system access requests through one streamlined user interface so I don't sign into multiple AD platforms using multiple logins
Description A short description
Business Need (the why): Integration between NEXT and Active Directory (Cloud and on-prem). (NEXT Integration Engine)
Details Collaboration w/MS and Intel teams
Additional User Story linked
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies configuration 2 NEXT integrations
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

[User Story] Re-Authorization of Access

User Story Re-Authorization of Access
Task TBD
Epic Title
User Story Title Re-Authorization of Access
T-shirt size: S(mall), M(edium), L(arge) TBD
Story Points - Fibonacci (1,2,3,5,8,13) TBD
User Story "As a manager I want to extend app/system access for my direct reports whose access are set to expire per policy without having to manually manage each pending expiration."
Description Re-Authorization process for continuation of access after expiration per policy.
Business Need (the why): dependency on Expiration of access. If groups of Rebellion that have hundreds of devs. Make the approval consumable to the user. A list?
Details All the details needed to accomplish the story. Tasks - can be linked
Additional User Story Expiration of Access must occur prior to this user story
Acceptance Criteria/Tests The list of tests or criteria to be used to validate the story has been completed. May still need UAT or SIT / integration testing with other stories.
Failure if any, fold in negative tests
Definition of Done e.g.Passes all regression tests, Passes testing per acceptance criteria, Approved by UI team, Able to show feature in demo
UX/UI Details and/or mockups if UI change, a mockup or description of what to change, attach image/file
Applications or Systems impacted upstream/downstream applications/systems
Dependencies non story dependencies
Assumptions if any
Performance Considerations Will the work performed as part of this story impact system performance. If there is potential for a performance hit, where would you expect it to manifest in the system.
Security Considerations E.g., does this story involve working with Personal Identifying Information (PII)? Note any such security sensitive aspects.
QA Considerations what might be hard to test or test setup criteria
Acrhitectural/System or Component Impacts if we're adding something new or significantly changing architecture flag for architect review
Reverse Engineering Required to document areas not known well by dev team
Questions/Clarifications Create new issue (add label: question) in this repo and link to this issue

TEST- Issue [Archive on board]

Task e.g. Define Approval Types
Task Title e.g. Approval Types
User Story link associated User Story for this task
Epic link associated Epic, if applicable
T-shirt size default is S(mall) S
Story Points - Fibonacci (1,2,3,5) ensure the sum of the story points do not exceed the User Story
Description A short description
Business Need (the why): how does this task tie into the user story
Applications or Systems impacted
Dependencies if certain tasks must be done in a certain order, note here
Assumptions if any

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.