diff --git a/MyObsidianVault/WebDev/2 CodeIgniter/19.) Create API Auth Filter.md b/MyObsidianVault/WebDev/2 CodeIgniter/19.) Create API Auth Filter.md new file mode 100644 index 0000000..bf9d0b5 --- /dev/null +++ b/MyObsidianVault/WebDev/2 CodeIgniter/19.) Create API Auth Filter.md @@ -0,0 +1,61 @@ +https://www.youtube.com/watch?v=USqOc-GCA4s&list=PLT9miexWCpPW6Z_OXNv2d78cqCrZaPrVG&index=32 + +Create AuthFilter.php +```bash +php spark make:filter Auth --suffix +``` + +Define before method in AuthFilter.php +```php +public function before(RequestInterface $request, $arguments = null) +{ + helper("auth"); + + if (!auth("tokens")->loggedIn()) { + return redirect()->to(base_url("api/ invalid-access")); // need to create invalid-access route + } +} +``` + + +Routes.php +```php +// API ROUTES +$routes->group("api",["namespace]=> "App\Controllers\Api"], function($routes) { + ... + $routes->get("invalid-access", "AuthController::accessDenied"); + §routes->get('demo-method", "AuthController::demoMethod",["filter" => "apiauth"]); // Filter Name is defined in aliases array in Filters.php below. + ... +``` + +Define accessDenied method in app/Controllers/Api/AuthController.php +```php +... +public function accessDenied() +{ + return $this->respondCreated([ + "status" => false, + "message" => "Invalid access", + "data" => [] + ]); +} +... +``` + +Add filter to app/Config/Filters.php +```php +use App\Filters\AuthFilter; + + +public array $aliases = [ + 'csrf' => CSRF::class, + 'toolbar' => DebugToolbar::class, + 'honeypot' => Honeypot::class, + 'invalidchars' => InvalidChars::class, + 'secureheaders' => SecureHeaders::class, + 'apiauth' => AuthFilter::class +] +``` + +Authorize request by adding field "Authorization" with value "Bearer xxxxxx" in Request Header: +![[Pasted image 20241127140801.png]] \ No newline at end of file diff --git a/MyObsidianVault/Pasted image 20241118085649.png b/MyObsidianVault/_images/Pasted image 20241118085649.png similarity index 100% rename from MyObsidianVault/Pasted image 20241118085649.png rename to MyObsidianVault/_images/Pasted image 20241118085649.png diff --git a/MyObsidianVault/Pasted image 20241118085807.png b/MyObsidianVault/_images/Pasted image 20241118085807.png similarity index 100% rename from MyObsidianVault/Pasted image 20241118085807.png rename to MyObsidianVault/_images/Pasted image 20241118085807.png diff --git a/MyObsidianVault/Pasted image 20241118085927.png b/MyObsidianVault/_images/Pasted image 20241118085927.png similarity index 100% rename from MyObsidianVault/Pasted image 20241118085927.png rename to MyObsidianVault/_images/Pasted image 20241118085927.png diff --git a/MyObsidianVault/Pasted image 20241118090014.png b/MyObsidianVault/_images/Pasted image 20241118090014.png similarity index 100% rename from MyObsidianVault/Pasted image 20241118090014.png rename to MyObsidianVault/_images/Pasted image 20241118090014.png diff --git a/MyObsidianVault/Pasted image 20241118090047.png b/MyObsidianVault/_images/Pasted image 20241118090047.png similarity index 100% rename from MyObsidianVault/Pasted image 20241118090047.png rename to MyObsidianVault/_images/Pasted image 20241118090047.png diff --git a/MyObsidianVault/Pasted image 20241123100630.png b/MyObsidianVault/_images/Pasted image 20241123100630.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100630.png rename to MyObsidianVault/_images/Pasted image 20241123100630.png diff --git a/MyObsidianVault/Pasted image 20241123100706.png b/MyObsidianVault/_images/Pasted image 20241123100706.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100706.png rename to MyObsidianVault/_images/Pasted image 20241123100706.png diff --git a/MyObsidianVault/Pasted image 20241123100734.png b/MyObsidianVault/_images/Pasted image 20241123100734.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100734.png rename to MyObsidianVault/_images/Pasted image 20241123100734.png diff --git a/MyObsidianVault/Pasted image 20241123100756.png b/MyObsidianVault/_images/Pasted image 20241123100756.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100756.png rename to MyObsidianVault/_images/Pasted image 20241123100756.png diff --git a/MyObsidianVault/Pasted image 20241123100834.png b/MyObsidianVault/_images/Pasted image 20241123100834.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100834.png rename to MyObsidianVault/_images/Pasted image 20241123100834.png diff --git a/MyObsidianVault/Pasted image 20241123100851.png b/MyObsidianVault/_images/Pasted image 20241123100851.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100851.png rename to MyObsidianVault/_images/Pasted image 20241123100851.png diff --git a/MyObsidianVault/Pasted image 20241123100913.png b/MyObsidianVault/_images/Pasted image 20241123100913.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123100913.png rename to MyObsidianVault/_images/Pasted image 20241123100913.png diff --git a/MyObsidianVault/Pasted image 20241123101019.png b/MyObsidianVault/_images/Pasted image 20241123101019.png similarity index 100% rename from MyObsidianVault/Pasted image 20241123101019.png rename to MyObsidianVault/_images/Pasted image 20241123101019.png diff --git a/MyObsidianVault/Pasted image 20241126102145.png b/MyObsidianVault/_images/Pasted image 20241126102145.png similarity index 100% rename from MyObsidianVault/Pasted image 20241126102145.png rename to MyObsidianVault/_images/Pasted image 20241126102145.png diff --git a/MyObsidianVault/Pasted image 20241126102214.png b/MyObsidianVault/_images/Pasted image 20241126102214.png similarity index 100% rename from MyObsidianVault/Pasted image 20241126102214.png rename to MyObsidianVault/_images/Pasted image 20241126102214.png diff --git a/MyObsidianVault/_images/Pasted image 20241127140801.png b/MyObsidianVault/_images/Pasted image 20241127140801.png new file mode 100644 index 0000000..891e89e Binary files /dev/null and b/MyObsidianVault/_images/Pasted image 20241127140801.png differ