diff options
Diffstat (limited to 'src/server.rs')
| -rw-r--r-- | src/server.rs | 57 |
1 files changed, 4 insertions, 53 deletions
diff --git a/src/server.rs b/src/server.rs index 3b7d55e..f84dc08 100644 --- a/src/server.rs +++ b/src/server.rs @@ -1,18 +1,14 @@ -use authz_rpc::ability_server::{Ability, AbilityServer}; -use authz_rpc::{AllowReply, AllowRequest}; use envoy_types::ext_authz::v3::pb::{ Authorization, AuthorizationServer, CheckRequest, CheckResponse, }; use envoy_types::ext_authz::v3::{CheckRequestExt, CheckResponseExt}; -use hello_world::greeter_server::{Greeter, GreeterServer}; -use hello_world::{HelloReply, HelloRequest}; use tonic::{Request, Response, Status, transport::Server}; -#[derive(Default)] -struct MyServer; +#[derive(Debug, Default)] +struct PolicyServer; #[tonic::async_trait] -impl Authorization for MyServer { +impl Authorization for PolicyServer { async fn check( &self, request: Request<CheckRequest>, @@ -35,57 +31,12 @@ impl Authorization for MyServer { } } -pub mod authz_rpc { - tonic::include_proto!("authz.rpc"); -} - -#[derive(Debug, Default)] -pub struct MyAbility {} - -#[tonic::async_trait] -impl Ability for MyAbility { - async fn allowed( - &self, - request: Request<AllowRequest>, - ) -> Result<Response<AllowReply>, Status> { - println!("Got a request: {:?}", request); - - let reply = AllowReply { result: true }; - Ok(Response::new(reply)) - } -} - -pub mod hello_world { - tonic::include_proto!("helloworld"); -} - -#[derive(Debug, Default)] -pub struct MyGreeter {} - -#[tonic::async_trait] -impl Greeter for MyGreeter { - async fn say_hello( - &self, - request: Request<HelloRequest>, - ) -> Result<Response<HelloReply>, Status> { - println!("Got a request: {:?}", request); - - let reply = HelloReply { - message: format!("Hello {}!", request.into_inner().name), - }; - - Ok(Response::new(reply)) - } -} - #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { let addr = "[::1]:50051".parse()?; Server::builder() - .add_service(GreeterServer::new(MyGreeter::default())) - .add_service(AbilityServer::new(MyAbility::default())) - .add_service(AuthorizationServer::new(MyServer::default())) + .add_service(AuthorizationServer::new(PolicyServer::default())) .serve(addr) .await?; |
