Skip to content

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 coming soon: 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.

Installation

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.

Installation

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.

Installation