diff --git a/404.html b/404.html index e1dcbef4..ec1e0505 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file +404: This page could not be found

404

This page could not be found.

\ No newline at end of file diff --git a/_next/static/chunks/nextra-data-en-US.json b/_next/static/chunks/nextra-data-en-US.json index c6ea848d..56a6f7bd 100644 --- a/_next/static/chunks/nextra-data-en-US.json +++ b/_next/static/chunks/nextra-data-en-US.json @@ -1 +1 @@ -{"/business/audit-logs":{"title":"Audit logs","data":{"":"Needs team credentials to use this command.","fetching-the-logs#Fetching the logs":"You can query the audit logs using the logs command. For example:\ndcli t logs\nYou can also save the logs to a file:\ndcli t logs --start 0 --end now > logs.json\nThe logs are output in JSON format, each line is a new log entry.\n{\"uuid\": \"e2d9ce5b-[..redacted..]-b6de479b3483\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1688629046919, \"properties\": {\"device_name\": \"Dashlane CLI\", \"author_login\": \"admin@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"d2f5db34-[..redacted..]-1dfcc3bdf911\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1688628172021, \"properties\": {\"device_name\": \"Chrome - Mac OS\", \"author_login\": \"admin@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"4ca3bb56-[..redacted..]-66cbb387cb54\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1683303544898, \"properties\": {\"device_name\": \"Firefox - Ubuntu\", \"author_login\": \"user@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28086620, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"68e70f62-[..redacted..]-1bb9830f9f18\", \"team_id\": 1315574321, \"category\": \"team_settings_sso\", \"log_type\": \"sso_service_provider_url_set\", \"date_time\": 1671629557924, \"properties\": {\"author_login\": \"admin@something.io\", \"service_provider_url\": \"https://sso.nitro.dashlane.com\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}","filtering-the-logs#Filtering the logs":"With the following options you can filter the logs by start and end date, log type and category.\n--start start timestamp in ms (default: \"0\")\n--end end timestamp in ms (default: \"now\")\n--type log type\n--category log category","filtering-by-date#Filtering by date":"We use epoch timestamps in milliseconds, so you can use the date command to get the timestamp of a specific date:\n# On Linux and Windows\ndate -d \"2021-09-01\" +%s000\n\n# On macOS\ndate -j -f \"%Y-%m-%d\" \"2021-09-01\" +%s000\nThe final command would look like this using date:\n# On Linux and Windows\ndcli t logs --start $(date -d \"2021-09-01\" +%s000) --end $(date -d \"2021-09-02\" +%s000)\n\n# On macOS\ndcli t logs --start $(date -j -f \"%Y-%m-%d\" \"2021-09-01\" +%s000) --end $(date -j -f \"%Y-%m-%d\" \"2021-09-02\" +%s000)\nIn the output logs timestamps are in milliseconds, so you can use the date command to convert them to a human readable format:\n# On Linux and Windows\ndate -d @1688629046919\n\n# On macOS\ndate -r 1688629046919","options#Options":"","export-as-csv#Export as CSV":"You can export the logs as CSV using the --csv option.\ndcli t logs --csv --start 0 --end now > logs.csv\nThis allows you to open the logs in a spreadsheet editor like Excel or Google Sheets.\nNote that the properties field is kept as a JSON string in the CSV file because its content varies depending on the log type.","human-readable-dates#Human Readable dates":"You can use the --human-readable option to output the logs with human readable dates.\ndcli t logs --human-readable\nThe date will be displayed in the ISO 8601 format.Note that a new key named date_time_iso will be added to the logs.","logs-types#Logs types":"","default-types#Default types":"Type\tEvent message\tmaster_password_reset_accepted\tAccepted an Account Recovery request from %(email)s\tmaster_password_reset_refused\tDenied an Account Recovery request from %(email)s\tuser_device_added\tAdded the device %(name)s\tuser_device_removed\tRemoved the device %(name)s\trequested_account_recovery\tRequested Account Recovery\tcompleted_account_recovery\tRecovered their account through Account Recovery\tdwm_email_added\tAdded %(email)s to Dark Web Monitoring\tdwm_email_removed\tRemoved %(email)s from Dark Web Monitoring\tuser_group_created\tCreated a group named %(groupName)s\tuser_group_renamed\tRenamed the %(oldGroupName)s group to %(newGroupName)s\tuser_group_deleted\tDeleted the %(groupName)s group\tuser_joined_user_group\tJoined the %(groupName)s group\tuser_invited_to_user_group\tInvited %(email)s to the %(groupName)s group\tuser_declined_invite_to_user_group\tDeclined to join the %(groupName)s group\tuser_removed_from_user_group\tRemoved %(email)s from the %(groupName)s group\tteam_name_changed\tChanged your company name to “%(name)s”\tnew_billing_period_created\tExtended your account until %(date)s\tseats_added\tAdded %(count)s seats to your account\tdomain_requested\tAdded %(domain)s as an unverified domain\tdomain_validated\tVerified the domain %(domain)s\tcollect_sensitive_data_audit_logs_enabled\t(user) turned on unencrypted vault logs\tcollect_sensitive_data_audit_logs_disabled\t(user) turned off unencrypted vault logs\tsso_idp_metadata_set\tUpdated SSO identity provider metadata\tsso_service_provider_url_set\tConfigured SSO service provider URL\tsso_enabled\tEnabled SSO\tsso_disabled\tDisabled SSO\tcontact_email_changed\tChanged contact email to %(email)s\tmaster_password_mobile_reset_enabled\tTurned on biometric recovery for %(deviceName)s\ttwo_factor_authentication_login_method_added\tActivated a 2FA method\ttwo_factor_authentication_login_method_removed\tRemoved a 2FA method\tuser_invited\tInvited %(email)s to your account\tuser_removed\tRevoked %(email)s from your account\tteam_captain_added\tChanged %(email)s to admin rights\tteam_captain_removed\tChanged %(email)s to member rights\tgroup_manager_added\tChanged %(email)s to group manager rights\tgroup_manager_removed\tChanged %(email)s to member rights\tuser_reinvited\tResent an invite to %(email)s\tbilling_admin_added\tMade %(name)s the billing contact\tbilling_admin_removed\tRevoked %(name)s as the billing contact","sensitive-types#Sensitive types":"You can turn on logging sensitive actions in the Policies section of Settings in the Admin Console. Read more about it in our dedicated Help Center article.\nType\tEvent message\tcollect_sensitive_data_audit_logs_enabled\t(user) turned on additional activity logs (unencrypted)\tcollect_sensitive_data_audit_logs_disabled\t(user) turned off additional activity logs (unencrypted)\tuser_shared_credential_with_group\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_shared_credential_with_email\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_shared_credential_with_external\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_accepted_sharing_invite_credential\t(user) accepted a sharing invitation for the %(domain)s\tuser_rejected_sharing_invite_credential\t(user) rejected a sharing invitation for the %(domain)s\tuser_revoked_shared_credential_group\t(user) revoked access to the %(domain)s login\tuser_revoked_shared_credential_external\t(user) revoked access to the %(domain)s login\tuser_revoked_shared_credential_email\t(user) revoked access to the %(domain)s login\tuser_created_credential\t(user) created a login for %(domain)s\tuser_modified_credential\t(user) modified the login for %(domain)s\tuser_deleted_credential\t(user) deleted the login for %(domain)s","logs-categories#Logs categories":"Category\tauthentication\tdark_web_monitoring\tgroups\tsharing\tteam_account\tteam_settings\tteam_settings_sso\tusers\tuser_settings\tvault_passwords","use-cases#Use cases":"","sending-audit-logs-to-a-siem-or-log-management-solution#Sending audit logs to a SIEM or log management solution":"If you want to send the logs to a SIEM for instance, you can pull the logs periodically and only get the new logs by using the --start option.Here is an example of a cron job that pulls the latest logs of the day and append them to a file:\n#!/bin/bash\n\n# Create the cron job\n# crontab -e\n# 0 0 * * * /path/to/script.sh\n\n# Get the latest pull date\nif [ -f \"last_pull_date\" ]; then\nlast_pull_date=$(cat last_pull_date)\nelse\nlast_pull_date=0\nfi\n\n# Save the latest pull date\ndate +%s000 > last_pull_date\n\n# Pull the logs\ndcli t logs --start $last_pull_date >> logs.json\nMake sure to replace /path/to/script.sh with the actual path to the script.\nThe other paths in the script are only examples and may not reflect the permissions of your system, you can change them to your needs.Configure your SIEM agent to watch the logs.json file changes."}},"/business":{"title":"Get started with Business Commands","data":{"":"Commands related to business use a different authentication than your personal vault.Commands are calling a server API to perform actions and retrieve data. The first step is to login with the personal account (follow this guide) of a team admin and to generate a set of credentials.","generate-credentials#Generate credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials generate\nYou will be prompted with a list of variables to export in your environment. Simply copy/paste them in your terminal.\nexport DASHLANE_TEAM_UUID=08a48d4f-[..redacted..]-fba9193d968c\nexport DASHLANE_TEAM_ACCESS_KEY=f56[..redacted..]56ce\nexport DASHLANE_TEAM_SECRET_KEY=839c9[..redacted..]3ada5\nOn Windows, you can use the set command instead of export.\nset DASHLANE_TEAM_UUID=08a48d4f-[..redacted..]-fba9193d968c\nset DASHLANE_TEAM_ACCESS_KEY=f56[..redacted..]56ce\nset DASHLANE_TEAM_SECRET_KEY=839c9[..redacted..]3ada5\nMake sure you save them in a safe place (use a secure note for instance 😉).","list-credentials#List credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials list","revoke-credentials#Revoke credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials revoke "}},"/business/members":{"title":"Listing members","data":{"":"Needs team credentials to use this command.","fetching-the-list-of-members#Fetching the list of members":"Listing team members allows you to access many information about them, such as their email, their role, their 2FA status, their security score, etc.\ndcli t members","filtering-the-list-of-members#Filtering the list of members":"You can pipe the output to jq to filter the results:\ndcli t members | jq '.members[] | select(.isTeamCaptain == true)'","options#Options":"","exporting-the-list-as-a-csv#Exporting the list as a CSV":"You can use the --csv flag to export the list as a CSV file:\ndcli t members --csv > members.csv\nThis allows you to open the file in a spreadsheet editor such as Excel or Google Sheets.","human-readable-dates#Human Readable dates":"You can use the --human-readable option to output the logs with human readable dates.\ndcli t members --human-readable\nThe dates will be displayed in the ISO 8601 format.Note that keys ending with Unix will be converted to human readable dates and renamed to remove the Unix suffix.","members-interface#Members interface":"Property\tType\tDescription\tmembers\tArray of object\tArray of team members\tmembers.userId\tnumber | undefined\tThe user identifier of the user\tmembers.login\tstring\tUser login (usually email)\tmembers.status\tstring\tMember status\tmembers.joinedDateUnix\tnumber | null\tThe join date of member in Unix time\tmembers.lastUpdateDateUnix\tnumber | null\tLast updated date of member in Unix time\tmembers.isBillingAdmin\tboolean\tTrue if user is a billing admin, false otherwise\tmembers.isTeamCaptain\tboolean\tTrue if user is a team captain, false otherwise\tmembers.isGroupManager\tboolean\tTrue if user is a group manager, false otherwise\tmembers.email\tstring | undefined\tThe user's account email\tmembers.isAccountCreated\tboolean | undefined\tIf user account is created\tmembers.invitedDateUnix\tnumber\tDate user was invited\tmembers.token\tobject\tThe user's invite token\tmembers.token.userId\tnumber | undefined\tUser identifier associated with the token\tmembers.token.teamId\tnumber | undefined\tTeam identifier associated with the token\tmembers.token.token\tstring | undefined\tValue of the invite token\tmembers.token.isFresh\tboolean | undefined\tTrue if token is not used, false otherwise\tmembers.token.inviteUserId\tnumber | undefined\tThe user identifier of the inviter\tmembers.revokedDateUnix\tnumber | null\tWhen user's account was revoked in Unix time\tmembers.language\tstring | undefined\tUser's preferred language\tmembers.nbrPasswords\tnumber | null\tNumber of passwords stored by user\tmembers.reused\tnumber | null\tNumber of reused passwords\tmembers.reusedDistinct\tnumber | null\tNumber of distinct reused passwords\tmembers.weakPasswords\tnumber | null\tNumber of weak passwords\tmembers.compromisedPasswords\tnumber | null\tNumber of compromised passwords\tmembers.averagePasswordStrength\tnumber | null\tAverage password strength score\tmembers.passwordStrength0_19Count\tnumber | null\tNumber of passwords between 0 to 19 characters\tmembers.passwordStrength20_39Count\tnumber | null\tNumber of passwords between 20 to 39 characters\tmembers.passwordStrength40_59Count\tnumber | null\tNumber of passwords between 40 to 59 characters\tmembers.passwordStrength60_79Count\tnumber | null\tNumber of passwords between 60 to 79 characters\tmembers.passwordStrength80_100Count\tnumber | null\tNumber of passwords between 80 to 100 characters\tmembers.safePasswords\tnumber | null\tNumber of passwords considered safe\tmembers.name\tstring | null\tUser's name\tmembers.securityIndex\tnumber | null\tSecurity index\tmembers.twoFAInformation\tobject\t2FA information for the user\tmembers.twoFAInformation.type\t'sso' | 'email_token' | 'totp_device_registration' | 'totp_login' | undefined\t2FA type\tmembers.twoFAInformation.phone\tstring | null\tPhone number for 2FA\tmembers.twoFAInformation.lastUpdateDateUnix\tnumber | null\tLast updated date of 2FA in Unix time\tmembers.hasPublicKey\tboolean\tTrue if user has a public key\tbillingAdmins\tArray of string\tArray of emails of billing admins\tpage\tnumber\tCurrent page of results\tpages\tnumber\tTotal pages of results"}},"/business/reports":{"title":"Reports","data":{"":"Needs team credentials to use this command.\nYou can get reports on your team about the number of seats provisioned, used and pending. You can also get reports on the aggregated password health history of your team.","fetch-reports#Fetch reports":"The following commands take in input the number of days to look back for the password health history. The default is 0 day.\ndcli t report 30","generate-graphics-from-reports#Generate graphics from reports":"One way to consume password health history reports is to generate graphics from them.\n\nThe following Python script example will generate a graphic from the report.\nimport matplotlib.pyplot as plt\nimport numpy as np\n\n\ndef format_month(month: str):\nmatch month:\ncase \"01\":\nreturn \"Jan\"\ncase \"02\":\nreturn \"Feb\"\ncase \"03\":\nreturn \"Mar\"\ncase \"04\":\nreturn \"Apr\"\ncase \"05\":\nreturn \"May\"\ncase \"06\":\nreturn \"Jun\"\ncase \"07\":\nreturn \"Jui\"\ncase \"08\":\nreturn \"Aug\"\ncase \"09\":\nreturn \"Sep\"\ncase \"10\":\nreturn \"Oct\"\ncase \"11\":\nreturn \"Nov\"\ncase \"12\":\nreturn \"Dec\"\n\n\ndef format_x_label(label: str):\nyear, month = label.split(\"-\")\nreturn f\"{format_month(month)} {year}\"\n\n\ndef generate_graph(file_path: str, data):\ndates = []\nvalues = []\nfor value in data:\ndates.append(np.datetime64(value[\"date\"]))\nvalues.append(value[\"securityIndex\"])\n\n# create two subplots with the shared x and y axes\nfig, (ax) = plt.subplots(figsize=(10, 5))\n\nax.plot(dates, values, lw=2, color=\"#4e828f\")\nax.grid(True)\n\nax.set_ylabel(\"Security score\")\nlabels = ax.get_xticklabels()\nfor label in labels:\nlabel._text = format_x_label(label._text)\nax.set_xticklabels(labels)\n\nax.set_ylim(min(values) - 10, 100)\n\nfig.suptitle(\"Evolution of the team security score\")\nfig.autofmt_xdate()\n\nplt.savefig(file_path)\nplt.close()\nreturn file_path"}},"/guides":{"title":"Our guides in video","data":{"":"We made a series of videos to help you understand how to use the CLI."}},"/":{"title":"Documentation","data":{"":"Dashlane CLI is a command line interface for Dashlane. It allows you to interact with your Dashlane account, and to manage your passwords and personal data.Dashlane CLI also allows you to access team admin related features such as accessing your team's member list, Dark Web Insights reports and activity logs.This documentation is separated in two parts:"}},"/install":{"title":"Install","data":{"":"The Dashlane CLI can be installed in multiple ways. You can either install it using Homebrew on macOS and Linux, manually with Yarn or download the packaged executables for Windows, macOS and Linux on x64 architectures.\n\nYou can install the Dashlane CLI using Homebrew, a package manager for macOS and Linux.To install Homebrew, run the following command in your terminal:\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\nThen you need to run the following command:\nbrew install dashlane/tap/dashlane-cli\nThe CLI is now installed on your machine, it will be updated automatically when a new version is released.\n\nThis method is available on every environment that supports Node.js and Yarn.First you need to download or git clone this repository and run the following commands in the root directory of the repository.Install the dependencies:\nyarn\nIn order to build:\nyarn run build\nIn order to link:\nyarn link\nMake sure to pull the latest changes and rebuild the project to get the latest version of the CLI.\n\nHead to the releases page and download the latest version of the CLI for your platform (Windows, macOS or Linux).You may need to mark the binary as executable (on macOS and Linux):\nchmod +x dcli-macos-x64\nYou can now try to run the CLI from the current directory in a terminal (Shell, PowerShell, etc.):\n./dcli-macos-x64\nMove the executable binary to the bin folder of your choice, for instance:\n# On macOS:\nmv dcli-macos-x64 /usr/local/bin/dcli\n\n# On Linux:\nmv dcli-linux-x64 /usr/local/bin/dcli\n\n# On Windows:\nmove dcli-win-x64.exe C:\\Windows\\System32\\dcli.exe\nOn macOS, you may also need to allow the binary to run in your security settings.\nTo do so, go to System Preferences > Security & Privacy > General and click on \"Allow Anyway\" next to the message \"dcli-macos was blocked from use because it is not from an identified developer\".You will need to get the latest version of the CLI manually by downloading the latest release and replacing the binary in your bin folder.","whats-next#What's next?":"Authenticate to your personal account\nGetting Started with Business Commands"}},"/logout":{"title":"Logout","data":{"":"If you want to start fresh with the CLI or use another account, you can logout and reset the local data by running the following command:\ndcli logout\n\nThis does not perform an account reset, it only resets the local data on the device.\nA confirmation will be asked, then the local database containing your encrypted data will be wiped and any entry related to the CLI will be removed from the OS keychain."}},"/personal/authentication":{"title":"Authentication","data":{"":"To start with launch a first manual sync:\ndcli sync\nAuthenticating to your personal vault requires your email.\nYou will be then asked to validate a second factor to register the CLI to your account.","supported-primary-authentication-methods#Supported primary authentication methods":"Master Password\nSSO (self-hosted only)\n\n\nConfidential SSO (using Nitro Enclaves) and Password-Less authentication are not supported yet.","requirements-for-sso-authentication#Requirements for SSO authentication":"You must have:\nthe latest Chrome browser installed on your machine\na visual interface to be able to authenticate in the browser\na machine that has a keychain (macOS, Windows, Linux with libsecret installed for instance)\n\nThe CLI will open a new incognito tab to authenticate you to your SSO provider.","supported-2fa-methods#Supported 2FA methods":"Email code validation (default)\nTOTP code validation (via an authenticator app)\nDashlane Authenticator push notification\nDUO push notification\n\nBy completing the device registration process, you'll be now asked to enter your Master Password.","options#Options":"By default your Master Password will be saved locally in the OS keychain so you don't have to enter it every time.\nYou can disable this behavior with the following command:\ndcli configure save-master-password false"}},"/personal/backup":{"title":"Backup your local Vault","data":{"":"By using the backup command, you can backup your local vault to a given directory and filename.\nThe command will perform a sync prior to the backup to ensure that the latest data is pulled from the Dashlane servers.The backup is a sqlite3 database file containing all your secrets encrypted by your master password.\n# By default the backup file is stored in the current directory and named dashlane-backup-.db\ndcli backup\n\n# You can specify the directory and filename\ndcli backup --filename --directory \nThe database is composed of 3 tables:\ndevice: contains the current device information and configuration (including your device secrets)\ntransactions: contains all the transactions that composed your vault (the type determines if the transaction is a password, a note, a credit card, etc.)\nsyncUpdates: contains the sync updates when the data was pulled from the Dashlane servers"}},"/personal":{"title":"Get started with Personal Commands","data":{"":"Accessing your personal vault allows you to view your passwords, secure notes and OTP codes."}},"/personal/devices":{"title":"Managing your devices","data":{"":"","list-your-devices#List your devices":"dcli devices list\nYou'll get a list of all your devices, with their ID, name, and platform.\nf6110572 Chrome - Linux server_standalone other\ne96c8942 Firefox - Ubuntu server_standalone other\n9d7fc86f Chrome - Mac OS server_standalone other\n61e815b5 Dashlane CLI server_standalone current\nYou can also request the result in JSON format:\ndcli devices list --json","remove-devices-from-your-account#Remove devices from your account":"Devices that are removed from your account will need to re-authenticate to Dashlane again.\nThis is useful if you want to remove a device that you no longer use, or you don't have access to anymore.","remove-specific-devices#Remove specific devices":"dcli devices remove ","remove-all-devices-except-the-current-one#Remove all devices except the current one":"dcli devices remove --others","remove-all-devices-including-current-cli-device#Remove all devices including current CLI device":"dcli devices remove --all\n\nIf you remove the current CLI device, you will need to do a dcli logout in order to re-authenticate.","register-a-new-non-interactive-device#Register a new non-interactive device":"In case you want to access your vault in non-interactive environment like CIs or servers, you can register a new device with the register command.\ndcli devices register \"my_server\"\nNote that you will be prompted to validate the registration with a second factor authentication.This will create a new device named my_server and will print the device credentials.\nSave them in a safe place (like in a secure note), as you won't be able to retrieve them later.\nRun the suggested commands on your target device (your server or CI) to set the device credentials as environment variables.\nexport DASHLANE_DEVICE_ACCESS_KEY=bdd5[..redacted..]6eb\nexport DASHLANE_DEVICE_SECRET_KEY=99f7d9bd547c0[..redacted..]c93fa2118cdf7e3d0\nexport DASHLANE_LOGIN=email@domain.com\nexport DASHLANE_MASTER_PASSWORD=\nPlease, replace with your actual master password.\nOTP at each login and SSO are not supported for non-interactive devices. We recommend creating a dedicated Dashlane\naccount for your non-interactive devices.\nOnce you've set the environment variables, you can use the CLI to retrieve passwords, otp and notes and no interactive prompts will be shown."}},"/personal/secrets/exec":{"title":"Load secrets into environment variables","data":{"":"The Dashlane CLI allows you to load secrets into environment variables. This is useful for example when you want to use secrets in your applications in development.By using secret references in your environment variables, you can load secrets from your Dashlane account into your environment variables and avoid having to store them in plain text in your code.","get-your-secret-reference#Get your secret reference":"Follow the guide in Read secrets references to learn how to get your secret reference.It should look like this: dl:///?","export-environment-variables#Export environment variables":"You can now export your secret reference into an environment variable :\nexport GITLAB_TOKEN='dl://mygitlabtoken/password'","use-your-secret-in-your-application#Use your secret in your application":"In your code you can for instance read the variable from the env:\nconst token = process.env.GITLAB_TOKEN;\n\nconsole.log(token);\nFinally, you can use the dcli exec command to run your application with the environment variables loaded from your Dashlane account.\ndcli exec -- node app.js\nThe stdin and stdout of your application will be piped to the terminal.\nEvery environment variable that starts with dl:// will be replaced by the secret value from your Dashlane account."}},"/personal/secrets/inject":{"title":"Load secrets into templated files","data":{"":"Using Dashlane CLI you can inject secrets into templated files.\nThis is useful for example to inject secrets into configuration files and avoid storing secrets in your repository.","get-your-secret-reference#Get your secret reference":"Follow the guide in Read secrets references to learn how to get your secret reference.It should look like this: dl:///?","use-secret-references-in-your-config-file#Use secret references in your config file":"In your template config file, use the secret reference as a placeholder for the value you want to inject.The secret reference must be enclosed in double curly braces {{ }}.For instance, let's create a template config file for a fictive API:\napi:\nurl: https://api.example.com\nport: 443\naccess_token: '{{ dl:/// }}'","inject-secrets-into-your-config-file#Inject secrets into your config file":"Use the dcli inject command to inject secrets into your config file.\ndcli inject --in config.yaml.template --out config.yaml\nIn output file, the secret reference is replaced by the plaintext secret value.\n\n\nMake sure to delete the resolved config file if you no longer need it."}},"/personal/secrets/read":{"title":"Read secrets references","data":{"":"A secret reference is an URI starting by dl:// that points to a secret stored in your vault.You can use a secret reference to securely load a secret from your vault into environment variables, scripts or configuration files.","structure-of-secret-references#Structure of secret references":"The URI is composed of 4 parts:\nThe scheme dl://\nThe identifier of the secret (or its title)\n(optionally) the field of the secret to load\n(optionally) a transformer to apply to the secret\n\n\ndl://[/][?]","secret-identifier#Secret identifier":"The secret identifier is the unique identifier of the secret in your vault (it can be either a password or a secure note).\nYou can get this identifier by displaying the full json of a secret with the command dcli password -o json.\n# You will find them in the \"id\" field of the json\n{\n\"creationDatetime\": \"1691073205\",\n\"id\": \"{QD145B53-B987-4CFE-9408-F25803DC47A4}\",\n...\n}\nNote: Make sure to remove the {} around the identifier before using it in the path. In this example it is QD145B53-B987-4CFE-9408-F25803DC47A4.Alternatively, you can use the title of the secret instead of its identifier. In this case, the secret will be loaded by searching for its title in your vault.\nIf multiple secrets have the same title, the first one will be loaded.","field#Field":"The field is the name of the field of the secret to load. If not specified, the whole secret will be loaded in a JSON format.","transformer#Transformer":"The transformer is a function that will be applied to the secret field before loading it. It can be used to format the secret in a specific way.Available transformers:\n?otp to generate a one-time password from a secret key\n?otp+expiry to generate a one-time password from a secret key and display its expiry date (in seconds)\n?json=<JSONPathQuery> to extract a value from a JSON object\n(please refer to JSONPath documentation for more information)","read-a-secret-reference#Read a secret reference":"You can simply use the dcli read <path> command to read a secret reference.\n# Read the whole secret\ndcli read dl://<secret_identifier>\n\n# Read a specific field of the secret\ndcli read dl://<secret_identifier>/<field>\n\n# Read a specific field of the secret and apply a transformer\ndcli read dl://<secret_identifier>/<field>?<transformer>\nNote: Accessing a secret with the secret identifier is faster than using the title of the secret as it does not require to decrypt the whole vault."}},"/personal/vault":{"title":"Accessing your Vault","data":{"":"For now accessing your vault is read only.","get-a-password#Get a password":"dcli p mywebsite\n# will return any entry for which either the url or the title matches mywebsite\n\ndcli p id=xxxxxx\n# will return any entry for which the id matches xxxxxx\n\ndcli p url=someurl title=mytitle\n# will return any entry for which the url matches someurl, or the title matches mytitle\n\ndcli p url,title=mywebsite\n# will return any entry for which either the url or the title matches mywebsite\nNote: You can select a different output for passwords among clipboard, password, json. The JSON option outputs all the matching credentials.","generate-an-otp-code#Generate an OTP code":"You can get an OTP code from your vault as well as the remaining time before it expires.\nJust use the otp or o command and filter similarly to the password command:\ndcli otp [filters]","get-a-secure-note#Get a secure note":"In order to get a secure note, just use the note or n command and define some filters (similarly to the password command).\nYou can also select a different output for notes among text, json. The JSON option outputs all the matching notes.\ndcli note [filters]\n\n# Example with a JSON output\ndcli note tilte=sample.md -o json","options#Options":"By default an automatic synchronization is performed once per hour.\nYou can change this behavior with the following command:\ndcli configure disable-auto-sync true","use-cases#Use cases":"","use-ssh-keys-from-your-vault#Use SSH Keys from your vault":"This use case shows you how to use Dashlane to store your SSH keys and use them to connect to your servers.\nThis could be useful if you want to share SSH keys with your team.Let's say you have generated a new SSH key pair and you want to store it in Dashlane.\n# this is an example, use the parameters you want\nssh-keygen -t rsa -b 4096 -C \"Dashlane SSH demo key\"\nCopy the private key to your clipboard and store it in a new secure note (named SSH_DEMO_KEY in our example) in Dashlane via the extension.\nIt is important to include the headers of the key (-----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY-----) in the secure note.Now, make sure your CLI is synchronized:\ndcli sync\nOnce done, you can retrieve the private key from your vault and inject it in your SSH agent:\ndcli n SSH_DEMO_KEY | ssh-add -"}},"/troubleshooting":{"title":"Troubleshooting","data":{"":"Here are a few common issues and how to fix them.","mismatching-signatures#Mismatching signatures":"If you are using the CLI in multiple environments, and particularly in an IDE like WebStorm, they may use different\nOS keychain environments so the local keys may not match: the reason why signatures are invalid.To detect this problem you can, on Linux, install secret-tool: sudo apt install libsecret-tools, execute\nsecret-tool search service dashlane-cli on every environment and check if the secrets match.If they don't, you can fix the error by manually editing what is stored in the OS keychain using this command:\nsecret-tool store --label \"dashlane-cli@<dashlaneId>\" service dashlane-cli account <dashlaneId> in the\nfailing environment with the secret from the healthy environment.","requesterror-unable-to-verify-the-first-certificate#RequestError: unable to verify the first certificate":"In NodeJS the list of certificate authorities is hardcoded, read more here: nodejs/node#4175.\nYou can use an environment variable to add custom certs (see documentation):\n\n\nexport NODE_EXTRA_CA_CERTS=\"/path/to/cert.pem\"\n\n\n\n$Env:NODE_EXTRA_CA_CERTS=\"C:\\certs\\root.crt\"\n\n\n\nset NODE_EXTRA_CA_CERTS=\"C:\\certs\\root.crt\"\n\n\nSee the issue #46."}}} \ No newline at end of file +{"/business/audit-logs":{"title":"Audit logs","data":{"":"Needs team credentials to use this command.","fetching-the-logs#Fetching the logs":"You can query the audit logs using the logs command. For example:\ndcli t logs\nYou can also save the logs to a file:\ndcli t logs --start 0 --end now > logs.json\nThe logs are output in JSON format, each line is a new log entry.\n{\"uuid\": \"e2d9ce5b-[..redacted..]-b6de479b3483\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1688629046919, \"properties\": {\"device_name\": \"Dashlane CLI\", \"author_login\": \"admin@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"d2f5db34-[..redacted..]-1dfcc3bdf911\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1688628172021, \"properties\": {\"device_name\": \"Chrome - Mac OS\", \"author_login\": \"admin@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"4ca3bb56-[..redacted..]-66cbb387cb54\", \"team_id\": 1315574321, \"category\": \"authentication\", \"log_type\": \"user_device_added\", \"date_time\": 1683303544898, \"properties\": {\"device_name\": \"Firefox - Ubuntu\", \"author_login\": \"user@something.io\", \"device_platform\": \"server_standalone\"}, \"author_user_id\": 28086620, \"schema_version\": \"1.0.0\"}\n{\"uuid\": \"68e70f62-[..redacted..]-1bb9830f9f18\", \"team_id\": 1315574321, \"category\": \"team_settings_sso\", \"log_type\": \"sso_service_provider_url_set\", \"date_time\": 1671629557924, \"properties\": {\"author_login\": \"admin@something.io\", \"service_provider_url\": \"https://sso.nitro.dashlane.com\"}, \"author_user_id\": 28080685, \"schema_version\": \"1.0.0\"}","filtering-the-logs#Filtering the logs":"With the following options you can filter the logs by start and end date, log type and category.\n--start <start> start timestamp in ms (default: \"0\")\n--end <end> end timestamp in ms (default: \"now\")\n--type <type> log type\n--category <category> log category","filtering-by-date#Filtering by date":"We use epoch timestamps in milliseconds, so you can use the date command to get the timestamp of a specific date:\n# On Linux and Windows\ndate -d \"2021-09-01\" +%s000\n\n# On macOS\ndate -j -f \"%Y-%m-%d\" \"2021-09-01\" +%s000\nThe final command would look like this using date:\n# On Linux and Windows\ndcli t logs --start $(date -d \"2021-09-01\" +%s000) --end $(date -d \"2021-09-02\" +%s000)\n\n# On macOS\ndcli t logs --start $(date -j -f \"%Y-%m-%d\" \"2021-09-01\" +%s000) --end $(date -j -f \"%Y-%m-%d\" \"2021-09-02\" +%s000)\nIn the output logs timestamps are in milliseconds, so you can use the date command to convert them to a human readable format:\n# On Linux and Windows\ndate -d @1688629046919\n\n# On macOS\ndate -r 1688629046919","options#Options":"","export-as-csv#Export as CSV":"You can export the logs as CSV using the --csv option.\ndcli t logs --csv --start 0 --end now > logs.csv\nThis allows you to open the logs in a spreadsheet editor like Excel or Google Sheets.\nNote that the properties field is kept as a JSON string in the CSV file because its content varies depending on the log type.","human-readable-dates#Human Readable dates":"You can use the --human-readable option to output the logs with human readable dates.\ndcli t logs --human-readable\nThe date will be displayed in the ISO 8601 format.Note that a new key named date_time_iso will be added to the logs.","logs-types#Logs types":"","default-types#Default types":"Type\tEvent message\tmaster_password_reset_accepted\tAccepted an Account Recovery request from %(email)s\tmaster_password_reset_refused\tDenied an Account Recovery request from %(email)s\tuser_device_added\tAdded the device %(name)s\tuser_device_removed\tRemoved the device %(name)s\trequested_account_recovery\tRequested Account Recovery\tcompleted_account_recovery\tRecovered their account through Account Recovery\tdwm_email_added\tAdded %(email)s to Dark Web Monitoring\tdwm_email_removed\tRemoved %(email)s from Dark Web Monitoring\tuser_group_created\tCreated a group named %(groupName)s\tuser_group_renamed\tRenamed the %(oldGroupName)s group to %(newGroupName)s\tuser_group_deleted\tDeleted the %(groupName)s group\tuser_joined_user_group\tJoined the %(groupName)s group\tuser_invited_to_user_group\tInvited %(email)s to the %(groupName)s group\tuser_declined_invite_to_user_group\tDeclined to join the %(groupName)s group\tuser_removed_from_user_group\tRemoved %(email)s from the %(groupName)s group\tteam_name_changed\tChanged your company name to “%(name)s”\tnew_billing_period_created\tExtended your account until %(date)s\tseats_added\tAdded %(count)s seats to your account\tdomain_requested\tAdded %(domain)s as an unverified domain\tdomain_validated\tVerified the domain %(domain)s\tcollect_sensitive_data_audit_logs_enabled\t(user) turned on unencrypted vault logs\tcollect_sensitive_data_audit_logs_disabled\t(user) turned off unencrypted vault logs\tsso_idp_metadata_set\tUpdated SSO identity provider metadata\tsso_service_provider_url_set\tConfigured SSO service provider URL\tsso_enabled\tEnabled SSO\tsso_disabled\tDisabled SSO\tcontact_email_changed\tChanged contact email to %(email)s\tmaster_password_mobile_reset_enabled\tTurned on biometric recovery for %(deviceName)s\ttwo_factor_authentication_login_method_added\tActivated a 2FA method\ttwo_factor_authentication_login_method_removed\tRemoved a 2FA method\tuser_invited\tInvited %(email)s to your account\tuser_removed\tRevoked %(email)s from your account\tteam_captain_added\tChanged %(email)s to admin rights\tteam_captain_removed\tChanged %(email)s to member rights\tgroup_manager_added\tChanged %(email)s to group manager rights\tgroup_manager_removed\tChanged %(email)s to member rights\tuser_reinvited\tResent an invite to %(email)s\tbilling_admin_added\tMade %(name)s the billing contact\tbilling_admin_removed\tRevoked %(name)s as the billing contact","sensitive-types#Sensitive types":"You can turn on logging sensitive actions in the Policies section of Settings in the Admin Console. Read more about it in our dedicated Help Center article.\nType\tEvent message\tcollect_sensitive_data_audit_logs_enabled\t(user) turned on additional activity logs (unencrypted)\tcollect_sensitive_data_audit_logs_disabled\t(user) turned off additional activity logs (unencrypted)\tuser_shared_credential_with_group\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_shared_credential_with_email\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_shared_credential_with_external\t(user) shared %(rights [limited/full]) rights to the %(domain)s\tuser_accepted_sharing_invite_credential\t(user) accepted a sharing invitation for the %(domain)s\tuser_rejected_sharing_invite_credential\t(user) rejected a sharing invitation for the %(domain)s\tuser_revoked_shared_credential_group\t(user) revoked access to the %(domain)s login\tuser_revoked_shared_credential_external\t(user) revoked access to the %(domain)s login\tuser_revoked_shared_credential_email\t(user) revoked access to the %(domain)s login\tuser_created_credential\t(user) created a login for %(domain)s\tuser_modified_credential\t(user) modified the login for %(domain)s\tuser_deleted_credential\t(user) deleted the login for %(domain)s","logs-categories#Logs categories":"Category\tauthentication\tdark_web_monitoring\tgroups\tsharing\tteam_account\tteam_settings\tteam_settings_sso\tusers\tuser_settings\tvault_passwords","use-cases#Use cases":"","sending-audit-logs-to-a-siem-or-log-management-solution#Sending audit logs to a SIEM or log management solution":"If you want to send the logs to a SIEM for instance, you can pull the logs periodically and only get the new logs by using the --start option.Here is an example of a cron job that pulls the latest logs of the day and append them to a file:\n#!/bin/bash\n\n# Create the cron job\n# crontab -e\n# 0 0 * * * /path/to/script.sh\n\n# Get the latest pull date\nif [ -f \"last_pull_date\" ]; then\nlast_pull_date=$(cat last_pull_date)\nelse\nlast_pull_date=0\nfi\n\n# Save the latest pull date\ndate +%s000 > last_pull_date\n\n# Pull the logs\ndcli t logs --start $last_pull_date >> logs.json\nMake sure to replace /path/to/script.sh with the actual path to the script.\nThe other paths in the script are only examples and may not reflect the permissions of your system, you can change them to your needs.Configure your SIEM agent to watch the logs.json file changes."}},"/business":{"title":"Get started with Business Commands","data":{"":"Commands related to business use a different authentication than your personal vault.Commands are calling a server API to perform actions and retrieve data. The first step is to login with the personal account (follow this guide) of a team admin and to generate a set of credentials.","generate-credentials#Generate credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials generate\nYou will be prompted with a list of variables to export in your environment. Simply copy/paste them in your terminal.\nexport DASHLANE_TEAM_UUID=08a48d4f-[..redacted..]-fba9193d968c\nexport DASHLANE_TEAM_ACCESS_KEY=f56[..redacted..]56ce\nexport DASHLANE_TEAM_SECRET_KEY=839c9[..redacted..]3ada5\nOn Windows, you can use the set command instead of export.\nset DASHLANE_TEAM_UUID=08a48d4f-[..redacted..]-fba9193d968c\nset DASHLANE_TEAM_ACCESS_KEY=f56[..redacted..]56ce\nset DASHLANE_TEAM_SECRET_KEY=839c9[..redacted..]3ada5\nMake sure you save them in a safe place (use a secure note for instance 😉).","list-credentials#List credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials list","revoke-credentials#Revoke credentials":"Needs to be authenticated as an admin to use this command.\n\ndcli t credentials revoke <DASHLANE_TEAM_ACCESS_KEY>"}},"/business/members":{"title":"Listing members","data":{"":"Needs team credentials to use this command.","fetching-the-list-of-members#Fetching the list of members":"Listing team members allows you to access many information about them, such as their email, their role, their 2FA status, their security score, etc.\ndcli t members","filtering-the-list-of-members#Filtering the list of members":"You can pipe the output to jq to filter the results:\ndcli t members | jq '.members[] | select(.isTeamCaptain == true)'","options#Options":"","exporting-the-list-as-a-csv#Exporting the list as a CSV":"You can use the --csv flag to export the list as a CSV file:\ndcli t members --csv > members.csv\nThis allows you to open the file in a spreadsheet editor such as Excel or Google Sheets.","human-readable-dates#Human Readable dates":"You can use the --human-readable option to output the logs with human readable dates.\ndcli t members --human-readable\nThe dates will be displayed in the ISO 8601 format.Note that keys ending with Unix will be converted to human readable dates and renamed to remove the Unix suffix.","members-interface#Members interface":"Property\tType\tDescription\tmembers\tArray of object\tArray of team members\tmembers.userId\tnumber | undefined\tThe user identifier of the user\tmembers.login\tstring\tUser login (usually email)\tmembers.status\tstring\tMember status\tmembers.joinedDateUnix\tnumber | null\tThe join date of member in Unix time\tmembers.lastUpdateDateUnix\tnumber | null\tLast updated date of member in Unix time\tmembers.isBillingAdmin\tboolean\tTrue if user is a billing admin, false otherwise\tmembers.isTeamCaptain\tboolean\tTrue if user is a team captain, false otherwise\tmembers.isGroupManager\tboolean\tTrue if user is a group manager, false otherwise\tmembers.email\tstring | undefined\tThe user's account email\tmembers.isAccountCreated\tboolean | undefined\tIf user account is created\tmembers.invitedDateUnix\tnumber\tDate user was invited\tmembers.token\tobject\tThe user's invite token\tmembers.token.userId\tnumber | undefined\tUser identifier associated with the token\tmembers.token.teamId\tnumber | undefined\tTeam identifier associated with the token\tmembers.token.token\tstring | undefined\tValue of the invite token\tmembers.token.isFresh\tboolean | undefined\tTrue if token is not used, false otherwise\tmembers.token.inviteUserId\tnumber | undefined\tThe user identifier of the inviter\tmembers.revokedDateUnix\tnumber | null\tWhen user's account was revoked in Unix time\tmembers.language\tstring | undefined\tUser's preferred language\tmembers.nbrPasswords\tnumber | null\tNumber of passwords stored by user\tmembers.reused\tnumber | null\tNumber of reused passwords\tmembers.reusedDistinct\tnumber | null\tNumber of distinct reused passwords\tmembers.weakPasswords\tnumber | null\tNumber of weak passwords\tmembers.compromisedPasswords\tnumber | null\tNumber of compromised passwords\tmembers.averagePasswordStrength\tnumber | null\tAverage password strength score\tmembers.passwordStrength0_19Count\tnumber | null\tNumber of passwords between 0 to 19 characters\tmembers.passwordStrength20_39Count\tnumber | null\tNumber of passwords between 20 to 39 characters\tmembers.passwordStrength40_59Count\tnumber | null\tNumber of passwords between 40 to 59 characters\tmembers.passwordStrength60_79Count\tnumber | null\tNumber of passwords between 60 to 79 characters\tmembers.passwordStrength80_100Count\tnumber | null\tNumber of passwords between 80 to 100 characters\tmembers.safePasswords\tnumber | null\tNumber of passwords considered safe\tmembers.name\tstring | null\tUser's name\tmembers.securityIndex\tnumber | null\tSecurity index\tmembers.twoFAInformation\tobject\t2FA information for the user\tmembers.twoFAInformation.type\t'sso' | 'email_token' | 'totp_device_registration' | 'totp_login' | undefined\t2FA type\tmembers.twoFAInformation.phone\tstring | null\tPhone number for 2FA\tmembers.twoFAInformation.lastUpdateDateUnix\tnumber | null\tLast updated date of 2FA in Unix time\tmembers.hasPublicKey\tboolean\tTrue if user has a public key\tbillingAdmins\tArray of string\tArray of emails of billing admins\tpage\tnumber\tCurrent page of results\tpages\tnumber\tTotal pages of results"}},"/business/reports":{"title":"Reports","data":{"":"Needs team credentials to use this command.\nYou can get reports on your team about the number of seats provisioned, used and pending. You can also get reports on the aggregated password health history of your team.","fetch-reports#Fetch reports":"The following commands take in input the number of days to look back for the password health history. The default is 0 day.\ndcli t report 30","generate-graphics-from-reports#Generate graphics from reports":"One way to consume password health history reports is to generate graphics from them.\n\nThe following Python script example will generate a graphic from the report.\nimport matplotlib.pyplot as plt\nimport numpy as np\n\n\ndef format_month(month: str):\nmatch month:\ncase \"01\":\nreturn \"Jan\"\ncase \"02\":\nreturn \"Feb\"\ncase \"03\":\nreturn \"Mar\"\ncase \"04\":\nreturn \"Apr\"\ncase \"05\":\nreturn \"May\"\ncase \"06\":\nreturn \"Jun\"\ncase \"07\":\nreturn \"Jui\"\ncase \"08\":\nreturn \"Aug\"\ncase \"09\":\nreturn \"Sep\"\ncase \"10\":\nreturn \"Oct\"\ncase \"11\":\nreturn \"Nov\"\ncase \"12\":\nreturn \"Dec\"\n\n\ndef format_x_label(label: str):\nyear, month = label.split(\"-\")\nreturn f\"{format_month(month)} {year}\"\n\n\ndef generate_graph(file_path: str, data):\ndates = []\nvalues = []\nfor value in data:\ndates.append(np.datetime64(value[\"date\"]))\nvalues.append(value[\"securityIndex\"])\n\n# create two subplots with the shared x and y axes\nfig, (ax) = plt.subplots(figsize=(10, 5))\n\nax.plot(dates, values, lw=2, color=\"#4e828f\")\nax.grid(True)\n\nax.set_ylabel(\"Security score\")\nlabels = ax.get_xticklabels()\nfor label in labels:\nlabel._text = format_x_label(label._text)\nax.set_xticklabels(labels)\n\nax.set_ylim(min(values) - 10, 100)\n\nfig.suptitle(\"Evolution of the team security score\")\nfig.autofmt_xdate()\n\nplt.savefig(file_path)\nplt.close()\nreturn file_path"}},"/guides":{"title":"Our guides in video","data":{"":"We made a series of videos to help you understand how to use the CLI."}},"/":{"title":"Documentation","data":{"":"Dashlane CLI is a command line interface for Dashlane. It allows you to interact with your Dashlane account, and to manage your passwords and personal data.Dashlane CLI also allows you to access team admin related features such as accessing your team's member list, Dark Web Insights reports and activity logs.This documentation is separated in two parts:"}},"/install":{"title":"Install","data":{"":"The Dashlane CLI can be installed in multiple ways. You can either install it using Homebrew on macOS and Linux, manually with Yarn or download the packaged executables for Windows, macOS and Linux on x64 architectures.\n\nYou can install the Dashlane CLI using Homebrew, a package manager for macOS and Linux.To install Homebrew, run the following command in your terminal:\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\nThen you need to run the following command:\nbrew install dashlane/tap/dashlane-cli\nThe CLI is now installed on your machine, it will be updated automatically when a new version is released.\n\nThis method is available on every environment that supports Node.js and Yarn.First you need to download or git clone this repository and run the following commands in the root directory of the repository.Install the dependencies:\nyarn\nIn order to build:\nyarn run build\nIn order to link:\nyarn link\nMake sure to pull the latest changes and rebuild the project to get the latest version of the CLI.\n\nHead to the releases page and download the latest version of the CLI for your platform (Windows, macOS or Linux).You may need to mark the binary as executable (on macOS and Linux):\nchmod +x dcli-macos-x64\nYou can now try to run the CLI from the current directory in a terminal (Shell, PowerShell, etc.):\n./dcli-macos-x64\nMove the executable binary to the bin folder of your choice, for instance:\n# On macOS:\nmv dcli-macos-x64 /usr/local/bin/dcli\n\n# On Linux:\nmv dcli-linux-x64 /usr/local/bin/dcli\n\n# On Windows:\nmove dcli-win-x64.exe C:\\Windows\\System32\\dcli.exe\nOn macOS, you may also need to allow the binary to run in your security settings.\nTo do so, go to System Preferences > Security & Privacy > General and click on \"Allow Anyway\" next to the message \"dcli-macos was blocked from use because it is not from an identified developer\".You will need to get the latest version of the CLI manually by downloading the latest release and replacing the binary in your bin folder.","whats-next#What's next?":"Authenticate to your personal account\nGetting Started with Business Commands"}},"/logout":{"title":"Logout","data":{"":"If you want to start fresh with the CLI or use another account, you can logout and reset the local data by running the following command:\ndcli logout\n\nThis does not perform an account reset, it only resets the local data on the device.\nA confirmation will be asked, then the local database containing your encrypted data will be wiped and any entry related to the CLI will be removed from the OS keychain."}},"/personal/authentication":{"title":"Authentication","data":{"":"To start with launch a first manual sync:\ndcli sync\nAuthenticating to your personal vault requires your email.\nYou will be then asked to validate a second factor to register the CLI to your account.","supported-primary-authentication-methods#Supported primary authentication methods":"Master Password\nSSO (self-hosted only)\n\n\nConfidential SSO (using Nitro Enclaves) and Password-Less authentication are not supported yet.","requirements-for-sso-authentication#Requirements for SSO authentication":"You must have:\nthe latest Chrome browser installed on your machine\na visual interface to be able to authenticate in the browser\na machine that has a keychain (macOS, Windows, Linux with libsecret installed for instance)\n\nThe CLI will open a new incognito tab to authenticate you to your SSO provider.","supported-2fa-methods#Supported 2FA methods":"Email code validation (default)\nTOTP code validation (via an authenticator app)\nDashlane Authenticator push notification\nDUO push notification\n\nBy completing the device registration process, you'll be now asked to enter your Master Password.","options#Options":"By default your Master Password will be saved locally in the OS keychain so you don't have to enter it every time.\nYou can disable this behavior with the following command:\ndcli configure save-master-password false"}},"/personal/backup":{"title":"Backup your local Vault","data":{"":"By using the backup command, you can backup your local vault to a given directory and filename.\nThe command will perform a sync prior to the backup to ensure that the latest data is pulled from the Dashlane servers.The backup is a sqlite3 database file containing all your secrets encrypted by your master password.\n# By default the backup file is stored in the current directory and named dashlane-backup-<timestamp>.db\ndcli backup\n\n# You can specify the directory and filename\ndcli backup --filename <filename> --directory <directory>\nThe database is composed of 3 tables:\ndevice: contains the current device information and configuration (including your device secrets)\ntransactions: contains all the transactions that composed your vault (the type determines if the transaction is a password, a note, a credit card, etc.)\nsyncUpdates: contains the sync updates when the data was pulled from the Dashlane servers"}},"/personal/devices":{"title":"Managing your devices","data":{"":"","list-your-devices#List your devices":"dcli devices list\nYou'll get a list of all your devices, with their ID, name, and platform.\nf6110572 Chrome - Linux server_standalone other\ne96c8942 Firefox - Ubuntu server_standalone other\n9d7fc86f Chrome - Mac OS server_standalone other\n61e815b5 Dashlane CLI server_standalone current\nYou can also request the result in JSON format:\ndcli devices list --json","remove-devices-from-your-account#Remove devices from your account":"Devices that are removed from your account will need to re-authenticate to Dashlane again.\nThis is useful if you want to remove a device that you no longer use, or you don't have access to anymore.","remove-specific-devices#Remove specific devices":"dcli devices remove <device-id-1> <device-id-2>","remove-all-devices-except-the-current-one#Remove all devices except the current one":"dcli devices remove --others","remove-all-devices-including-current-cli-device#Remove all devices including current CLI device":"dcli devices remove --all\n\nIf you remove the current CLI device, you will need to do a dcli logout in order to re-authenticate.","register-a-new-non-interactive-device#Register a new non-interactive device":"In case you want to access your vault in non-interactive environment like CIs or servers, you can register a new device with the register command.\ndcli devices register \"my_server\"\nNote that you will be prompted to validate the registration with a second factor authentication.This will create a new device named my_server and will print the device credentials.\nSave them in a safe place (like in a secure note), as you won't be able to retrieve them later.\nRun the suggested commands on your target device (your server or CI) to set the device credentials as environment variables.\nexport DASHLANE_DEVICE_ACCESS_KEY=bdd5[..redacted..]6eb\nexport DASHLANE_DEVICE_SECRET_KEY=99f7d9bd547c0[..redacted..]c93fa2118cdf7e3d0\nexport DASHLANE_LOGIN=email@domain.com\nexport DASHLANE_MASTER_PASSWORD=<insert your master password here>\nPlease, replace <insert your master password here> with your actual master password.\nOTP at each login and SSO are not supported for non-interactive devices. We recommend creating a dedicated Dashlane\naccount for your non-interactive devices.\nOnce you've set the environment variables, you can use the CLI to retrieve passwords, otp and notes and no interactive prompts will be shown."}},"/personal":{"title":"Get started with Personal Commands","data":{"":"Accessing your personal vault allows you to view your passwords, secure notes and OTP codes."}},"/personal/secrets/exec":{"title":"Load secrets into environment variables","data":{"":"The Dashlane CLI allows you to load secrets into environment variables. This is useful for example when you want to use secrets in your applications in development.By using secret references in your environment variables, you can load secrets from your Dashlane account into your environment variables and avoid having to store them in plain text in your code.","get-your-secret-reference#Get your secret reference":"Follow the guide in Read secrets references to learn how to get your secret reference.It should look like this: dl://<secret_identifier>/<field>?<transformer>","export-environment-variables#Export environment variables":"You can now export your secret reference into an environment variable :\nexport GITLAB_TOKEN='dl://mygitlabtoken/password'","use-your-secret-in-your-application#Use your secret in your application":"In your code you can for instance read the variable from the env:\nconst token = process.env.GITLAB_TOKEN;\n\nconsole.log(token);\nFinally, you can use the dcli exec command to run your application with the environment variables loaded from your Dashlane account.\ndcli exec -- node app.js\nThe stdin and stdout of your application will be piped to the terminal.\nEvery environment variable that starts with dl:// will be replaced by the secret value from your Dashlane account."}},"/personal/secrets/inject":{"title":"Load secrets into templated files","data":{"":"Using Dashlane CLI you can inject secrets into templated files.\nThis is useful for example to inject secrets into configuration files and avoid storing secrets in your repository.","get-your-secret-reference#Get your secret reference":"Follow the guide in Read secrets references to learn how to get your secret reference.It should look like this: dl://<secret_identifier>/<field>?<transformer>","use-secret-references-in-your-config-file#Use secret references in your config file":"In your template config file, use the secret reference as a placeholder for the value you want to inject.The secret reference must be enclosed in double curly braces {{ }}.For instance, let's create a template config file for a fictive API:\napi:\nurl: https://api.example.com\nport: 443\naccess_token: '{{ dl://<secret_identifier>/<field> }}'","inject-secrets-into-your-config-file#Inject secrets into your config file":"Use the dcli inject command to inject secrets into your config file.\ndcli inject --in config.yaml.template --out config.yaml\nIn output file, the secret reference is replaced by the plaintext secret value.\n\n\nMake sure to delete the resolved config file if you no longer need it."}},"/personal/secrets/read":{"title":"Read secrets references","data":{"":"A secret reference is an URI starting by dl:// that points to a secret stored in your vault.You can use a secret reference to securely load a secret from your vault into environment variables, scripts or configuration files.","structure-of-secret-references#Structure of secret references":"The URI is composed of 4 parts:\nThe scheme dl://\nThe identifier of the secret (or its title)\n(optionally) the field of the secret to load\n(optionally) a transformer to apply to the secret\n\n\ndl://<secret_identifier>[/<field>][?<transformer>]","secret-identifier#Secret identifier":"The secret identifier is the unique identifier of the secret in your vault (it can be either a password or a secure note).\nYou can get this identifier by displaying the full json of a secret with the command dcli password <title> -o json.\n# You will find them in the \"id\" field of the json\n{\n\"creationDatetime\": \"1691073205\",\n\"id\": \"{QD145B53-B987-4CFE-9408-F25803DC47A4}\",\n...\n}\nNote: Make sure to remove the {} around the identifier before using it in the path. In this example it is QD145B53-B987-4CFE-9408-F25803DC47A4.Alternatively, you can use the title of the secret instead of its identifier. In this case, the secret will be loaded by searching for its title in your vault.\nIf multiple secrets have the same title, the first one will be loaded.","field#Field":"The field is the name of the field of the secret to load. If not specified, the whole secret will be loaded in a JSON format.","transformer#Transformer":"The transformer is a function that will be applied to the secret field before loading it. It can be used to format the secret in a specific way.Available transformers:\n?otp to generate a one-time password from a secret key\n?otp+expiry to generate a one-time password from a secret key and display its expiry date (in seconds)\n?json=<JSONPathQuery> to extract a value from a JSON object\n(please refer to JSONPath documentation for more information)","read-a-secret-reference#Read a secret reference":"You can simply use the dcli read <path> command to read a secret reference.\n# Read the whole secret\ndcli read dl://<secret_identifier>\n\n# Read a specific field of the secret\ndcli read dl://<secret_identifier>/<field>\n\n# Read a specific field of the secret and apply a transformer\ndcli read dl://<secret_identifier>/<field>?<transformer>\nNote: Accessing a secret with the secret identifier is faster than using the title of the secret as it does not require to decrypt the whole vault."}},"/personal/vault":{"title":"Accessing your Vault","data":{"":"For now accessing your vault is read only.","get-a-password#Get a password":"dcli p mywebsite\n# will return any entry for which either the url or the title matches mywebsite\n\ndcli p id=xxxxxx\n# will return any entry for which the id matches xxxxxx\n\ndcli p url=someurl title=mytitle\n# will return any entry for which the url matches someurl, or the title matches mytitle\n\ndcli p url,title=mywebsite\n# will return any entry for which either the url or the title matches mywebsite\nNote: You can select a different output for passwords among clipboard, password, json. The JSON option outputs all the matching credentials.","generate-an-otp-code#Generate an OTP code":"You can get an OTP code from your vault as well as the remaining time before it expires.\nJust use the otp or o command and filter similarly to the password command:\ndcli otp [filters]","get-a-secure-note#Get a secure note":"In order to get a secure note, just use the note or n command and define some filters (similarly to the password command).\nYou can also select a different output for notes among text, json. The JSON option outputs all the matching notes.\ndcli note [filters]\n\n# Example with a JSON output\ndcli note tilte=sample.md -o json","options#Options":"By default an automatic synchronization is performed once per hour.\nYou can change this behavior with the following command:\ndcli configure disable-auto-sync true","use-cases#Use cases":"","use-ssh-keys-from-your-vault#Use SSH Keys from your vault":"This use case shows you how to use Dashlane to store your SSH keys and use them to connect to your servers.\nThis could be useful if you want to share SSH keys with your team.Let's say you have generated a new SSH key pair and you want to store it in Dashlane.\n# this is an example, use the parameters you want\nssh-keygen -t rsa -b 4096 -C \"Dashlane SSH demo key\"\nCopy the private key to your clipboard and store it in a new secure note (named SSH_DEMO_KEY in our example) in Dashlane via the extension.\nIt is important to include the headers of the key (-----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY-----) in the secure note.Now, make sure your CLI is synchronized:\ndcli sync\nOnce done, you can retrieve the private key from your vault and inject it in your SSH agent:\ndcli n SSH_DEMO_KEY | ssh-add -"}},"/troubleshooting":{"title":"Troubleshooting","data":{"":"Here are a few common issues and how to fix them.","mismatching-signatures#Mismatching signatures":"If you are using the CLI in multiple environments, and particularly in an IDE like WebStorm, they may use different\nOS keychain environments so the local keys may not match: the reason why signatures are invalid.To detect this problem you can, on Linux, install secret-tool: sudo apt install libsecret-tools, execute\nsecret-tool search service dashlane-cli on every environment and check if the secrets match.If they don't, you can fix the error by manually editing what is stored in the OS keychain using this command:\nsecret-tool store --label \"dashlane-cli@<dashlaneId>\" service dashlane-cli account <dashlaneId> in the\nfailing environment with the secret from the healthy environment.","requesterror-unable-to-verify-the-first-certificate#RequestError: unable to verify the first certificate":"In NodeJS the list of certificate authorities is hardcoded, read more here: nodejs/node#4175.\nYou can use an environment variable to add custom certs (see documentation):\n\n\nexport NODE_EXTRA_CA_CERTS=\"/path/to/cert.pem\"\n\n\n\n$Env:NODE_EXTRA_CA_CERTS=\"C:\\certs\\root.crt\"\n\n\n\nset NODE_EXTRA_CA_CERTS=\"C:\\certs\\root.crt\"\n\n\nSee the issue #46."}}} \ No newline at end of file diff --git a/_next/static/QB-CkHrwo3N1ogg9zdZpc/_buildManifest.js b/_next/static/qjmU6Caiga2py_P11XaGf/_buildManifest.js similarity index 100% rename from _next/static/QB-CkHrwo3N1ogg9zdZpc/_buildManifest.js rename to _next/static/qjmU6Caiga2py_P11XaGf/_buildManifest.js diff --git a/_next/static/QB-CkHrwo3N1ogg9zdZpc/_ssgManifest.js b/_next/static/qjmU6Caiga2py_P11XaGf/_ssgManifest.js similarity index 100% rename from _next/static/QB-CkHrwo3N1ogg9zdZpc/_ssgManifest.js rename to _next/static/qjmU6Caiga2py_P11XaGf/_ssgManifest.js diff --git a/business.html b/business.html index d7968781..80d1e51f 100644 --- a/business.html +++ b/business.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } - </style><meta property="og:url" content="https://dashlane.github.io/dashlane-cli/business"/><meta property="og:title" content="Dashlane CLI"/><meta property="og:description" content="Learn how to access your Dashlane vault and API endpoints from the command line."/><link rel="icon" href="/dashlane-cli/favicon.png" type="image/png"/><meta name="next-head-count" content="11"/><link rel="preload" href="/dashlane-cli/_next/static/css/75660a9d0f8e50cc.css" as="style"/><link rel="stylesheet" href="/dashlane-cli/_next/static/css/75660a9d0f8e50cc.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/dashlane-cli/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/dashlane-cli/_next/static/chunks/webpack-a878ec2699a28d29.js" defer=""></script><script src="/dashlane-cli/_next/static/chunks/framework-7a7e500878b44665.js" defer=""></script><script src="/dashlane-cli/_next/static/chunks/main-2c2060a4808dc268.js" defer=""></script><script src="/dashlane-cli/_next/static/chunks/pages/_app-aea6920bd27938ca.js" defer=""></script><script src="/dashlane-cli/_next/static/chunks/830-2ec9f5dd75ad9357.js" defer=""></script><script src="/dashlane-cli/_next/static/chunks/pages/business-3e1c43816c3abf3f.js" defer=""></script><script src="/dashlane-cli/_next/static/QB-CkHrwo3N1ogg9zdZpc/_buildManifest.js" defer=""></script><script src="/dashlane-cli/_next/static/QB-CkHrwo3N1ogg9zdZpc/_ssgManifest.js" defer=""></script></head><body><div id="__next"><script>!function(){try{var d=document.documentElement,c=d.classList;c.remove('light','dark');var e=localStorage.getItem('theme');if('system'===e||(!e&&true)){var t='(prefers-color-scheme: dark)',m=window.matchMedia(t);if(m.media!==t||m.matches){d.style.colorScheme = 'dark';c.add('dark')}else{d.style.colorScheme = 'light';c.add('light')}}else if(e){c.add(e|| '')}if(e==='light'||e==='dark')d.style.colorScheme=e}catch(e){}}()</script><div dir="ltr"><script>document.documentElement.setAttribute('dir','ltr')</script><div class="nextra-nav-container nx-sticky nx-top-0 nx-z-20 nx-w-full nx-bg-transparent print:nx-hidden"><div class="nextra-nav-container-blur nx-pointer-events-none nx-absolute nx-z-[-1] nx-h-full nx-w-full nx-bg-white dark:nx-bg-dark nx-shadow-[0_2px_4px_rgba(0,0,0,.02),0_1px_0_rgba(0,0,0,.06)] dark:nx-shadow-[0_-1px_0_rgba(255,255,255,.1)_inset] contrast-more:nx-shadow-[0_0_0_1px_#000] contrast-more:dark:nx-shadow-[0_0_0_1px_#fff]"></div><nav class="nx-mx-auto nx-flex nx-h-[var(--nextra-navbar-height)] nx-max-w-[90rem] nx-items-center nx-justify-end nx-gap-2 nx-pl-[max(env(safe-area-inset-left),1.5rem)] nx-pr-[max(env(safe-area-inset-right),1.5rem)]"><a class="nx-flex nx-items-center hover:nx-opacity-75 ltr:nx-mr-auto rtl:nx-ml-auto" href="/dashlane-cli"><svg width="119" height="24" viewBox="0 0 119 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M41.2983 15.4759C41.3313 16.5292 41.6817 17.3552 42.3496 17.9538L42.3474 17.9593C43.0513 18.5871 44.0234 18.9011 45.2637 18.9011C45.9343 18.9145 46.5999 18.7844 47.2156 18.5195C47.7449 18.2904 48.1961 17.9133 48.5147 17.4341C48.8297 16.9439 48.9907 16.3713 48.9771 15.7895C48.9844 15.1097 48.8211 14.5345 48.4872 14.0638C48.1532 13.5931 47.6395 13.2239 46.9459 12.9564L45.2681 12.2986C44.7676 12.0968 44.4116 11.898 44.2003 11.7022C44.0992 11.6131 44.0184 11.5036 43.9635 11.3808C43.9087 11.258 43.8809 11.125 43.8821 10.9906C43.8766 10.8523 43.9036 10.7147 43.9609 10.5887C44.0182 10.4627 44.1043 10.3518 44.2124 10.2648C44.4281 10.0872 44.7239 9.99835 45.0997 9.99835C45.5525 9.99908 45.8989 10.1237 46.1389 10.3722C46.3547 10.5952 46.474 10.9062 46.4967 11.3053C46.4987 11.3446 46.5158 11.3817 46.5445 11.4089C46.5732 11.436 46.6113 11.4511 46.6509 11.4511H48.6875C48.729 11.4488 48.7679 11.4304 48.7959 11.3999C48.8239 11.3693 48.8388 11.329 48.8373 11.2877C48.8259 10.7276 48.654 10.1823 48.342 9.71614C48.0299 9.24997 47.5906 8.88228 47.0758 8.65637C46.4684 8.3822 45.8071 8.24696 45.1404 8.26057C44.4887 8.24706 43.8417 8.37228 43.2425 8.62786C42.7316 8.84381 42.295 9.2035 41.9863 9.66286C41.6885 10.1231 41.5352 10.6613 41.546 11.2088C41.5287 11.8089 41.711 12.3978 42.0645 12.8841C42.4109 13.3497 42.921 13.7067 43.5948 13.9552L45.4146 14.6602C45.8762 14.8378 46.1962 15.0206 46.3745 15.2084C46.5578 15.4105 46.6536 15.6765 46.641 15.9485C46.6499 16.1029 46.6226 16.2573 46.5612 16.3995C46.4999 16.5416 46.4062 16.6676 46.2876 16.7675C46.052 16.9597 45.7177 17.0558 45.2846 17.0558C44.7746 17.0566 44.3727 16.9027 44.0792 16.5943C43.8098 16.3158 43.663 15.9379 43.6388 15.4606C43.6366 15.4213 43.6194 15.3844 43.5907 15.3573C43.5621 15.3302 43.5242 15.315 43.4847 15.3148H41.4491C41.4077 15.3165 41.3687 15.3344 41.3405 15.3645C41.3122 15.3947 41.2971 15.4347 41.2983 15.4759ZM23.5212 8.58762C23.4921 8.61661 23.4757 8.65593 23.4757 8.69693V18.4559C23.476 18.4968 23.4924 18.536 23.5215 18.5649C23.5505 18.5939 23.5899 18.6102 23.6309 18.6105H27.2892C28.338 18.6105 29.2525 18.3847 30.0327 17.9329C30.7903 17.5042 31.4108 16.871 31.8228 16.1064C32.2307 15.3259 32.4437 14.459 32.4437 13.5792C32.4437 12.6993 32.2307 11.8324 31.8228 11.052C31.4082 10.2892 30.7883 9.6567 30.0327 9.22539C29.2518 8.77002 28.3373 8.54234 27.2892 8.54234H23.6309C23.5898 8.54234 23.5503 8.55863 23.5212 8.58762ZM28.6929 16.2281C28.2038 16.5219 27.64 16.6693 27.0691 16.6524L25.9682 16.6502C25.927 16.6502 25.8875 16.6339 25.8584 16.6049C25.8293 16.5759 25.8129 16.5366 25.8129 16.4956V10.6496C25.8129 10.6086 25.8293 10.5693 25.8584 10.5403C25.8875 10.5113 25.927 10.495 25.9682 10.495H27.0691C27.64 10.4781 28.2038 10.6254 28.6929 10.9193C29.1306 11.1911 29.4794 11.5839 29.6969 12.0497C29.9157 12.5282 30.0288 13.0479 30.0288 13.5737C30.0288 14.0995 29.9157 14.6191 29.6969 15.0977C29.4798 15.5637 29.1309 15.9566 28.6929 16.2281ZM59.3905 8.54125H61.4173C61.4585 8.54125 61.498 8.55753 61.5271 8.58652C61.5562 8.61551 61.5725 8.65483 61.5725 8.69583V16.3859C61.5725 16.4269 61.5889 16.4663 61.618 16.4953C61.6471 16.5242 61.6866 16.5405 61.7278 16.5405H65.1725C65.2135 16.5408 65.2527 16.5572 65.2815 16.5862C65.3104 16.6152 65.3266 16.6543 65.3266 16.6951V18.4581C65.3266 18.4988 65.3104 18.5379 65.2815 18.5667C65.2526 18.5954 65.2134 18.6116 65.1725 18.6116H59.3872C59.3463 18.6116 59.3069 18.5955 59.2779 18.5667C59.2488 18.538 59.2323 18.4989 59.232 18.4581V8.70022C59.232 8.67992 59.236 8.65982 59.2438 8.64106C59.2516 8.62231 59.2631 8.60527 59.2775 8.59091C59.2919 8.57655 59.309 8.56517 59.3278 8.5574C59.3467 8.54963 59.3669 8.54563 59.3872 8.54563L59.3905 8.54125ZM78.3448 8.54344H76.1959C76.1549 8.54344 76.1156 8.55957 76.0865 8.58833C76.0574 8.61708 76.0409 8.65612 76.0406 8.69693V18.4548C76.0406 18.4751 76.0447 18.4952 76.0525 18.514C76.0603 18.5328 76.0717 18.5498 76.0861 18.5641C76.1005 18.5785 76.1176 18.5899 76.1365 18.5977C76.1553 18.6054 76.1755 18.6094 76.1959 18.6094H78.1236C78.1647 18.6094 78.2042 18.5931 78.2333 18.5641C78.2624 18.5352 78.2788 18.4958 78.2788 18.4548V12.7097C78.2788 12.6753 78.2904 12.642 78.3116 12.6148C78.3328 12.5877 78.3625 12.5684 78.396 12.56C78.4294 12.5516 78.4648 12.5545 78.4964 12.5683C78.528 12.5821 78.5541 12.606 78.5705 12.6363L81.7433 18.5272C81.7567 18.5518 81.7763 18.5724 81.8003 18.5868C81.8243 18.6013 81.8518 18.6091 81.8798 18.6094H84.0288C84.07 18.6094 84.1094 18.5931 84.1386 18.5641C84.1677 18.5352 84.184 18.4958 84.184 18.4548V8.69693C84.184 8.67668 84.18 8.65663 84.1722 8.63794C84.1644 8.61924 84.1529 8.60227 84.1385 8.588C84.1241 8.57374 84.1069 8.56246 84.0881 8.55481C84.0693 8.54716 84.0491 8.54329 84.0288 8.54344H82.1011C82.0601 8.54344 82.0208 8.55957 81.9917 8.58833C81.9627 8.61708 81.9462 8.65612 81.9459 8.69693V14.442C81.9459 14.4764 81.9343 14.5098 81.9131 14.5369C81.8919 14.5641 81.8622 14.5834 81.8287 14.5918C81.7952 14.6002 81.7599 14.5973 81.7283 14.5835C81.6967 14.5696 81.6706 14.5457 81.6541 14.5155L78.4813 8.62457C78.4681 8.59997 78.4485 8.57942 78.4244 8.56512C78.4004 8.55083 78.3728 8.54333 78.3448 8.54344ZM85.3543 8.54344H91.2232C91.2436 8.54329 91.2637 8.54716 91.2825 8.55481C91.3014 8.56246 91.3185 8.57374 91.3329 8.58801C91.3474 8.60227 91.3588 8.61924 91.3666 8.63794C91.3744 8.65663 91.3785 8.67668 91.3785 8.69693V10.2582C91.3782 10.299 91.3617 10.338 91.3326 10.3668C91.3035 10.3956 91.2642 10.4117 91.2232 10.4117H87.6926C87.6515 10.4117 87.612 10.428 87.5829 10.457C87.5537 10.486 87.5374 10.5253 87.5374 10.5663V12.5398C87.5377 12.5806 87.5542 12.6196 87.5833 12.6484C87.6123 12.6772 87.6516 12.6933 87.6926 12.6933H91.2232C91.2644 12.6933 91.3039 12.7096 91.333 12.7386C91.3621 12.7676 91.3785 12.8069 91.3785 12.8479V14.3653C91.3785 14.4063 91.3621 14.4456 91.333 14.4746C91.3039 14.5036 91.2644 14.5199 91.2232 14.5199H87.6926C87.6515 14.5199 87.612 14.5362 87.5829 14.5652C87.5537 14.5942 87.5374 14.6335 87.5374 14.6745V16.58C87.5374 16.621 87.5537 16.6603 87.5829 16.6893C87.612 16.7183 87.6515 16.7346 87.6926 16.7346H91.2232C91.2642 16.7346 91.3035 16.7507 91.3326 16.7795C91.3617 16.8082 91.3782 16.8473 91.3785 16.8881V18.4494C91.3785 18.4904 91.3621 18.5297 91.333 18.5587C91.3039 18.5877 91.2644 18.6039 91.2232 18.6039H85.3543C85.3131 18.6039 85.2736 18.5877 85.2445 18.5587C85.2154 18.5297 85.1991 18.4904 85.1991 18.4494V8.69145C85.1991 8.65074 85.2153 8.6117 85.2442 8.58291C85.2731 8.55413 85.3123 8.53796 85.3532 8.53796L85.3543 8.54344ZM37.8018 8.61799L41.1607 18.457V18.4548C41.1629 18.4668 41.1629 18.4791 41.1607 18.491C41.1607 18.5201 41.149 18.548 41.1284 18.5685C41.1078 18.5891 41.0798 18.6007 41.0506 18.6007H38.8554C38.822 18.601 38.7894 18.5905 38.7625 18.5707C38.7357 18.5509 38.7161 18.5229 38.7067 18.491L38.284 16.9999H34.9196L34.4969 18.491C34.4873 18.5228 34.4677 18.5507 34.4409 18.5705C34.4141 18.5903 34.3816 18.6008 34.3482 18.6007H32.1552C32.1428 18.6023 32.1302 18.6023 32.1178 18.6007C32.1033 18.5963 32.0899 18.5891 32.0784 18.5794C32.0668 18.5697 32.0574 18.5578 32.0507 18.5443C32.044 18.5309 32.0401 18.5161 32.0394 18.5011C32.0386 18.4861 32.0409 18.4711 32.0463 18.457L35.3919 8.61799C35.3992 8.59489 35.4139 8.57483 35.4338 8.56095C35.4537 8.54706 35.4777 8.54014 35.502 8.54124H37.6917C37.716 8.54014 37.74 8.54706 37.7599 8.56095C37.7798 8.57483 37.7945 8.59489 37.8018 8.61799ZM36.4961 11.4719L35.4976 14.9869L35.4899 14.9815C35.4882 14.9949 35.4882 15.0086 35.4899 15.022C35.4899 15.0616 35.5057 15.0995 35.5337 15.1275C35.5618 15.1554 35.5999 15.1711 35.6396 15.1711H37.5706C37.5841 15.1733 37.5978 15.1733 37.6113 15.1711C37.6303 15.1658 37.648 15.1568 37.6634 15.1447C37.6789 15.1326 37.6918 15.1175 37.7014 15.1004C37.711 15.0833 37.7172 15.0645 37.7195 15.045C37.7218 15.0255 37.7202 15.0058 37.7148 14.9869L36.7163 11.4719C36.7163 11.4428 36.7047 11.4149 36.6841 11.3944C36.6634 11.3738 36.6354 11.3623 36.6062 11.3623C36.577 11.3623 36.549 11.3738 36.5284 11.3944C36.5077 11.4149 36.4961 11.4428 36.4961 11.4719ZM75.1401 18.457L71.7823 8.61799C71.7751 8.59489 71.7603 8.57483 71.7404 8.56095C71.7205 8.54706 71.6965 8.54014 71.6723 8.54124H69.4814C69.4572 8.54014 69.4332 8.54706 69.4133 8.56095C69.3934 8.57483 69.3786 8.59489 69.3714 8.61799L66.0268 18.457C66.0215 18.4711 66.0192 18.4861 66.0199 18.5011C66.0207 18.5161 66.0245 18.5309 66.0312 18.5443C66.038 18.5578 66.0474 18.5697 66.0589 18.5794C66.0705 18.5891 66.0839 18.5963 66.0984 18.6007C66.1104 18.6022 66.1226 18.6022 66.1347 18.6007H68.3277C68.3611 18.601 68.3937 18.5905 68.4205 18.5707C68.4474 18.5509 68.467 18.5229 68.4763 18.491L68.9002 16.9999H72.2634L72.6873 18.491C72.6967 18.5229 72.7162 18.5509 72.7431 18.5707C72.7699 18.5905 72.8025 18.601 72.8359 18.6007H75.0289C75.0581 18.6007 75.0861 18.5891 75.1068 18.5685C75.1274 18.548 75.139 18.5201 75.139 18.491C75.1406 18.479 75.1406 18.4668 75.139 18.4548L75.1401 18.457ZM69.4759 14.9847L70.4745 11.4697C70.4781 11.4551 70.4847 11.4414 70.4939 11.4294C70.5031 11.4175 70.5147 11.4075 70.5279 11.4002C70.5411 11.3929 70.5557 11.3884 70.5708 11.387C70.5858 11.3855 70.601 11.3872 70.6154 11.3919C70.6339 11.3973 70.6508 11.4073 70.6644 11.4209C70.6781 11.4345 70.6881 11.4513 70.6935 11.4697L71.6921 14.9847C71.7029 15.023 71.6982 15.0639 71.6788 15.0987C71.6594 15.1334 71.6269 15.1591 71.5886 15.17C71.5753 15.1735 71.5616 15.1753 71.5479 15.1755H69.6202C69.5804 15.1752 69.5424 15.1595 69.5142 15.1316C69.486 15.1037 69.4699 15.066 69.4693 15.0264C69.4694 15.0123 69.4716 14.9982 69.4759 14.9847ZM55.9843 8.54344H58.0133V8.54234C58.0543 8.54234 58.0936 8.55848 58.1227 8.58723C58.1518 8.61599 58.1683 8.65502 58.1685 8.69583V18.4537C58.1685 18.4947 58.1522 18.5341 58.1231 18.563C58.094 18.592 58.0545 18.6083 58.0133 18.6083H55.9843C55.9432 18.6083 55.9037 18.592 55.8746 18.563C55.8455 18.5341 55.8291 18.4947 55.8291 18.4537V14.7655C55.8291 14.7245 55.8128 14.6851 55.7837 14.6562C55.7545 14.6272 55.7151 14.6109 55.6739 14.6109H52.4912C52.45 14.6109 52.4105 14.6272 52.3814 14.6562C52.3523 14.6851 52.3359 14.7245 52.3359 14.7655V18.4537C52.3357 18.4945 52.3192 18.5336 52.2901 18.5623C52.261 18.5911 52.2217 18.6072 52.1807 18.6072H50.1517C50.1108 18.6072 50.0715 18.5911 50.0424 18.5623C50.0133 18.5336 49.9968 18.4945 49.9965 18.4537V8.69583C49.9965 8.65483 50.0129 8.61551 50.042 8.58652C50.0711 8.55753 50.1106 8.54125 50.1517 8.54125H52.1807C52.2214 8.54152 52.2604 8.5576 52.2894 8.58606C52.3184 8.61452 52.3351 8.65311 52.3359 8.69364V12.4576C52.3359 12.4986 52.3523 12.5379 52.3814 12.5669C52.4105 12.5959 52.45 12.6122 52.4912 12.6122H55.6739C55.6943 12.6122 55.7145 12.6082 55.7333 12.6004C55.7521 12.5926 55.7692 12.5812 55.7837 12.5669C55.7981 12.5525 55.8095 12.5355 55.8173 12.5167C55.8251 12.498 55.8291 12.4779 55.8291 12.4576V8.69693C55.8294 8.65612 55.8459 8.61708 55.875 8.58833C55.904 8.55957 55.9434 8.54344 55.9843 8.54344Z" fill="currentColor"></path><path d="M17.8531 7.7189C17.8531 7.5701 17.7037 7.42131 17.4941 7.36179L14.9819 6.43966C14.5635 6.2611 14.085 6.46941 14.085 6.76743V17.25C14.085 17.3988 14.2344 17.5773 14.3838 17.6368L16.9558 18.559C17.3447 18.7078 17.8531 18.4994 17.8531 18.1717V7.7189ZM13.1578 4.05595C13.1578 3.90673 13.0084 3.75793 12.7988 3.69841L10.287 2.77628C9.86826 2.59772 9.38973 2.80604 9.38973 3.10406V9.4764C9.38973 9.6252 9.53914 9.80375 9.68855 9.86369L12.2605 10.7858C12.6494 10.935 13.1578 10.7263 13.1578 10.3989V4.05595ZM13.1578 15.5222C13.1578 15.3734 13.0084 15.2246 12.7988 15.1651L10.287 14.243C9.86826 14.0644 9.38973 14.2727 9.38973 14.5708V20.9431C9.38973 21.0919 9.53914 21.2704 9.68855 21.33L12.2605 22.2521C12.6494 22.4013 13.1578 22.1926 13.1578 21.8648V15.5222ZM8.46254 16.8031C8.46254 16.6543 8.31313 16.5051 8.10353 16.4456L5.59175 15.5235C5.17087 15.3449 4.69444 15.5532 4.69444 15.8513V22.6415C4.69444 22.7903 4.84385 22.9693 4.99326 23.0288L7.56523 23.9509C7.95412 24.1001 8.46254 23.8914 8.46254 23.564V16.8031ZM8.46254 1.3453C8.46254 1.1965 8.31313 1.04771 8.10353 0.988186L5.59175 0.0660556C5.17087 -0.112502 4.69444 0.0958149 4.69444 0.393831V7.18407C4.69444 7.33328 4.84385 7.51184 4.99326 7.57136L7.56523 8.49349C7.95412 8.64229 8.46254 8.43397 8.46254 8.1062V1.3453ZM3.7681 1.61356C3.7681 1.46476 3.61869 1.31554 3.40909 1.25602L0.897306 0.333893C0.478535 0.155335 0 0.363653 0 0.661668V22.4026C0 22.5514 0.149413 22.7299 0.299244 22.7894L2.87079 23.7116C3.25968 23.8604 3.7681 23.6521 3.7681 23.3243V1.61356Z" fill="currentColor"></path><path d="M103.403 8.5C104.136 8.5 104.786 8.64356 105.355 8.93069C105.923 9.21781 106.379 9.60363 106.721 10.0882C107.069 10.5727 107.276 11.1088 107.341 11.6965H105.735C105.665 11.3286 105.528 10.9966 105.326 10.7005C105.129 10.4 104.866 10.1644 104.537 9.99394C104.209 9.81898 103.819 9.73149 103.368 9.73149C102.79 9.73149 102.299 9.8616 101.896 10.1218C101.492 10.382 101.184 10.788 100.973 11.3398C100.766 11.8917 100.663 12.6027 100.663 13.4731C100.663 14.7876 100.895 15.7499 101.36 16.36C101.825 16.9657 102.494 17.2685 103.368 17.2685C103.819 17.2685 104.209 17.1765 104.537 16.9926C104.866 16.8042 105.129 16.5552 105.326 16.2456C105.528 15.9316 105.665 15.5906 105.735 15.2227H107.341C107.285 15.6489 107.168 16.0594 106.989 16.4542C106.811 16.8445 106.562 17.1945 106.242 17.504C105.928 17.8136 105.535 18.0581 105.066 18.2376C104.596 18.4125 104.042 18.5 103.403 18.5C102.483 18.5 101.694 18.2981 101.036 17.8943C100.378 17.4861 99.8736 16.9074 99.5213 16.1581C99.1738 15.4044 99 14.5027 99 13.4529C99 12.4076 99.1738 11.517 99.5213 10.7813C99.8689 10.0411 100.371 9.47577 101.029 9.08546C101.687 8.69515 102.478 8.5 103.403 8.5Z" fill="currentColor"></path><path d="M109.367 8.63459H110.896V17.1003H115.602V18.3654H109.36L109.367 8.63459Z" fill="currentColor"></path><path d="M117.492 8.63459H119V18.3654H117.492V8.63459Z" fill="currentColor"></path></svg></a><a class="nx-text-sm contrast-more:nx-text-gray-700 contrast-more:dark:nx-text-gray-100 nx-relative -nx-ml-2 nx-hidden nx-whitespace-nowrap nx-p-2 md:nx-inline-block nx-text-gray-600 hover:nx-text-gray-800 dark:nx-text-gray-400 dark:hover:nx-text-gray-200" aria-current="false" href="/dashlane-cli/install"><span class="nx-absolute nx-inset-x-0 nx-text-center">Install</span><span class="nx-invisible nx-font-medium">Install</span></a><a class="nx-text-sm contrast-more:nx-text-gray-700 contrast-more:dark:nx-text-gray-100 nx-relative -nx-ml-2 nx-hidden nx-whitespace-nowrap nx-p-2 md:nx-inline-block nx-text-gray-600 hover:nx-text-gray-800 dark:nx-text-gray-400 dark:hover:nx-text-gray-200" aria-current="false" href="/dashlane-cli/personal"><span class="nx-absolute nx-inset-x-0 nx-text-center">Personal</span><span class="nx-invisible nx-font-medium">Personal</span></a><a class="nx-text-sm contrast-more:nx-text-gray-700 contrast-more:dark:nx-text-gray-100 nx-relative -nx-ml-2 nx-hidden nx-whitespace-nowrap nx-p-2 md:nx-inline-block nx-text-gray-600 hover:nx-text-gray-800 dark:nx-text-gray-400 dark:hover:nx-text-gray-200" aria-current="false" href="/dashlane-cli/business"><span class="nx-absolute nx-inset-x-0 nx-text-center">Business</span><span class="nx-invisible nx-font-medium">Business</span></a><div class="nextra-search nx-relative md:nx-w-64 nx-hidden md:nx-inline-block mx-min-w-[200px]"><div class="nx-relative nx-flex nx-items-center nx-text-gray-900 contrast-more:nx-text-gray-800 dark:nx-text-gray-300 contrast-more:dark:nx-text-gray-300"><input spellcheck="false" class="nx-block nx-w-full nx-appearance-none nx-rounded-lg nx-px-3 nx-py-2 nx-transition-colors nx-text-base nx-leading-tight md:nx-text-sm nx-bg-black/[.05] dark:nx-bg-gray-50/10 focus:nx-bg-white dark:focus:nx-bg-dark placeholder:nx-text-gray-500 dark:placeholder:nx-text-gray-400 contrast-more:nx-border contrast-more:nx-border-current" type="search" placeholder="Search documentation…" value=""/></div></div><a href="https://github.com/Dashlane/dashlane-cli" target="_blank" rel="noreferrer" class="nx-p-2 nx-text-current"><svg width="24" height="24" fill="currentColor" viewBox="3 3 18 18"><title>GitHubGitHub (opens in a new tab)
Business
Get Started

