mirror of
https://github.com/nextcloud/passman.git
synced 2025-10-10 13:36:55 +08:00
Add function to get sharing keys
This commit is contained in:
parent
1aae11b6bf
commit
b1728da8e2
5 changed files with 15 additions and 8 deletions
|
@ -8,6 +8,8 @@ angular.module('passmanApp')
|
|||
$scope.progress = 1;
|
||||
$scope.generating = false;
|
||||
|
||||
$scope.sharing_keys = ShareService.getSharingKeys();
|
||||
|
||||
$scope.generateKeys = function (length) {
|
||||
$scope.progress = 1;
|
||||
$scope.generating = true;
|
||||
|
@ -27,7 +29,6 @@ angular.module('passmanApp')
|
|||
|
||||
var _vault = angular.copy($scope.active_vault);
|
||||
_vault.private_sharing_key = EncryptService.encryptString(_vault.private_sharing_key);
|
||||
_vault.public_sharing_key = EncryptService.encryptString(_vault.public_sharing_key);
|
||||
VaultService.updateSharingKeys(_vault).then(function (result) {
|
||||
console.log('done')
|
||||
})
|
||||
|
|
|
@ -8,8 +8,7 @@
|
|||
* Service in the passmanApp.
|
||||
*/
|
||||
angular.module('passmanApp')
|
||||
.service('ShareService', ['$http', function ($http) {
|
||||
var _tags = [];
|
||||
.service('ShareService', ['$http', 'VaultService', 'EncryptService', function ($http, VaultService, EncryptService) {
|
||||
return {
|
||||
search: function (string) {
|
||||
var queryUrl = OC.generateUrl('apps/passman/api/v2/sharing/search');
|
||||
|
@ -47,6 +46,13 @@ angular.module('passmanApp')
|
|||
'privateKey' : forge.pki.privateKeyToPem(keypair.privateKey)
|
||||
};
|
||||
},
|
||||
getSharingKeys: function(){
|
||||
var vault = VaultService.getActiveVault();
|
||||
return{
|
||||
'private_sharing_key': EncryptService.decryptString(angular.copy(vault.private_sharing_key)),
|
||||
'public_sharing_key': vault.public_sharing_key
|
||||
};
|
||||
},
|
||||
rsaPrivateKeyFromPEM: function(private_pem) {
|
||||
return forge.pki.privateKeyFromPem(private_pem);
|
||||
},
|
||||
|
|
|
@ -63,7 +63,7 @@ angular.module('views/partials/forms/settings/import.html', []).run(['$templateC
|
|||
angular.module('views/partials/forms/settings/sharing.html', []).run(['$templateCache', function($templateCache) {
|
||||
'use strict';
|
||||
$templateCache.put('views/partials/forms/settings/sharing.html',
|
||||
'<div ng-controller="SharingSettingsCtrl"><div class="row"><div class="col-md-6"><label>Private Key</label><textarea class="col-md-12">{{active_vault.private_sharing_key}}</textarea></div><div class="col-md-6"><label>Public key</label><textarea class="col-md-12">{{active_vault.public_sharing_key}}</textarea></div></div><div class="row"><div class="col-md-12"><label>Key size<select ng-model="key_size"><option value="512">512</option><option value="1024">1024</option><option value="2048">2048</option><option value="4096">4096</option></select><button ng-if="!generating" ng-click="generateKeys(key_size)">Generate sharing keys</button> <button ng-if="generating"><i class="fa fa-spinner fa-spin"></i> Generating sharing keys step {{progress}}/2</button></label></div></div></div>{{active_vault}}');
|
||||
'<div ng-controller="SharingSettingsCtrl"><div class="row"><div class="col-md-6"><label>Private Key</label><textarea class="col-md-12">{{sharing_keys.private_sharing_key}}</textarea></div><div class="col-md-6"><label>Public key</label><textarea class="col-md-12">{{sharing_keys.public_sharing_key}}</textarea></div></div><div class="row"><div class="col-md-12"><label>Key size<select ng-model="key_size"><option value="512">512</option><option value="1024">1024</option><option value="2048">2048</option><option value="4096">4096</option></select><button ng-if="!generating" ng-click="generateKeys(key_size)">Generate sharing keys</button> <button ng-if="generating"><i class="fa fa-spinner fa-spin"></i> Generating sharing keys step {{progress}}/2</button></label></div></div></div>');
|
||||
}]);
|
||||
|
||||
angular.module('views/partials/forms/settings/tool.html', []).run(['$templateCache', function($templateCache) {
|
||||
|
|
|
@ -50,6 +50,7 @@ class Vault extends Entity implements \JsonSerializable{
|
|||
// add types in constructor
|
||||
$this->addType('created', 'integer');
|
||||
$this->addType('lastAccess', 'integer');
|
||||
$this->addType('sharing_keys_generated', 'integer');
|
||||
}
|
||||
/**
|
||||
* Turns entity attributes into an array
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<label>Private Key</label>
|
||||
<textarea class="col-md-12">{{active_vault.private_sharing_key}}</textarea>
|
||||
<textarea class="col-md-12">{{sharing_keys.private_sharing_key}}</textarea>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<label>Public key</label>
|
||||
<textarea class="col-md-12">{{active_vault.public_sharing_key}}</textarea>
|
||||
<textarea class="col-md-12">{{sharing_keys.public_sharing_key}}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
@ -24,5 +24,4 @@
|
|||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{active_vault}}
|
||||
</div>
|
Loading…
Add table
Reference in a new issue