From f7d1396c5634e14a7aafdd5c8f6e644aca6e5fb0 Mon Sep 17 00:00:00 2001 From: mo khan Date: Wed, 18 Jun 2025 16:34:43 -0600 Subject: refactor: remove all the tutorial code --- src/client.rs | 39 --------------------------------------- src/server.rs | 57 ++++----------------------------------------------------- 2 files changed, 4 insertions(+), 92 deletions(-) delete mode 100644 src/client.rs (limited to 'src') diff --git a/src/client.rs b/src/client.rs deleted file mode 100644 index b0cfa42..0000000 --- a/src/client.rs +++ /dev/null @@ -1,39 +0,0 @@ -use authz::AllowRequest; -use authz::ability_client::AbilityClient; -use hello_world::HelloRequest; -use hello_world::greeter_client::GreeterClient; - -pub mod authz { - tonic::include_proto!("authz.rpc"); -} - -pub mod hello_world { - tonic::include_proto!("helloworld"); -} - -#[tokio::main] -async fn main() -> Result<(), Box> { - { - let mut client = GreeterClient::connect("http://[::1]:50051").await?; - let request = tonic::Request::new(HelloRequest { - name: "Tonic".into(), - }); - - let response = client.say_hello(request).await?; - println!("RESPONSE={:?}", response); - } - - { - let request = tonic::Request::new(AllowRequest { - subject: "gid://example/User/1".into(), - permission: "gid://example/Permission/1".into(), - resource: "gid://example/Project/1".into(), - }); - - let mut client = AbilityClient::connect("http://[::1]:50051").await?; - let response = client.allowed(request).await?; - println!("RESPONSE={:?}", response); - } - - Ok(()) -} 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, @@ -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, - ) -> Result, 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, - ) -> Result, 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> { 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?; -- cgit v1.2.3