GoogleOauth2.0 First implementation

First try for GoogleOauth2.0
This commit is contained in:
Georg Reisinger
2018-10-26 14:02:15 +02:00
parent 216a04e233
commit b171f1646c
1880 changed files with 912953 additions and 7 deletions

View File

@ -0,0 +1 @@
export {};

View File

@ -0,0 +1,20 @@
#!/usr/bin/env node
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var gp12 = require("../index");
var argv = process.argv;
var p12Path = argv[2];
if (!p12Path) {
console.error('Please specify a *.p12 file to convert.');
process.exit(1);
}
gp12.getPem(p12Path, function (err, pem) {
if (err) {
console.log(err);
process.exit(1);
}
else {
console.log(pem);
}
});
//# sourceMappingURL=gp12-pem.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"gp12-pem.js","sourceRoot":"","sources":["../../../src/bin/gp12-pem.ts"],"names":[],"mappings":";;;AACA,+BAAiC;AAEjC,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AAC1B,IAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAExB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAC,GAAG,EAAE,GAAG;IAC5B,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,IAAI,CAAC,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;AACH,CAAC,CAAC,CAAC"}

View File

@ -0,0 +1,9 @@
/**
* Convert a .p12 file to .pem string
* @param filename The .p12 key filename.
* @param callback The callback function.
* @return A promise that resolves with the .pem private key
* if no callback provided.
*/
export declare function getPem(filename: string): Promise<string>;
export declare function getPem(filename: string, callback: (err: Error | null, pem: string | null) => void): void;

View File

@ -0,0 +1,42 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var fs = require("fs");
var forge = require("node-forge");
var pify = require("pify");
var readFile = pify(fs.readFile);
function getPem(filename, callback) {
if (callback) {
getPemAsync(filename)
.then(function (pem) { return callback(null, pem); })
.catch(function (err) { return callback(err, null); });
}
else {
return getPemAsync(filename);
}
}
exports.getPem = getPem;
function getPemAsync(filename) {
return readFile(filename, { encoding: 'base64' }).then(function (keyp12) {
return convertToPem(keyp12);
});
}
/**
* Converts a P12 in base64 encoding to a pem.
* @param p12base64 String containing base64 encoded p12.
* @returns a string containing the pem.
*/
function convertToPem(p12base64) {
var p12Der = forge.util.decode64(p12base64);
var p12Asn1 = forge.asn1.fromDer(p12Der);
var p12 = forge.pkcs12.pkcs12FromAsn1(p12Asn1, 'notasecret');
var bags = p12.getBags({ friendlyName: 'privatekey' });
if (bags.friendlyName) {
var privateKey = bags.friendlyName[0].key;
var pem = forge.pki.privateKeyToPem(privateKey);
return pem.replace(/\r\n/g, '\n');
}
else {
throw new Error('Unable to get friendly name.');
}
}
//# sourceMappingURL=index.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;AAAA,uBAAyB;AACzB,kCAAoC;AACpC,2BAA6B;AAE7B,IAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAanC,gBACI,QAAgB,EAAE,QAAsD;IAE1E,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACb,WAAW,CAAC,QAAQ,CAAC;aAChB,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,EAAnB,CAAmB,CAAC;aAChC,KAAK,CAAC,UAAA,GAAG,IAAI,OAAA,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,EAAnB,CAAmB,CAAC,CAAC;IACzC,CAAC;IAAC,IAAI,CAAC,CAAC;QACN,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAVD,wBAUC;AAED,qBAAqB,QAAgB;IACnC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC,IAAI,CAAC,UAAA,MAAM;QACzD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,sBAAsB,SAAiB;IACrC,IAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/D,IAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,EAAC,YAAY,EAAE,YAAY,EAAC,CAAC,CAAC;IACvD,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACtB,IAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5C,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAAC,IAAI,CAAC,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}