acme-dns-01-digitalocean
Advanced tools
Comparing version 0.0.1-security to 3.0.0
{ | ||
"name": "acme-dns-01-digitalocean", | ||
"version": "0.0.1-security", | ||
"description": "security holding package", | ||
"repository": "npm/security-holder", | ||
"dependencies": {} | ||
"name": "acme-dns-01-digitalocean", | ||
"version": "3.0.0", | ||
"description": "Digital Ocean DNS for Let's Encrypt / ACME dns-01 challenges with ACME.js and Greenlock.js", | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "node ./test.js" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://git.rootprojects.org/root/acme-dns-01-digitalocean.git" | ||
}, | ||
"keywords": [ | ||
"digitalocean", | ||
"digital-ocean", | ||
"dns", | ||
"dns-01", | ||
"letsencrypt", | ||
"acme", | ||
"greenlock" | ||
], | ||
"author": "AJ ONeal <coolaj86@gmail.com> (https://coolaj86.com/)", | ||
"license": "MPL-2.0", | ||
"dependencies": { | ||
}, | ||
"devDependencies": { | ||
"acme-dns-01-test": "^3.2.0" | ||
} | ||
} |
127
README.md
@@ -1,9 +0,122 @@ | ||
# Security holding package | ||
# [acme-dns-01-digitalocean](https://git.rootprojects.org/root/acme-dns-01-digitalocean.js) | a [Root](https://rootrpojects.org) project | ||
This package name is not currently in use, but was formerly occupied | ||
by another package. To avoid malicious use, npm is hanging on to the | ||
package name, but loosely, and we'll probably give it to you if you | ||
want it. | ||
Digital Ocean DNS + Let's Encrypt for Node.js | ||
You may adopt this package by contacting support@npmjs.com and | ||
requesting the name. | ||
This handles ACME dns-01 challenges, compatible with ACME.js and Greenlock.js. | ||
Passes [acme-dns-01-test](https://git.rootprojects.org/root/acme-dns-01-test.js). | ||
## Features | ||
- Compatible | ||
- [x] Let's Encrypt v2.1 / ACME draft 18 (2019) | ||
- [x] Digital Ocean v2 API | ||
- [x] ACME.js, Greenlock.js, and others | ||
- Quality | ||
- [x] node v6 compatible VanillaJS | ||
- [x] < 150 lines of code | ||
- [x] **Zero Dependencies** | ||
# Install | ||
```bash | ||
npm install --save acme-dns-01-digitalocean@3.x | ||
``` | ||
Generate Digital Ocean API Token: | ||
- <https://cloud.digitalocean.com/account/api/tokens> | ||
# Usage | ||
First you create an instance with your credentials: | ||
```js | ||
var dns01 = require('acme-dns-01-digitalocean').create({ | ||
baseUrl: 'https://api.digitalocean.com/v2/domains', // default | ||
token: 'xxxx' | ||
}); | ||
``` | ||
Then you can use it with any compatible ACME library, | ||
such as Greenlock.js or ACME.js. | ||
### Greenlock.js | ||
```js | ||
var Greenlock = require('greenlock-express'); | ||
var greenlock = Greenlock.create({ | ||
challenges: { | ||
'dns-01': dns01 | ||
// ... | ||
} | ||
}); | ||
``` | ||
See [Greenlock Express](https://git.rootprojects.org/root/greenlock-express.js) | ||
and/or [Greenlock.js](https://git.rootprojects.org/root/greenlock.js) | ||
documentation for more details. | ||
### ACME.js | ||
```js | ||
// TODO | ||
``` | ||
See the [ACME.js](https://git.rootprojects.org/root/acme-v2.js) for more details. | ||
### Build your own | ||
There are only 5 methods: | ||
- `init(config)` | ||
- `zones(opts)` | ||
- `set(opts)` | ||
- `get(opts)` | ||
- `remove(opts)` | ||
```js | ||
dns01 | ||
.set({ | ||
identifier: { value: 'foo.example.co.uk' }, | ||
wildcard: false, | ||
dnsZone: 'example.co.uk', | ||
dnsPrefix: '_acme-challenge.foo', | ||
dnsAuthorization: 'xxx_secret_xxx' | ||
}) | ||
.then(function() { | ||
console.log('TXT record set'); | ||
}) | ||
.catch(function() { | ||
console.log('Failed to set TXT record'); | ||
}); | ||
``` | ||
See [acme-dns-01-test](https://git.rootprojects.org/root/acme-dns-01-test.js) | ||
for more implementation details. | ||
# Tests | ||
```bash | ||
# node ./test.js domain-zone api-token | ||
node ./test.js example.com xxxxxx | ||
``` | ||
# Authors | ||
- Aneem Patrabansha | ||
- AJ ONeal | ||
See AUTHORS for contact info. | ||
<!-- {{ if .Legal }} --> | ||
# Legal | ||
[acme-dns-01-digitalocean.js](https://git.coolaj86.com/coolaj86/acme-dns-01-digitalocean.js) | | ||
MPL-2.0 | | ||
[Terms of Use](https://therootcompany.com/legal/#terms) | | ||
[Privacy Policy](https://therootcompany.com/legal/#privacy) | ||
Copyright 2019 The Root Group LLC | ||
<!-- {{ end }} --> |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Copyleft License
License(Experimental) Copyleft license information was found.
Found 1 instance in 1 package
Non-permissive License
License(Experimental) A license not known to be considered permissive was found.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Empty package
Supply chain riskPackage does not contain any code. It may be removed, is name squatting, or the result of a faulty package publish.
Found 1 instance in 1 package
No contributors or author data
MaintenancePackage does not specify a list of contributors or an author in package.json.
Found 1 instance in 1 package
No License Found
License(Experimental) License information could not be found.
Found 1 instance in 1 package
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
24547
8
152
2
1
123
0
1
2
70