admin: add a route and buttons to generate/delete fichtpasswd, if needed
This commit is contained in:
parent
590522e7ed
commit
e945071a10
@ -33,6 +33,24 @@ func init() {
|
|||||||
func(httprouter.Params, []byte) (interface{}, error) {
|
func(httprouter.Params, []byte) (interface{}, error) {
|
||||||
return genHtpasswd(true)
|
return genHtpasswd(true)
|
||||||
}))
|
}))
|
||||||
|
router.POST("/api/htpasswd", apiHandler(
|
||||||
|
func(httprouter.Params, []byte) (interface{}, error) {
|
||||||
|
if htpasswd, err := genHtpasswd(true); err != nil {
|
||||||
|
return nil, err
|
||||||
|
} else if err := ioutil.WriteFile(path.Join(pki.PKIDir, "shared", "ficpasswd"), []byte(htpasswd), 0644); err != nil {
|
||||||
|
return nil, err
|
||||||
|
} else {
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
}))
|
||||||
|
router.DELETE("/api/htpasswd", apiHandler(
|
||||||
|
func(httprouter.Params, []byte) (interface{}, error) {
|
||||||
|
if err := os.Remove(path.Join(pki.PKIDir, "shared", "ficpasswd")); err != nil {
|
||||||
|
return nil, err
|
||||||
|
} else {
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
}))
|
||||||
router.GET("/api/htpasswd.apr1", apiHandler(
|
router.GET("/api/htpasswd.apr1", apiHandler(
|
||||||
func(httprouter.Params, []byte) (interface{}, error) {
|
func(httprouter.Params, []byte) (interface{}, error) {
|
||||||
return genHtpasswd(false)
|
return genHtpasswd(false)
|
||||||
|
@ -682,6 +682,20 @@ angular.module("FICApp")
|
|||||||
$rootScope.newBox('danger', 'An error occurs when generating certificate:', response.data.errmsg);
|
$rootScope.newBox('danger', 'An error occurs when generating certificate:', response.data.errmsg);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
$scope.generateHtpasswd = function() {
|
||||||
|
$http.post("/api/htpasswd").then(function() {
|
||||||
|
$rootScope.newBox('success', 'Fichier htpasswd généré avec succès');
|
||||||
|
}, function(response) {
|
||||||
|
$rootScope.newBox('danger', 'An error occurs when generating htpasswd file:', response.data.errmsg);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
$scope.removeHtpasswd = function() {
|
||||||
|
$http.delete("/api/htpasswd").then(function() {
|
||||||
|
$rootScope.newBox('success', 'Fichier htpasswd supprimé avec succès');
|
||||||
|
}, function(response) {
|
||||||
|
$rootScope.newBox('danger', 'An error occurs when deleting htpasswd file:', response.data.errmsg);
|
||||||
|
});
|
||||||
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
.controller("PublicController", function($scope, $rootScope, $routeParams, $location, Scene, Theme, Teams, Exercice) {
|
.controller("PublicController", function($scope, $rootScope, $routeParams, $location, Scene, Theme, Teams, Exercice) {
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
<h2>
|
<h2>
|
||||||
Certificats clients
|
Certificats clients
|
||||||
<button type="button" ng-click="generateCert()" class="float-right btn btn-sm btn-primary"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Générer un certificat</button>
|
<button type="button" ng-click="generateCert()" class="float-right btn btn-sm btn-primary"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Générer un certificat</button>
|
||||||
|
<div class="float-right btn-group mr-1" role="group">
|
||||||
|
<button type="button" ng-click="generateHtpasswd()" class="btn btn-sm btn-secondary"><span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Générer <code>fichtpasswd</code></button>
|
||||||
|
<button type="button" ng-click="removeHtpasswd()" class="btn btn-sm btn-danger"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></button>
|
||||||
|
</div>
|
||||||
</h2>
|
</h2>
|
||||||
|
|
||||||
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" autofocus></p>
|
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" autofocus></p>
|
||||||
|
Loading…
Reference in New Issue
Block a user