Get started with Business Commands

+

Revoke credentials

💡
Needs to be authenticated as an admin to use this command.
-
dcli t credentials revoke <DASHLANE_TEAM_ACCESS_KEY>

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +
dcli t credentials revoke <DASHLANE_TEAM_ACCESS_KEY>

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/business/audit-logs.html b/business/audit-logs.html index 086f2a42..497acd77 100644 --- a/business/audit-logs.html +++ b/business/audit-logs.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Business
Audit Logs

Audit logs

+

Make sure to replace /path/to/script.sh with the actual path to the script. The other paths in the script are only examples and may not reflect the permissions of your system, you can change them to your needs.

-

Configure your SIEM agent to watch the logs.json file changes.


Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

Configure your SIEM agent to watch the logs.json file changes.


Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/business/members.html b/business/members.html index 6d3ddca6..d36123b0 100644 --- a/business/members.html +++ b/business/members.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Business
Members

Listing members

+
Business
Members

Listing members

💡
Needs team credentials to use this command.

Fetching the list of members

Listing team members allows you to access many information about them, such as their email, their role, their 2FA status, their security score, etc.

@@ -28,4 +28,4 @@

The dates will be displayed in the ISO 8601 format.

Note that keys ending with Unix will be converted to human readable dates and renamed to remove the Unix suffix.

