Authentication¶
This guide will help you set up authentication so your users can perform writes. Authentication is not needed if you are only querying streams.
Requirements¶
Authentication requires having installed a Ceramic client. Your client should include the DID Resolver(s) for the DID method(s) you will use for authentication.
1. Choose a DID method¶
The first step in adding authentication to your project is choosing which DID method to use for authentication.
3ID DID Method: A powerful DID method that supports multiple keys, key rotations, and revocations
Key DID Method: A lightweight DID method that only supports one key and cannot handle rotations
NFT DID Method: A lightweight DID method with permissions that change based on on-chain NFT asset ownership
Safe DID Method coming soon: A lightweight DID method with permissions that change based on on-chain Gnosis Safe contract permissions
It is recommended that most applications use the 3ID DID Method.
2. Install a DID Provider¶
After choosing a DID method, install a DID provider for that method.
3ID DID Providers¶
3ID Connect¶
3ID Connect is the most popular 3ID DID Provider for Ceramic web apps. The 3ID Connect SDK allows users to authenticate a 3ID DID using their existing blockchain wallets without needing to install any additional software. Developers do not need to worry about DID key management for their users.
Recommended for most browser applications.
3ID DID Provider¶
3ID DID Provider is a low-level JavaScript 3ID DID Provider. Your application is responsible for key management, and users need to authenticate with a DID seed or an auth secret.
Key DID Providers¶
Key DID Provider Ed25519¶
Key DID Provider Ed25519 is a low-level JavaScript Key DID Provider for use with Ed25519
key pairs. Your application is responsible for key managemet, and users need to authenticate with a DID seed.