🔐 Open source password manager with Nextcloud integration
Go to file
2017-10-29 12:01:46 +01:00
appinfo Update app description 2017-08-06 14:32:29 +02:00
controller Fixes #238 - @brantje own solution 2017-10-16 22:41:20 +02:00
css Add feature to request vault destructions 2017-02-22 18:02:55 +01:00
docs Add docs about requesting vaults / credentials 2017-01-12 11:53:47 +01:00
img New awesome icon! 2017-05-06 13:32:18 +02:00
js Possible fix for deleting vault 2017-10-29 12:01:46 +01:00
l10n [tx-robot] updated from transifex 2017-10-29 00:20:46 +00:00
lib Add icon service 2017-08-06 21:16:15 +02:00
middleware Check HTTP_ORIGIN using isset 2017-01-19 13:58:34 +01:00
migration Fixes 2017-01-11 18:09:49 +01:00
sass Add feature to request vault destructions 2017-02-22 18:02:55 +01:00
templates fix #372 2017-10-16 22:21:21 +02:00
tests Add icon service 2017-08-06 21:16:15 +02:00
.dockerignore Added dockerfile 2016-10-19 18:13:32 +02:00
.drone.yml Update drone config 2017-07-28 16:22:18 +02:00
.drone.yml.sig Signed yaml file 2017-07-28 17:35:38 +02:00
.gitignore Update ignore file 2016-12-21 22:07:31 +01:00
.jshintrc Add JSHint, solve all problems 2016-10-07 19:56:29 +02:00
.scrutinizer.yml Revert "Fix failing tests if token is not set" 2017-01-06 13:12:42 +01:00
.travis.yml Update NodeJS 2017-10-29 11:34:38 +01:00
AUTHORS.md Initial commit 2016-09-09 17:36:35 +02:00
CHANGELOG.md This fixes the decryption error happening when auto login is enabled and user changes vault password. 2016-12-28 15:26:26 +01:00
CNAME Create CNAME 2017-02-05 17:23:45 +01:00
CONTRIBUTING.md add link to nextcloud server wiki on how to sign commits 2017-10-29 11:11:22 +01:00
COPYING Initial commit 2016-09-09 17:36:35 +02:00
Dockerfile Fix dockerfile and add support for ssl 2017-01-16 14:16:02 +01:00
Gruntfile.js Fix font awesome not found. (Fixes #286) 2017-05-06 13:32:18 +02:00
ISSUE_TEMPLATE.md Update 2017-03-16 15:44:56 +01:00
karma.conf.js Update karma config 2017-08-05 13:44:01 +02:00
launch_phpunit.sh.sample PHPUnit fixes for custom locations 2017-05-07 18:21:11 +02:00
LICENSE Initial commit 2016-09-07 13:30:00 +02:00
Makefile Initial commit 2016-09-09 17:36:35 +02:00
package.json Lock jasmine core version 2017-07-30 17:02:41 +02:00
personal.php Fix missing admin-settings.js 2017-01-18 19:08:59 +01:00
phpunit.integration.xml Update phpunit 2017-07-01 18:09:39 +02:00
phpunit.xml Update phpunit 2017-07-01 18:09:39 +02:00
README.md update flattr link for flattr 2.0 2017-10-28 15:16:43 +02:00
swagger.yaml Top level typos 2017-01-06 17:06:54 +05:45

Passman

Passman is a full featured password manager.

Build Status Codacy Badge Codacy Badge Scrutinizer Code Quality

Contents

Screenshots

Logged in to vault

Credential selected

Edit credential

Password tool

For more screenshots: Click here

Features:

  • Vaults
  • Vault key is never sent to the server
  • Credentials are stored with 256 bit AES (see security)
  • Ability to add custom fields to credentials
  • Built-in OTP(One Time Password) generator
  • Password analyzer
  • Share passwords internally and via link in a secure manner.
  • Import from various password managers:
    • KeePass
    • LastPass
    • DashLane
    • ZOHO
    • Clipperz.is
    • EnPass
    • ocPasswords

For a demo of this app visit https://demo.passman.cc

Tested on

  • NextCloud 10 / 11
  • ownCloud 9.1+

External apps

Supported databases

  • SQL Lite*
  • MySQL / MariaDB*

*Tested on travis

Untested databases:

  • pgsql

Security

Password generation

Passman features a build in password generator. Not it only generates passwords, but it also measures their strength using zxcvbn.

Generate passwords as you like

Passwords are generated using the random functions from sjcl.

Storing credentials

All passwords are encrypted client side using sjcl which uses AES-256 bit. Users supply a vault key which is feed into sjcl as encryption key. After the credentials are encrypted they are send to the server, there they will be encrypted again. This time using the following routine:

Sharing credentials.

Passman allows users to share passwords (this can be turned off by an administrator).

API

For developers Passman offers an api.

Support Passman

Passman is open source, and we would gladly accept a beer (or pizza!)
Please consider donating

Code reviews

If you have any improvements regarding our code. Please do the following

  • Clone us
  • Make your edits
  • Add your name to the contributors
  • Send a PR

Or if you're feeling lazy, create an issue, and we'll think about it.

Docker

To run Passman with Docker you can use docker run -p 8080:80 -p 8443:443 brantje/passman
You have to supply your own SSL certs.
Example:
docker run -p 8080:80 -p 8443:443 -v /directory/cert.pem:/data/ssl/cert.pem -v /directory/cert.key:/data/ssl/cert.key brantje/passman

Development

Passman uses a single .js file for the templates. This gives the benefit that we don't need to request every template with XHR.
For CSS we use SASS so you need ruby and sass installed.
templates.js and the CSS are built with grunt. To watch for changes use grunt watch To run the unit tests install phpunit globally, and setup the environment variables on the launch_phpunit.sh script then just run that script, any arguments passed to this script will be forwarded to phpunit.

Main developers

  • Brantje
  • Animalillo

Contributors

Add yours when creating a pull request!

  • None

FAQ

Are you adding something to check if malicious code is executing on the browser?
No, because malicious code could edit the functions that check for malicious code.