Members interface

-
PropertyTypeDescription
membersArray of objectArray of team members
members.userIdnumber | undefinedThe user identifier of the user
members.loginstringUser login (usually email)
members.statusstringMember status
members.joinedDateUnixnumber | nullThe join date of member in Unix time
members.lastUpdateDateUnixnumber | nullLast updated date of member in Unix time
members.isBillingAdminbooleanTrue if user is a billing admin, false otherwise
members.isTeamCaptainbooleanTrue if user is a team captain, false otherwise
members.isGroupManagerbooleanTrue if user is a group manager, false otherwise
members.emailstring | undefinedThe user's account email
members.isAccountCreatedboolean | undefinedIf user account is created
members.invitedDateUnixnumberDate user was invited
members.tokenobjectThe user's invite token
members.token.userIdnumber | undefinedUser identifier associated with the token
members.token.teamIdnumber | undefinedTeam identifier associated with the token
members.token.tokenstring | undefinedValue of the invite token
members.token.isFreshboolean | undefinedTrue if token is not used, false otherwise
members.token.inviteUserIdnumber | undefinedThe user identifier of the inviter
members.revokedDateUnixnumber | nullWhen user's account was revoked in Unix time
members.languagestring | undefinedUser's preferred language
members.nbrPasswordsnumber | nullNumber of passwords stored by user
members.reusednumber | nullNumber of reused passwords
members.reusedDistinctnumber | nullNumber of distinct reused passwords
members.weakPasswordsnumber | nullNumber of weak passwords
members.compromisedPasswordsnumber | nullNumber of compromised passwords
members.averagePasswordStrengthnumber | nullAverage password strength score
members.passwordStrength0_19Countnumber | nullNumber of passwords between 0 to 19 characters
members.passwordStrength20_39Countnumber | nullNumber of passwords between 20 to 39 characters
members.passwordStrength40_59Countnumber | nullNumber of passwords between 40 to 59 characters
members.passwordStrength60_79Countnumber | nullNumber of passwords between 60 to 79 characters
members.passwordStrength80_100Countnumber | nullNumber of passwords between 80 to 100 characters
members.safePasswordsnumber | nullNumber of passwords considered safe
members.namestring | nullUser's name
members.securityIndexnumber | nullSecurity index
members.twoFAInformationobject2FA information for the user
members.twoFAInformation.type'sso' | 'email_token' | 'totp_device_registration' | 'totp_login' | undefined2FA type
members.twoFAInformation.phonestring | nullPhone number for 2FA
members.twoFAInformation.lastUpdateDateUnixnumber | nullLast updated date of 2FA in Unix time
members.hasPublicKeybooleanTrue if user has a public key
billingAdminsArray of stringArray of emails of billing admins
pagenumberCurrent page of results
pagesnumberTotal pages of results

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +
PropertyTypeDescription
membersArray of objectArray of team members
members.userIdnumber | undefinedThe user identifier of the user
members.loginstringUser login (usually email)
members.statusstringMember status
members.joinedDateUnixnumber | nullThe join date of member in Unix time
members.lastUpdateDateUnixnumber | nullLast updated date of member in Unix time
members.isBillingAdminbooleanTrue if user is a billing admin, false otherwise
members.isTeamCaptainbooleanTrue if user is a team captain, false otherwise
members.isGroupManagerbooleanTrue if user is a group manager, false otherwise
members.emailstring | undefinedThe user's account email
members.isAccountCreatedboolean | undefinedIf user account is created
members.invitedDateUnixnumberDate user was invited
members.tokenobjectThe user's invite token
members.token.userIdnumber | undefinedUser identifier associated with the token
members.token.teamIdnumber | undefinedTeam identifier associated with the token
members.token.tokenstring | undefinedValue of the invite token
members.token.isFreshboolean | undefinedTrue if token is not used, false otherwise
members.token.inviteUserIdnumber | undefinedThe user identifier of the inviter
members.revokedDateUnixnumber | nullWhen user's account was revoked in Unix time
members.languagestring | undefinedUser's preferred language
members.nbrPasswordsnumber | nullNumber of passwords stored by user
members.reusednumber | nullNumber of reused passwords
members.reusedDistinctnumber | nullNumber of distinct reused passwords
members.weakPasswordsnumber | nullNumber of weak passwords
members.compromisedPasswordsnumber | nullNumber of compromised passwords
members.averagePasswordStrengthnumber | nullAverage password strength score
members.passwordStrength0_19Countnumber | nullNumber of passwords between 0 to 19 characters
members.passwordStrength20_39Countnumber | nullNumber of passwords between 20 to 39 characters
members.passwordStrength40_59Countnumber | nullNumber of passwords between 40 to 59 characters
members.passwordStrength60_79Countnumber | nullNumber of passwords between 60 to 79 characters
members.passwordStrength80_100Countnumber | nullNumber of passwords between 80 to 100 characters
members.safePasswordsnumber | nullNumber of passwords considered safe
members.namestring | nullUser's name
members.securityIndexnumber | nullSecurity index
members.twoFAInformationobject2FA information for the user
members.twoFAInformation.type'sso' | 'email_token' | 'totp_device_registration' | 'totp_login' | undefined2FA type
members.twoFAInformation.phonestring | nullPhone number for 2FA
members.twoFAInformation.lastUpdateDateUnixnumber | nullLast updated date of 2FA in Unix time
members.hasPublicKeybooleanTrue if user has a public key
billingAdminsArray of stringArray of emails of billing admins
pagenumberCurrent page of results
pagesnumberTotal pages of results

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/business/reports.html b/business/reports.html index 68b9e9b6..3cd8791f 100644 --- a/business/reports.html +++ b/business/reports.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Business
Reports

