blob: 3fbb6239fec26b79d1a58dd12bea0247400f4de9 [file] [log] [blame]
// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Schema to store user's long lived credentials from different Identity
// Providers.
namespace modular;
namespace auth;
// List of supported identity providers.
enum IdentityProvider : byte { GOOGLE }
// IdpCredential is used to store refresh token from each identity provider
// after user's consent.
table IdpCredential {
identity_provider: IdentityProvider;
refresh_token: string;
}
// UserCredential stores a list of authentication credentials from various
// identity providers for each unique user.
table UserCredential {
account_id: string;
tokens: [IdpCredential];
}
// Stores authentication credentials for all users.
table CredentialStore {
creds: [UserCredential];
}
root_type CredentialStore;