Understanding parties in NPL
Learn how to work with parties in NPL to model multi-party interactions, manage authorization, and control access to protocols and their actions.
The specification of parties on protocols, how they are defined, how they interact across protocols, and their lifecycle is often referred to as the Party Model.
Prerequisites
- Be familiar with basic NPL concepts such as protocols, permissions, and states
- Have completed the Modeling a simple use-case in NPL guide
Learning outcomes
After completing this guide, you'll be able to:
- Understand what parties are and their role in NPL protocols
- Differentiate between party roles and party identities
- Work with party sets to represent multiple users in a single role
- Use claims to authenticate and authorize parties
- Test party-based permissions and access control
NPL & API threads
The series of tracks about understanding parties has two threads.
- Parties in NPL: NPL Developers focusing on NPL may gain knowledge about what parties are, how to build applications using parties, and segmenting access. All of it is possible while staying in NPL.
- Parties in the API: Interacting with a system using parties requires a different skillset and targets people integrating NPL with other components, such as frontends and other backend services.
Tracks are ordered such that someone interested in developing a full-stack application can consume them in order. Some tracks are also recommended for both NPL developers and NPL integrators.
Agenda
- Introduction to parties (NPL only, required for API thread)
- Party delegation (NPL only)
- Party assignment (API only)
- Party assignment automation (API only)