Skip to content

Commit

Permalink
feat: add grpc::UNAUTHENTICATED errcode
Browse files Browse the repository at this point in the history
  • Loading branch information
huerni committed Feb 11, 2025
1 parent d910a28 commit 0df6128
Showing 1 changed file with 25 additions and 22 deletions.
47 changes: 25 additions & 22 deletions src/CraneCtld/RpcService/CtldGrpcServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ grpc::Status CraneCtldServiceImpl::SubmitBatchTask(
if (!extract_result) {
response->set_ok(false);
response->set_reason("Permission Denied.");
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -88,7 +88,7 @@ grpc::Status CraneCtldServiceImpl::SubmitBatchTasks(
for (int i = 0; i < task_count; i++) {
response->mutable_reason_list()->Add("Permission Denied.");
}
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -123,7 +123,7 @@ grpc::Status CraneCtldServiceImpl::CancelTask(
response->add_not_cancelled_tasks(task_id);
response->add_not_cancelled_reasons("Permission Denied.");
}
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -144,7 +144,8 @@ grpc::Status CraneCtldServiceImpl::QueryCranedInfo(
const crane::grpc::QueryCranedInfoRequest *request,
crane::grpc::QueryCranedInfoReply *response) {
auto extract_result = CheckCertAllowedAndExtractUIDFromCert_(context);
if (!extract_result) return grpc::Status::OK;
if (!extract_result)
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");

if (request->craned_name().empty()) {
*response = g_meta_container->QueryAllCranedInfo();
Expand All @@ -160,7 +161,8 @@ grpc::Status CraneCtldServiceImpl::QueryPartitionInfo(
const crane::grpc::QueryPartitionInfoRequest *request,
crane::grpc::QueryPartitionInfoReply *response) {
auto extract_result = CheckCertAllowedAndExtractUIDFromCert_(context);
if (!extract_result) return grpc::Status::OK;
if (!extract_result)
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");

if (request->partition_name().empty()) {
*response = g_meta_container->QueryAllPartitionInfo();
Expand All @@ -181,7 +183,7 @@ grpc::Status CraneCtldServiceImpl::ModifyTask(
response->add_not_modified_tasks(task_id);
response->add_not_modified_reasons("Permission Denied.");
}
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -274,7 +276,7 @@ grpc::Status CraneCtldServiceImpl::ModifyNode(
response->add_not_modified_nodes(crane_id);
response->add_not_modified_reasons("Permission Denied.");
}
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -345,7 +347,7 @@ grpc::Status CraneCtldServiceImpl::AddAccount(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -382,7 +384,7 @@ grpc::Status CraneCtldServiceImpl::AddUser(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -432,7 +434,7 @@ grpc::Status CraneCtldServiceImpl::AddQos(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -474,7 +476,7 @@ grpc::Status CraneCtldServiceImpl::ModifyAccount(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -500,7 +502,7 @@ grpc::Status CraneCtldServiceImpl::ModifyUser(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -568,7 +570,7 @@ grpc::Status CraneCtldServiceImpl::ModifyQos(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -594,7 +596,7 @@ grpc::Status CraneCtldServiceImpl::QueryAccountInfo(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_INVALID_UID);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -656,7 +658,7 @@ grpc::Status CraneCtldServiceImpl::QueryUserInfo(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -722,7 +724,7 @@ grpc::Status CraneCtldServiceImpl::QueryQosInfo(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -759,7 +761,7 @@ grpc::Status CraneCtldServiceImpl::DeleteAccount(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -781,7 +783,7 @@ grpc::Status CraneCtldServiceImpl::DeleteUser(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -804,7 +806,7 @@ grpc::Status CraneCtldServiceImpl::DeleteQos(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -828,7 +830,7 @@ grpc::Status CraneCtldServiceImpl::BlockAccountOrUser(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand Down Expand Up @@ -865,7 +867,7 @@ grpc::Status CraneCtldServiceImpl::ResetUserCredential(
if (!extract_result) {
response->set_ok(false);
response->set_reason(crane::grpc::ErrCode::ERR_PERMISSION_USER);
return grpc::Status::OK;
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");
}

uint32_t uid = extract_result.value();
Expand All @@ -892,7 +894,8 @@ grpc::Status CraneCtldServiceImpl::QueryClusterInfo(
const crane::grpc::QueryClusterInfoRequest *request,
crane::grpc::QueryClusterInfoReply *response) {
auto extract_result = CheckCertAllowedAndExtractUIDFromCert_(context);
if (!extract_result) return grpc::Status::OK;
if (!extract_result)
return grpc::Status(grpc::UNAUTHENTICATED, "Authentication failed");

*response = g_meta_container->QueryClusterInfo(*request);
return grpc::Status::OK;
Expand Down

0 comments on commit 0df6128

Please sign in to comment.