
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
blockdemy-sso
Advanced tools
Official Blockdemy's Single Sign On Client
Blockdemy SSO is a client that allows to communicate and get user data from our Single Sign On Service
Run the following command to install Blockdemy SSO client
$ yarn add blockdemy-sso
In order to start using the sso client, it is needed to be instantiated using the following code
import BlockdemySSO from 'blockdemy-sso'
// SSO_URL is the SSO API Url.
// It can be changed to use on development with a localhost url
const SSO_URL = 'https://api.id.blockdemy.com'
const API_KEY = '<API_KEY>'
const SingleSignOn = new BlockdemySSO(API_KEY, SSO_URL);
// Examples
const start = async () => {
const user = await SingleSignOn.getUserById(/* Valid user id */);
// Use user here
}
In order to use the mongoose plugin to autopopulate users using their ssoId, you just need to add the following into your user schema:
import SingleSignOn from 'path/to/your/blockdemy-sso/instance';
const UserSchema = new Schema({
/* ... */
ssoId: { type: Schema.Types.ObjectId }
/* ... */
});
UserSchema.plugin(SingleSignOn.populateUsers);
Every method corresponds with the GraphQL API query endpoint with the same name They can be checked at our Blockdemy SSO Playground
Method | params | returns | Description |
---|---|---|---|
usersById(ids) | ids: Array[String] | Array[Object] | Recover the list of users given valid ids |
user(id) | id: String | Object | Recover user given a valid id |
userFromToken(token) | token: String | Object | Recover user given a jwt token |
userByUsername(username) | username: String | Object | Recover user given a valid username |
userByAddress(address) | address: String | Object | Retrieve the user that owns an ethereum address |
usernameExists(username) | username: String | Boolean | Indicates if an username has been taken |
userEmailExists(email) | email: String | Boolean | Indicates if an email has been taken and verified |
userHasEthAddress(userId, address) | userId: String, address: String | Boolean | Indicates if an specific user owns an ethereum address |
userEthAddressExists(address) | address: String | Boolean | Indicates if an ethereum address has been taken before |
userSearch(query, filters, params) | query: Object, filters: Object, params: Object | Array[Object] | Recover a list of users given valid filters and parameters for search |
organization(id) | id: String | Object | Recover organization given a valid id |
organizationByIdentifier(identifier) | identifier: String | Object | Recover organization given a valid identifier |
organizationsByIds(ids) | ids: Array[String] | Array[Object] | Recover the list of organizations given valid ids |
Method | params | returns | Description |
---|---|---|---|
userEdit(userId, user) | userId: String, user: Object | Object | Edit user data and retrieves the new user |
userAddEthAddress(userId, user) | userId: String, address: String, signature: String | Object | Add ethereum address validated with a signature to user |
userEditPassword(userId, newPassword, oldPassword) | userId: String, newPassword: String, oldPassword: String | Object | Change password tu user using its last password to validate |
This project is licensed under the MIT License
FAQs
A client to handle blockdemy single sign on communication
The npm package blockdemy-sso receives a total of 2 weekly downloads. As such, blockdemy-sso popularity was classified as not popular.
We found that blockdemy-sso demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.