LogoLogo
  • Platform Overview
  • 🗺️Guides
    • Getting Started
    • Users
      • Integrate the User SDK
      • Registration
      • Authentication
      • SDK Releases
      • API Reference
    • Entitlements
      • Administrative API
        • Integrating the Administrative API
        • Entitlement Definitions
        • Managing Entitlements Sets
        • Managing Entitlements Sequences
        • Managing User Entitlements
        • API Schema
      • End-user API
        • Integrate the Entitlements SDK
        • Redeeming Entitlements
        • Retrieving Entitlements
        • SDK Releases
        • API Reference
    • Sudos
      • Integrate the Sudo Profiles SDK
      • Sudo Entitlements
      • Manage Sudos
      • SDK Releases
      • API Reference
    • Telephony
      • Integrate the Telephony SDK
      • Manage Phone Numbers
      • Text Messaging
      • Voice Calling
      • Telephony Simulator
      • SDK Releases
      • API Reference
    • Email
      • Integrate the Email SDK
      • Email Entitlements
      • Manage Email Addresses
      • Sending & Receiving Email
      • Manage Email Folders
      • Draft Email Messages
      • Manage Email Address Blocklists
      • Email Address Public Information
      • Pagination
      • Caching
      • Configuration Data
      • Email Notifications
      • SDK Releases
      • API Reference
    • Decentralized Identity
      • Edge Agent
        • Relay SDK
          • Integrate the Relay SDK
          • Relay Entitlements
          • Manage Relay Postboxes
          • Manage Relay Messages
          • Receiving Messages
          • SDK Releases
        • Edge Agent SDK
          • Integrate the Edge Agent SDK
          • Agent Management
          • Manage Wallets
          • Establishing Connections
          • Manage Connections
          • Messaging
          • Manage DIDs
          • Accepting New Credentials
          • Manage Credentials
          • Present Credentials for Verification
          • Utilize Alternative Cryptography Providers
          • SDK Releases
          • Standards and Protocols
      • Cloud Agent
        • Cloud Agent Admin API
          • Integrate the Cloud Agent Admin API
          • Aries Interop Profile (AIP)
            • Connection Exchanges
            • Credential Exchanges
            • Proof Exchanges
          • Connections
          • Basic Messages
          • Credentials
            • Anoncreds Credentials
              • Schemas
              • Credential Definitions
            • W3C Credentials
          • Audit Logs
          • API Schema
          • Error Codes
          • Standards and Protocols
    • Virtual Cards
      • Integrate the Virtual Cards SDK
      • Virtual Cards Entitlements
      • Virtual Cards Transaction Velocity Constraints
      • Key Management
      • Manage Funding Sources
      • Manage Virtual Cards
      • Manage Transactions
      • Configuration Data
      • Pagination
      • Caching
      • SDK Releases
      • API Reference
    • Virtual Cards Simulator
      • Integrate the Virtual Cards Simulator SDK
      • Simulate Authorizations
      • Simulate Debits
      • Simulate Refunds
      • Simulate Reversals
      • Merchants and Currencies
      • SDK Releases
      • API Reference
    • Virtual Private Network
      • Integrate the VPN SDK
      • VPN Entitlements
      • Manage Servers
      • Manage Connection
      • Observe VPN Related Events
      • SDK Releases
      • API Reference
      • Frequently Asked Questions
    • Secure ID Verification
      • Integrate the Secure ID Verification SDK
      • List Supported Countries
      • Verify an Identity
      • Check Secure ID Verification Status
      • Use the Secure ID Verification Simulator
      • SDK Releases
      • API Reference
    • Password Manager
      • Integrate the Password Manager SDK
      • Accessing the Password Manager
      • Managing Password Vaults
      • Managing Password Vault Items
      • Vault Import and Export
      • Password Utilities
      • Password Manager Entitlements
      • Password Vault Security
      • SDK Releases
      • API Reference
    • Ad/Tracker Blocker
      • Integrate the Ad/Tracker Blocker SDK
      • Manage Rulesets
      • Blocking Ads and Trackers
      • Manage Exceptions
      • SDK Releases
      • API Reference
    • Site Reputation
      • Integrate the Site Reputation SDK
      • Use the Site Reputation SDK
      • SDK Releases
      • API Reference
  • 💡Concepts
    • Sudo Digital Identities
  • 🧱Development
    • Versioning
  • 🏢Administration
    • Admin Console Roles
  • ❓Get Help
    • Request a Demo
    • Report an Issue
