@arcblock/did-agent-storage-nedb

Storage engine that uses nedb for agent-auth

Usage no npm install needed!

<script type="module">
  import arcblockDidAgentStorageNedb from 'https://cdn.skypack.dev/@arcblock/did-agent-storage-nedb';
</script>

README

@arcblock/did-agent-storage-nedb

styled with prettier

Storage engine that uses mongo to store data, implements interfaces defined in @arcblock/did-auth-storage.

Table of Contents

Install

npm install @arcblock/did-agent-storage-nedb
// or
yarn add @arcblock/did-agent-storage-nedb

Usage

const MongoStorage = require('@arcblock/did-agent-storage-nedb');

const storage = new MongoStorage({
  url: 'mongodb://localhost/forge-web-starter',
  collection: 'app-agent-authorizations',
});

(async () => {
  const agent = fromRandom(type);
  const authorizer = fromRandom(type);
  const authorizeId = authorizer.toAddress();

  const authorization = Jwt.sign(authorizeId, authorizer.secretKey, {
    sub: agent.toAddress(),
    ops: {
      profile: ['fullName', 'mobilePhone', 'mailingAddress'],
    },
  });

  const [, content, sig] = authorization.split('.');
  const item = await storage.create(authorizeId, {
    ownerDid: user.toAddress(),
    agentDid: agent.toAddress(),
    appDid: authorizeId,
    appPk: authorizer.publicKey,
    appName: 'ABT Wallet Demo',
    appDescription: 'Demo application to show the potential of ABT Wallet',
    appIcon: 'https://arcblock.oss-cn-beijing.aliyuncs.com/images/wallet-round.png',
    certificateContent: content,
    certificateSignature: sig,
  });
})();

Contributors

Name Website
wangshijun https://ocap.arcblock.io