Reports

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file + return file_path

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/guides.html b/guides.html index f4e51e56..e9c8aff8 100644 --- a/guides.html +++ b/guides.html @@ -9,6 +9,6 @@ .dark { --nextra-primary-hue: 204deg; } -
Guides

Our guides in video

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/index.html b/index.html index 0d78cbae..e98f73eb 100644 --- a/index.html +++ b/index.html @@ -9,10 +9,10 @@ .dark { --nextra-primary-hue: 204deg; } -

Documentation

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/install.html b/install.html index 84e09203..3a03dcc9 100644 --- a/install.html +++ b/install.html @@ -9,11 +9,11 @@ .dark { --nextra-primary-hue: 204deg; } -
Install

Install

+
Install

Install

The Dashlane CLI can be installed in multiple ways. You can either install it using Homebrew (opens in a new tab) on macOS and Linux, manually with Yarn (opens in a new tab) or download the packaged executables for Windows, macOS and Linux on x64 architectures.

You can install the Dashlane CLI using Homebrew (opens in a new tab), a package manager for macOS and Linux.

To install Homebrew, run the following command in your terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Then you need to run the following command:

brew install dashlane/tap/dashlane-cli

The CLI is now installed on your machine, it will be updated automatically when a new version is released.

What's next?


Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/logout.html b/logout.html index ea7d386f..d67176e9 100644 --- a/logout.html +++ b/logout.html @@ -9,8 +9,8 @@ .dark { --nextra-primary-hue: 204deg; } -
Logout

