This commit is contained in:
@@ -69,19 +69,11 @@ namespace AyaNova.Api.Controllers
|
|||||||
if (serverState.IsClosed)
|
if (serverState.IsClosed)
|
||||||
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
|
|
||||||
// //Open or opsOnly only other state so they are ok but check user is opsadminfull
|
|
||||||
|
|
||||||
// if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull)))
|
|
||||||
// {
|
|
||||||
// return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
|
||||||
// }
|
|
||||||
|
|
||||||
if (!Authorized.HasCreateRole(HttpContext.Items, AyaType.AyaNova7Import))
|
if (!Authorized.HasCreateRole(HttpContext.Items, AyaType.AyaNova7Import))
|
||||||
{
|
{
|
||||||
return StatusCode(403, new ApiNotAuthorizedResponse());
|
return StatusCode(403, new ApiNotAuthorizedResponse());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var returnList = new List<String>();
|
var returnList = new List<String>();
|
||||||
|
|
||||||
try
|
try
|
||||||
@@ -155,11 +147,8 @@ namespace AyaNova.Api.Controllers
|
|||||||
[HttpDelete("{filename}")]
|
[HttpDelete("{filename}")]
|
||||||
public ActionResult Delete([FromRoute] string filename)
|
public ActionResult Delete([FromRoute] string filename)
|
||||||
{
|
{
|
||||||
//Open or opsOnly and user is opsadminfull
|
if (serverState.IsClosed)
|
||||||
if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull)))
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
{
|
|
||||||
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!ModelState.IsValid)
|
if (!ModelState.IsValid)
|
||||||
{
|
{
|
||||||
@@ -187,11 +176,8 @@ namespace AyaNova.Api.Controllers
|
|||||||
[HttpGet]
|
[HttpGet]
|
||||||
public ActionResult List()
|
public ActionResult List()
|
||||||
{
|
{
|
||||||
//Open or opsOnly and user is opsadminfull
|
if (serverState.IsClosed)
|
||||||
if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull)))
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
{
|
|
||||||
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.AyaNova7Import))
|
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.AyaNova7Import))
|
||||||
{
|
{
|
||||||
@@ -218,11 +204,11 @@ namespace AyaNova.Api.Controllers
|
|||||||
[HttpPost("EraseDatabaseAndStartImport/{filename}")]
|
[HttpPost("EraseDatabaseAndStartImport/{filename}")]
|
||||||
public async Task<IActionResult> EraseDatabaseAndStartImport([FromRoute] string filename)
|
public async Task<IActionResult> EraseDatabaseAndStartImport([FromRoute] string filename)
|
||||||
{
|
{
|
||||||
//Open or opsOnly and user is opsadminfull
|
if (serverState.IsClosed)
|
||||||
if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull)))
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
{
|
|
||||||
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
if (!serverState.IsOpsOnly)
|
||||||
}
|
return BadRequest(new ApiErrorResponse(ApiErrorCode.INVALID_OPERATION, null, "Server must be set to Operations Only mode before importing"));
|
||||||
|
|
||||||
if (!ModelState.IsValid)
|
if (!ModelState.IsValid)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -53,11 +53,8 @@ namespace AyaNova.Api.Controllers
|
|||||||
[HttpGet]
|
[HttpGet]
|
||||||
public async Task<IActionResult> List()
|
public async Task<IActionResult> List()
|
||||||
{
|
{
|
||||||
//Open or opsOnly and user is opsadminfull or opsadminlimited
|
if (serverState.IsClosed)
|
||||||
if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull | AuthorizationRoles.OpsAdminLimited)))
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
{
|
|
||||||
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.JobOperations))
|
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.JobOperations))
|
||||||
{
|
{
|
||||||
@@ -87,11 +84,8 @@ namespace AyaNova.Api.Controllers
|
|||||||
[HttpGet("logs/{gid}")]
|
[HttpGet("logs/{gid}")]
|
||||||
public async Task<IActionResult> GetLogs([FromRoute] Guid gid)
|
public async Task<IActionResult> GetLogs([FromRoute] Guid gid)
|
||||||
{
|
{
|
||||||
//Open or opsOnly and user is opsadminfull or opsadminlimited
|
if (serverState.IsClosed)
|
||||||
if (!serverState.IsOpenOrOpsOnly || (serverState.IsOpsOnly && !Authorized.HasAnyRole(HttpContext.Items, AuthorizationRoles.OpsAdminFull | AuthorizationRoles.OpsAdminLimited)))
|
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
|
||||||
{
|
|
||||||
return StatusCode(503, new ApiErrorResponse(ApiErrorCode.API_CLOSED, null, serverState.Reason));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.JobOperations))
|
if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.JobOperations))
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user