Powered by GitBook
On this page
  • Entitlement Types
  • Getting Entitlements
  1. Guides
  2. Password Manager

Password Manager Entitlements

Managing consumption of Password Manager capabilities

PreviousPassword UtilitiesNextPassword Vault Security

Last updated 3 years ago

The Password Manager SDK enables you to examine the resources used and their limits for a registered user. Resource limits are described by an Entitlement, an object with a name and a limit indicating some maximum usage value. Resource usage is tracked for each Sudo.

To allocate entitlements to your users or groups of users, refer to the Entitlements .

Entitlement Types

The following table describes the entitlements used to control access to the Password Manager:

Entitlement
Type
Description

sudoplatform.vault.vaultMaxPerSudo

Numeric

Maximum number of vaults a Sudo can have at a time. If zero, this user is not entitled to access the Password Manager.

/* ... */
export type EntitlementName = 'vaultMaxPerSudo' | ...
public struct Entitlement {
    /* ... */
    public enum Name: String {
        case maxVaultPerSudo
    }
}
data class Entitlement(
    // ...
) : Parcelable {
    /** Enum that represents the different types of entitlements available */
    enum class Name {
        MAX_VAULTS_PER_SUDO
    }
}

Getting Entitlements

The getEntitlement method returns the set of Password Manager Entitlements and their limits granted to the signed in user.

try {
    const entitlements = await client.getEntitlement()

    entitlements.forEach((ent) =>
        console.log(`This user can have up to ${ent.limit} of ${ent.name}`))
} catch (error) {
    // Handle/notify user of the error.
}
var client: PasswordManagerClient!

client.getEntitlement { (result) in 
    switch result {
    case .success(let entitlements):
        entitlements.forEach {
            print("This user can have up to \($0.limit) of \($0.name)")
        }

    case .failure(let error):
        /* Handle error logic */
        return
    }
}
// val client: SudoPasswordManagerClient

launch {
    try {
        val entitlement = withContext(Dispatchers.IO) {
            client.getEntitlement()
        }

        entitlement.forEach {
            println("This user can have up to ${it.limit} of ${it.name}")
        }
    } catch (e: SudoPasswordManagerException) {
        // Handle/notify user of exception
    }
}

The getEntitlementState method returns the usage value of each Password Manager Entitlement for each Sudo.

try {
    const entitlementStates = await client.getEntitlementState()

    entitlementStates.forEach((ent) =>
        console.log(`Sudo ${ent.sudoId} has consumed ${ent.value}/${ent.limit} of ${ent.name}`))
} catch (error) {
    // Handle/notify user of the error.
}
var client: PasswordManagerClient!

// Entitlement state
client.getEntitlementState { (result) in 
    switch result {
    case .success(let entitlements):
        entitlements.forEach {
            println("Sudo \($0.sudoId) has consumed \($0.value)/\($0.limit) of \($0.name)")
        }

    case .failure(let error):
        /* Handle error logic */
        return
    }
}
// val client: SudoPasswordManagerClient

launch {
    try {
        val entitlementState = withContext(Dispatchers.IO) {
            client.getEntitlementState()
        }

        entitlementState.forEach {
            println("Sudo ${it.sudoId} has consumed ${it.value}/${it.limit} of ${it.name}")
        }
    } catch (e: SudoPasswordManagerException) {
        // Handle/notify user of exception
    }
}

Read more about the Sudo Platform entitlements system and how to integrate with it in the section of the Sudo Platform documentation.

🗺️
Administrative API
Entitlements