Logout

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

A confirmation will be asked, then the local database containing your encrypted data will be wiped and any entry related to the CLI will be removed from the OS keychain.


Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/personal.html b/personal.html index b214f2e3..d56d8e55 100644 --- a/personal.html +++ b/personal.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Personal
Get Started

Get started with Personal Commands

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/personal/authentication.html b/personal/authentication.html index 26af77b4..c020acdf 100644 --- a/personal/authentication.html +++ b/personal/authentication.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Personal
Authentication

Authentication

+

Apache 2023 © Dashlane, Inc.
\ No newline at end of file +
dcli configure save-master-password false

Apache 2023 © Dashlane, Inc.
\ No newline at end of file diff --git a/personal/backup.html b/personal/backup.html index e5e2b6eb..af15cb17 100644 --- a/personal/backup.html +++ b/personal/backup.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
Personal
Backup your local Vault

Backup your local Vault

+
Personal
Backup your local Vault

Backup your local Vault

By using the backup command, you can backup your local vault to a given directory and filename. The command will perform a sync prior to the backup to ensure that the latest data is pulled from the Dashlane servers.

The backup is a sqlite3 (opens in a new tab) database file containing all your secrets encrypted by your master password.

@@ -23,4 +23,4 @@
  • device: contains the current device information and configuration (including your device secrets)
  • transactions: contains all the transactions that composed your vault (the type determines if the transaction is a password, a note, a credit card, etc.)
  • syncUpdates: contains the sync updates when the data was pulled from the Dashlane servers
  • -

    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +

    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/personal/devices.html b/personal/devices.html index 1704b802..9928cd7b 100644 --- a/personal/devices.html +++ b/personal/devices.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
    Personal
    Managing your Devices

    Managing your devices

    +
    Personal
    Managing your Devices

    Managing your devices

    List your devices

    dcli devices list

    You'll get a list of all your devices, with their ID, name, and platform.

    @@ -43,4 +43,4 @@

    Please, replace <insert your master password here> with your actual master password.

    ⚠️

    OTP at each login and SSO are not supported for non-interactive devices. We recommend creating a dedicated Dashlane account for your non-interactive devices.

    -

    Once you've set the environment variables, you can use the CLI to retrieve passwords, otp and notes and no interactive prompts will be shown.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +

    Once you've set the environment variables, you can use the CLI to retrieve passwords, otp and notes and no interactive prompts will be shown.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/personal/secrets/exec.html b/personal/secrets/exec.html index 036b4ea7..2a54f483 100644 --- a/personal/secrets/exec.html +++ b/personal/secrets/exec.html @@ -9,11 +9,11 @@ .dark { --nextra-primary-hue: 204deg; } -
    Personal
    Load secrets
    Load secrets into environment variables

    Load secrets into environment variables

    +
    Personal
    Load secrets
    Load secrets into environment variables

    Load secrets into environment variables

    The Dashlane CLI allows you to load secrets into environment variables. This is useful for example when you want to use secrets in your applications in development.

    By using secret references in your environment variables, you can load secrets from your Dashlane account into your environment variables and avoid having to store them in plain text in your code.

    Get your secret reference

    Follow the guide in Read secrets references to learn how to get your secret reference.

    It should look like this: dl://<secret_identifier>/<field>?<transformer>

    Export environment variables

    You can now export your secret reference into an environment variable :

    export GITLAB_TOKEN='dl://mygitlabtoken/password'

    Use your secret in your application

    In your code you can for instance read the variable from the env:

    app.js
    const token = process.env.GITLAB_TOKEN;
      
     console.log(token);

    Finally, you can use the dcli exec command to run your application with the environment variables loaded from your Dashlane account.

    dcli exec -- node app.js

    The stdin and stdout of your application will be piped to the terminal. -Every environment variable that starts with dl:// will be replaced by the secret value from your Dashlane account.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +Every environment variable that starts with dl:// will be replaced by the secret value from your Dashlane account.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/personal/secrets/inject.html b/personal/secrets/inject.html index bc6ddb90..fb21e842 100644 --- a/personal/secrets/inject.html +++ b/personal/secrets/inject.html @@ -9,11 +9,11 @@ .dark { --nextra-primary-hue: 204deg; } -
    Personal
    Load secrets
    Load secrets into templated files

    Load secrets into templated files

    +
    Personal
    Load secrets
    Load secrets into templated files

    Load secrets into templated files

    Using Dashlane CLI you can inject secrets into templated files. This is useful for example to inject secrets into configuration files and avoid storing secrets in your repository.

    Get your secret reference

    Follow the guide in Read secrets references to learn how to get your secret reference.

    It should look like this: dl://<secret_identifier>/<field>?<transformer>

    Use secret references in your config file

    In your template config file, use the secret reference as a placeholder for the value you want to inject.

    The secret reference must be enclosed in double curly braces {{ }}.

    For instance, let's create a template config file for a fictive API:

    config.yaml.template
    api:
         url: https://api.example.com
         port: 443
    -    access_token: '{{ dl://<secret_identifier>/<field> }}'

    Inject secrets into your config file

    Use the dcli inject command to inject secrets into your config file.

    Inject secrets into config file
    dcli inject --in config.yaml.template --out config.yaml

    In output file, the secret reference is replaced by the plaintext secret value.

    Dashlane CLI inject secret

    ️🚫

    Make sure to delete the resolved config file if you no longer need it.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file + access_token: '{{ dl://<secret_identifier>/<field> }}'

    Inject secrets into your config file

    Use the dcli inject command to inject secrets into your config file.

    Inject secrets into config file
    dcli inject --in config.yaml.template --out config.yaml

    In output file, the secret reference is replaced by the plaintext secret value.

    Dashlane CLI inject secret

    ️🚫

    Make sure to delete the resolved config file if you no longer need it.


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/personal/secrets/read.html b/personal/secrets/read.html index 6eac18b1..a3a875fd 100644 --- a/personal/secrets/read.html +++ b/personal/secrets/read.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
    Personal
    Load secrets
    Read secrets references

    Read secrets references

    +

    Note: Accessing a secret with the secret identifier is faster than using the title of the secret as it does not require to decrypt the whole vault.

    -

    Dashlane CLI read otp


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +

    Dashlane CLI read otp


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/personal/vault.html b/personal/vault.html index acead49c..8d4ccde8 100644 --- a/personal/vault.html +++ b/personal/vault.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
    Personal
    Accessing your Vault

    Accessing your Vault

    +

    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +
    dcli n SSH_DEMO_KEY | ssh-add -

    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file diff --git a/troubleshooting.html b/troubleshooting.html index 344ef49b..e9341ab3 100644 --- a/troubleshooting.html +++ b/troubleshooting.html @@ -9,7 +9,7 @@ .dark { --nextra-primary-hue: 204deg; } -
    Troubleshooting

    Troubleshooting

    +

    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file +

    See the issue #46 (opens in a new tab).


    Apache 2023 © Dashlane, Inc.
    \ No newline at end of file