tutwuri
  • Error generating categories
  • Hosting
  • Indonesia
  • Website
  • Laravel
  • Bisnis
No Result
View All Result
tutwuri
  • Error generating categories
  • Hosting
  • Indonesia
  • Website
  • Laravel
  • Bisnis
No Result
View All Result
tutwuri
No Result
View All Result
Home API

Laravel Sanctum untuk Authentication API: Keamanan API Lebih Terjamin

Lyra Silverbrook by Lyra Silverbrook
October 31, 2025
in API, Backend, Keamanan, Laravel, Otentikasi
0
Share on FacebookShare on Twitter

Laravel, framework PHP yang populer, menawarkan berbagai alat dan pustaka untuk mempermudah pengembangan aplikasi web. Salah satunya adalah Laravel Sanctum, solusi autentikasi API berbasis token yang ringan dan sangat mudah digunakan. Dalam artikel ini, kita akan membahas secara mendalam tentang Laravel Sanctum untuk Authentication API, bagaimana ia dapat meningkatkan keamanan API Anda, dan bagaimana cara mengimplementasikannya. Jadi, siapkan secangkir kopi dan mari kita mulai!

Apa Itu Laravel Sanctum dan Mengapa Penting untuk Keamanan API?

Laravel Sanctum adalah paket autentikasi sederhana yang dirancang khusus untuk API. Ia memungkinkan Anda untuk mengautentikasi pengguna menggunakan token API (API tokens) atau cookie tradisional. Bayangkan Anda sedang membangun aplikasi mobile atau SPA (Single Page Application) yang perlu berkomunikasi dengan backend Laravel Anda. Tanpa mekanisme autentikasi yang kuat, API Anda rentan terhadap serangan dan akses yang tidak sah.

Sanctum hadir sebagai solusi yang elegan. Ia memberikan cara yang aman dan mudah untuk mengautentikasi pengguna tanpa harus berurusan dengan kerumitan OAuth2 atau JWT (JSON Web Token) untuk kasus-kasus sederhana. Ini sangat penting karena:

  • Mencegah Akses Tidak Sah: Sanctum memastikan hanya pengguna yang terautentikasi yang dapat mengakses endpoint API Anda.
  • Melindungi Data Sensitif: Dengan autentikasi yang kuat, Anda dapat melindungi data sensitif dari kebocoran dan penyalahgunaan.
  • Mematuhi Standar Keamanan: Sanctum dirancang untuk mematuhi praktik keamanan terbaik, membantu Anda menjaga aplikasi Anda tetap aman dan terkini.

Singkatnya, Laravel Sanctum untuk Authentication API adalah kunci untuk menjaga keamanan dan integritas API Anda.

Related Post

Contoh Project Laravel Open Source: Inspirasi & Referensi Kode

November 30, 2025

Komunitas Laravel Developer Indonesia: Bergabung & Belajar Bersama!

November 30, 2025

Cara Deploy Aplikasi Laravel ke Server: Panduan Lengkap Hingga Website Online

November 30, 2025

Laravel Eloquent Relationship Tutorial Indonesia: Hubungan Antar Tabel dengan Mudah

November 30, 2025

Manfaat Utama Menggunakan Laravel Sanctum dalam Proyek Anda

Mengapa Anda harus memilih Laravel Sanctum untuk Authentication API daripada solusi autentikasi lainnya? Berikut adalah beberapa manfaat utama yang akan Anda dapatkan:

  • Ringan dan Mudah Digunakan: Sanctum dirancang untuk menjadi sederhana dan mudah dipahami, bahkan untuk pengembang pemula sekalipun. Konfigurasinya minimal, dan dokumentasinya sangat jelas.
  • Dukungan untuk Aplikasi SPA dan Mobile: Sanctum sangat cocok untuk mengautentikasi aplikasi SPA (React, Vue, Angular) dan aplikasi mobile (iOS, Android) yang berkomunikasi dengan backend Laravel Anda.
  • Autentikasi Berbasis Token dan Cookie: Sanctum mendukung baik autentikasi berbasis token (untuk aplikasi mobile dan API pihak ketiga) maupun autentikasi berbasis cookie (untuk aplikasi web).
  • Keamanan yang Ditingkatkan: Sanctum membantu Anda mengamankan API Anda dari serangan umum seperti CSRF (Cross-Site Request Forgery) dan serangan brute-force.
  • Integrasi yang Mudah dengan Laravel: Sanctum terintegrasi dengan mulus dengan kerangka kerja Laravel, memanfaatkan fitur-fitur yang sudah ada seperti middleware dan gate.
  • Pengelolaan Token yang Fleksibel: Anda dapat dengan mudah mengelola token API yang dihasilkan, mencabut token tertentu, dan memberikan izin (abilities) yang berbeda untuk setiap token.
  • Session-based authentication: Provides built-in session authentication, perfect for browser-based applications.

Instalasi dan Konfigurasi Laravel Sanctum: Langkah Demi Langkah

Sekarang kita tahu mengapa Laravel Sanctum untuk Authentication API sangat penting, mari kita lihat bagaimana cara menginstalnya dan mengkonfigurasinya di proyek Laravel Anda.

  1. Instal Paket Sanctum: Buka terminal Anda dan jalankan perintah berikut di direktori proyek Laravel Anda:

    composer require laravel/sanctum
  2. Publikasikan Konfigurasi dan Migrasi: Setelah paket terinstal, publikasikan file konfigurasi dan migrasi Sanctum dengan perintah:

    php artisan vendor:publish --provider="LaravelSanctumSanctumServiceProvider"

    Perintah ini akan membuat file konfigurasi config/sanctum.php dan file migrasi di direktori database/migrations.

  3. Jalankan Migrasi: Jalankan migrasi untuk membuat tabel yang diperlukan oleh Sanctum:

    php artisan migrate

    Tabel ini akan menyimpan token API yang dihasilkan.

  4. Konfigurasi Model User: Tambahkan trait LaravelSanctumHasApiTokens ke model User Anda (biasanya terletak di app/Models/User.php). Ini akan memberi model User Anda kemampuan untuk menghasilkan dan mengelola token API.

    <?php
    
    namespace AppModels;
    
    use IlluminateFoundationAuthUser as Authenticatable;
    use IlluminateNotificationsNotifiable;
    use LaravelSanctumHasApiTokens;
    
    class User extends Authenticatable
    {
        use HasApiTokens, Notifiable;
    
        // ...
    }
  5. Konfigurasi Middleware: Pastikan middleware EnsureFrontendRequestsAreStateful terdaftar dalam app/Http/Kernel.php di bagian $middlewareGroups dalam grup api.

    protected $middlewareGroups = [
        'api' => [
            AppHttpMiddlewareEnsureFrontendRequestsAreStateful::class,
            'throttle:api',
            IlluminateRoutingMiddlewareSubstituteBindings::class,
        ],
    ];

    Middleware ini penting untuk aplikasi SPA yang menggunakan cookie untuk autentikasi.

Selesai! Anda sekarang telah berhasil menginstal dan mengkonfigurasi Laravel Sanctum untuk Authentication API. Langkah selanjutnya adalah menghasilkan token API dan menggunakannya untuk mengautentikasi pengguna.

Membuat dan Mengelola Token API dengan Laravel Sanctum

Setelah instalasi, Anda perlu cara untuk menghasilkan dan mengelola token API. Berikut caranya:

  1. Menghasilkan Token API: Gunakan method createToken pada instance model User untuk menghasilkan token API. Anda dapat memberikan nama deskriptif untuk token tersebut dan juga menentukan “abilities” (izin) yang diberikan kepada token tersebut.

    $token = $user->createToken('my-app-token', ['server:update'])->plainTextToken;

    Dalam contoh di atas, kita menghasilkan token bernama “my-app-token” yang memiliki izin server:update. Properti plainTextToken berisi token yang sebenarnya, yang harus Anda simpan dengan aman dan berikan kepada aplikasi yang ingin Anda autentikasi.

  2. Mengambil Daftar Token: Anda dapat mengambil daftar token yang dimiliki oleh pengguna menggunakan relasi tokens pada model User.

    $tokens = $user->tokens;

    Ini akan mengembalikan koleksi instance LaravelSanctumPersonalAccessToken.

  3. Mencabut Token: Anda dapat mencabut token tertentu menggunakan method delete pada instance PersonalAccessToken.

    $token = $user->tokens()->where('name', 'my-app-token')->first();
    $token->delete();

    Atau, Anda dapat mencabut semua token pengguna menggunakan method delete pada relasi tokens.

    $user->tokens()->delete();
  4. Abilities (Izin): Abilities memungkinkan Anda memberikan izin yang berbeda untuk setiap token. Misalnya, Anda dapat memberikan token untuk aplikasi mobile izin untuk membaca data, tetapi tidak untuk memperbarui data. Untuk menentukan abilities, berikan array string ke method createToken saat Anda menghasilkan token. Kemudian, gunakan middleware abilities untuk melindungi rute API yang memerlukan izin tertentu.

    Route::middleware(['auth:sanctum', 'ability:server:update'])->group(function () {
        // Rute ini hanya dapat diakses oleh token dengan izin 'server:update'
    });

Dengan memahami cara membuat dan mengelola token API, Anda memiliki kontrol penuh atas autentikasi API Anda.

Autentikasi API Menggunakan Token: Langkah Implementasi

Setelah token dihasilkan, bagaimana cara menggunakannya untuk mengautentikasi permintaan API?

  1. Mengirim Token dalam Header Authorization: Klien (aplikasi mobile atau SPA) harus menyertakan token dalam header Authorization dari setiap permintaan API. Format header harus berupa Bearer <token>.

    Authorization: Bearer <token>
  2. Menggunakan Middleware auth:sanctum: Lindungi rute API yang memerlukan autentikasi dengan middleware auth:sanctum. Middleware ini akan memeriksa header Authorization untuk keberadaan token yang valid dan mengotentikasi pengguna jika token ditemukan.

    Route::middleware('auth:sanctum')->get('/api/user', function (Request $request) {
        return $request->user();
    });

    Dalam contoh di atas, hanya pengguna yang terautentikasi yang dapat mengakses rute /api/user.

  3. Mengakses Informasi Pengguna: Setelah pengguna diautentikasi, Anda dapat mengakses informasi pengguna yang diautentikasi menggunakan method user() pada instance Request.

    $user = $request->user();

Dengan langkah-langkah sederhana ini, Anda dapat dengan mudah mengimplementasikan autentikasi API berbasis token dengan Laravel Sanctum untuk Authentication API.

Autentikasi SPA (Single Page Application) dengan Cookie Laravel Sanctum

Selain autentikasi berbasis token, Laravel Sanctum untuk Authentication API juga mendukung autentikasi berbasis cookie, yang sangat cocok untuk aplikasi SPA.

  1. Pastikan Domain Sesi dan Cookie Sesuai: Dalam file .env Anda, pastikan konfigurasi berikut sesuai dengan domain aplikasi Anda:

    SESSION_DOMAIN=.example.com
    SANCTUM_STATEFUL_DOMAINS=example.com

    Ganti example.com dengan domain aplikasi Anda. Jika aplikasi Anda berjalan di localhost, gunakan localhost untuk kedua konfigurasi. Perhatikan bahwa SESSION_DOMAIN harus menyertakan titik di awal jika Anda ingin cookie dapat diakses oleh subdomain.

  2. Konfigurasi CORS: Pastikan konfigurasi CORS Anda (di config/cors.php) mengizinkan permintaan dari domain SPA Anda.

    'supports_credentials' => true,
    'allowed_origins' => ['http://localhost:3000'], // Ganti dengan domain SPA Anda
    'allowed_methods' => ['*'],
    'allowed_headers' => ['*'],
    'exposed_headers' => [],
    'max_age' => 0,

    supports_credentials harus diatur ke true untuk memungkinkan cookie dikirim dalam permintaan lintas domain.

  3. Pastikan SPA Mengirim Cookie: SPA Anda harus dikonfigurasi untuk mengirim cookie dengan setiap permintaan. Dalam banyak framework JavaScript, ini dilakukan dengan mengatur opsi withCredentials ke true saat membuat permintaan HTTP. Misalnya, menggunakan Axios:

    axios.defaults.withCredentials = true;
  4. Endpoint /sanctum/csrf-cookie: Sebelum mengirim permintaan autentikasi, SPA Anda harus terlebih dahulu mengirim permintaan ke endpoint /sanctum/csrf-cookie untuk mengatur cookie CSRF.

    axios.get('/sanctum/csrf-cookie').then(response => {
        // Lakukan permintaan autentikasi setelah cookie CSRF diatur
    });
  5. Autentikasi: Setelah cookie CSRF diatur, Anda dapat mengirim permintaan autentikasi (misalnya, permintaan login) ke backend Laravel Anda. Jika autentikasi berhasil, Sanctum akan mengatur cookie sesi yang akan digunakan untuk mengautentikasi permintaan selanjutnya.

Dengan konfigurasi yang tepat, autentikasi SPA dengan cookie Laravel Sanctum untuk Authentication API sangat mudah dan aman.

Studi Kasus: Contoh Penggunaan Laravel Sanctum di Dunia Nyata

Untuk memberikan gambaran yang lebih jelas tentang bagaimana Laravel Sanctum untuk Authentication API dapat digunakan, mari kita lihat beberapa studi kasus contoh:

  • Aplikasi E-commerce: Sebuah aplikasi e-commerce menggunakan Sanctum untuk mengautentikasi pengguna yang mengakses API untuk melakukan pemesanan, melihat riwayat pesanan, dan mengelola profil mereka. Token API digunakan untuk mengautentikasi aplikasi mobile, sementara cookie digunakan untuk mengautentikasi aplikasi web.
  • Aplikasi Manajemen Proyek: Sebuah aplikasi manajemen proyek menggunakan Sanctum untuk mengautentikasi pengguna yang mengakses API untuk membuat tugas, menetapkan tugas, dan melacak kemajuan proyek. Abilities digunakan untuk memberikan izin yang berbeda kepada pengguna yang berbeda, tergantung pada peran mereka dalam proyek.
  • Aplikasi IoT (Internet of Things): Sebuah aplikasi IoT menggunakan Sanctum untuk mengautentikasi perangkat yang mengirim data ke server. Token API digunakan untuk mengidentifikasi dan mengotorisasi setiap perangkat, memastikan hanya perangkat yang terdaftar yang dapat mengirim data.

Studi kasus ini menunjukkan fleksibilitas dan kegunaan Laravel Sanctum untuk Authentication API dalam berbagai skenario.

Tips dan Trik untuk Meningkatkan Keamanan dengan Laravel Sanctum

Berikut adalah beberapa tips dan trik tambahan untuk meningkatkan keamanan API Anda dengan Laravel Sanctum untuk Authentication API:

  • Gunakan HTTPS: Pastikan aplikasi Anda menggunakan HTTPS untuk mengenkripsi semua komunikasi antara klien dan server. Ini akan mencegah penyerang dari mencegat token API atau cookie sesi.
  • Simpan Token dengan Aman: Jangan pernah menyimpan token API dalam kode sumber atau di tempat lain yang dapat diakses oleh publik. Simpan token di tempat yang aman seperti penyimpanan rahasia atau enkripsi.
  • Gunakan Masa Berlaku Token: Pertimbangkan untuk menggunakan masa berlaku token untuk membatasi masa pakai token API. Ini akan mengurangi risiko jika token dicuri.
  • Implementasikan Rate Limiting: Implementasikan rate limiting untuk mencegah serangan brute-force terhadap endpoint autentikasi.
  • Monitor Log: Monitor log aplikasi Anda secara teratur untuk mencari aktivitas yang mencurigakan.
  • Gunakan Middleware Tambahan: Gunakan middleware seperti throttle untuk melindungi rute API Anda dari penyalahgunaan.
  • Regularly Rotate Tokens: Implementasikan mekanisme untuk secara teratur merotasi token API untuk meningkatkan keamanan.
  • Validate Input: Selalu validasi input pengguna untuk mencegah serangan injeksi.

Dengan mengikuti tips dan trik ini, Anda dapat meningkatkan keamanan API Anda secara signifikan dan melindungi data Anda dari ancaman.

Alternatif Laravel Sanctum: Membandingkan dengan Solusi Authentication Lain

Meskipun Laravel Sanctum untuk Authentication API merupakan pilihan yang sangat baik untuk banyak kasus, ada solusi autentikasi lain yang tersedia. Mari kita bandingkan Sanctum dengan beberapa alternatif:

  • Laravel Passport (OAuth2): Passport adalah implementasi lengkap OAuth2 untuk Laravel. Ini lebih kompleks daripada Sanctum, tetapi menawarkan fitur yang lebih canggih seperti otorisasi pihak ketiga dan dukungan untuk berbagai jenis grant. Passport cocok untuk aplikasi yang memerlukan autentikasi yang sangat aman dan fleksibel.
  • JWT (JSON Web Token): JWT adalah standar terbuka untuk membuat token yang aman. JWT dapat digunakan dengan Laravel menggunakan berbagai pustaka. JWT sering digunakan untuk aplikasi yang terdistribusi dan stateless.
  • Sesi Laravel Standar: Anda juga dapat menggunakan sesi Laravel standar untuk mengautentikasi API, tetapi ini kurang aman dan kurang fleksibel daripada Sanctum. Sesi biasanya digunakan untuk aplikasi web tradisional.

Pilihan solusi autentikasi yang tepat tergantung pada kebutuhan spesifik proyek Anda. Jika Anda membutuhkan solusi yang sederhana dan mudah digunakan, Laravel Sanctum untuk Authentication API adalah pilihan yang sangat baik. Jika Anda membutuhkan fitur yang lebih canggih, Anda mungkin ingin mempertimbangkan Passport atau JWT.

Kesimpulan: Mengamankan API Anda dengan Laravel Sanctum

Dalam artikel ini, kita telah membahas secara mendalam tentang Laravel Sanctum untuk Authentication API, manfaatnya, cara menginstalnya dan mengkonfigurasinya, dan bagaimana menggunakannya untuk mengautentikasi pengguna. Kita juga telah melihat beberapa studi kasus contoh dan tips untuk meningkatkan keamanan API Anda.

Laravel Sanctum untuk Authentication API adalah solusi yang sangat baik untuk mengamankan API Anda dengan cara yang sederhana dan efisien. Dengan menggunakan Sanctum, Anda dapat melindungi data sensitif Anda dari akses yang tidak sah dan memastikan bahwa hanya pengguna yang terautentikasi yang dapat mengakses endpoint API Anda. Jadi, jangan ragu untuk mengimplementasikan Sanctum di proyek Laravel Anda dan nikmati keamanan API yang lebih terjamin!

Tags: APIAPI AuthenticationAPI SecurityAuthenticationLaravelLaravel SanctumPHPSecuritySPA AuthenticationToken-based Authentication
Lyra Silverbrook

Lyra Silverbrook

Related Posts

Contoh

Contoh Project Laravel Open Source: Inspirasi & Referensi Kode

by Elara Meadowlight
November 30, 2025
Belajar

Komunitas Laravel Developer Indonesia: Bergabung & Belajar Bersama!

by Elara Meadowlight
November 30, 2025
Deployment

Cara Deploy Aplikasi Laravel ke Server: Panduan Lengkap Hingga Website Online

by Jasper Nightshade
November 30, 2025
Next Post

Laravel Voyager Tutorial Bahasa Indonesia: CMS Laravel yang Mudah Digunakan

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recommended

Contoh Implementasi AI dalam Bisnis UKM: Studi Kasus dan Peluang Bisnis

June 20, 2025

Contoh Project Web Development Sederhana: Inspirasi dan Tutorial Lengkap

June 12, 2025

Cara Implementasi Authentication di Laravel: Keamanan Website Terjamin

August 1, 2025

Contoh Website Company Profile Sederhana dengan HTML CSS: Inspirasi Desain Modern

July 30, 2025

Perbandingan CRM Open Source dan Berbayar: Pilih Sesuai Anggaran dan Kebutuhan

June 5, 2026

Contoh Implementasi CRM yang Sukses di Indonesia: Inspirasi untuk Bisnis Anda

June 5, 2026

Training CRM untuk Tim Sales dan Marketing: Tingkatkan Kompetensi dan Produktivitas

June 5, 2026

Harga Software CRM di Indonesia per Bulan: Perbandingan dan Pilihan Terbaik

June 5, 2026

tutwuri

Our media platform offers reliable news and insightful articles. Stay informed with our comprehensive coverage and in-depth analysis on various topics.
Read more »

Recent Posts

  • Perbandingan CRM Open Source dan Berbayar: Pilih Sesuai Anggaran dan Kebutuhan
  • Contoh Implementasi CRM yang Sukses di Indonesia: Inspirasi untuk Bisnis Anda
  • Training CRM untuk Tim Sales dan Marketing: Tingkatkan Kompetensi dan Produktivitas

Categories

  • AI
  • Akuntansi
  • Algoritma
  • Alternatif
  • Analisis
  • and separated by commas: Hosting
  • API
  • Aplikasi
  • Asuransi
  • Authentication
  • Backend
  • Bahasa Indonesia
  • Belajar
  • Berita
  • Biaya
  • Bisnis
  • Blog
  • Bootstrap
  • Branding
  • Bulanan
  • Business
  • Cepat
  • Chatbot
  • ChatGPT
  • Cloud
  • CMS
  • Command
  • Contoh
  • CPanel
  • CRM
  • CRUD
  • CSS
  • Data
  • Database
  • Debugging
  • Deployment
  • Desain
  • Design
  • Developer
  • Development
  • Digital
  • Dokumentasi
  • Domain
  • Download
  • Dukungan
  • E-commerce
  • Efektif
  • Efektivitas
  • Efisiensi
  • Email
  • Error
  • Error generating categories
  • Etika
  • Event
  • Excel
  • Fashion
  • File
  • Fitur
  • Fleksibilitas
  • Framework
  • Freelance
  • Frontend
  • Fungsional
  • Gambar
  • Game
  • Garansi
  • Generatif
  • Google
  • Gratis
  • Harga
  • Here are 5 categories
  • Here are 5 categories based on the article titles
  • Hosting
  • HTML
  • Ide
  • Implementasi
  • Indonesia
  • Industri
  • Inovasi
  • Inspirasi
  • Integrasi
  • Investasi
  • Jakarta
  • JavaScript
  • Kapasitas
  • Karir
  • Kasus
  • Keamanan
  • Keandalan
  • Keberhasilan
  • Kebutuhan
  • Kecepatan
  • Kepuasan
  • Kerugian
  • Kesehatan
  • Kinerja
  • Kolaborasi
  • Komunikasi
  • Komunitas
  • Konfigurasi
  • Konstruksi
  • Konten
  • Kota
  • Kreativitas
  • Kualitas
  • Kustomisasi
  • Laporan
  • Laravel
  • Layanan
  • Lokasi
  • Machine Learning
  • Mahasiswa
  • Manajemen
  • Manajemen Proyek
  • Manfaat
  • Manufaktur
  • Marketing
  • Masa Depan
  • Masyarakat
  • Media Sosial
  • Migrasi
  • Migration
  • Mobile
  • Model
  • Monitoring
  • Murah
  • Negosiasi
  • Node JS
  • Online
  • Open Source
  • Optimasi
  • Otentikasi
  • Otomatis
  • Otomatisasi
  • Otomotif
  • Panduan
  • Pariwisata
  • Payment Gateway
  • Pekerjaan
  • Pelajar
  • Pelanggan
  • Pelatihan
  • Peluang
  • Pemasaran
  • Pemrograman
  • Pemula
  • Pendidikan
  • Pengambilan Keputusan
  • Pengembangan
  • Pengguna
  • Penggunaan
  • Penghasilan
  • Penipuan
  • Penjualan
  • Perbandingan
  • Perbedaan
  • Performa
  • Personalisasi
  • Pertumbuhan
  • Perubahan
  • PHP
  • Pilihan
  • Plugin
  • Portfolio
  • Prediksi
  • Produktivitas
  • Profesional
  • Programmer
  • Promo
  • Prospek
  • Python
  • Queue
  • Rekomendasi
  • Responsive
  • Retensi
  • Review
  • SEO
  • Sertifikat
  • Server
  • Sistem
  • Skalabilitas
  • Skill
  • Software
  • Solusi
  • SSD
  • SSL
  • Stabilitas
  • Startup
  • Strategi
  • Syarat
  • Tanggung Jawab
  • Tantangan
  • Technology
  • Teknologi
  • Template
  • Terbaik
  • Terbaru
  • Terpercaya
  • Testimoni
  • Tips
  • Tools
  • Traffic
  • Trafik
  • Tren
  • Troubleshooting
  • Tutorial
  • UI
  • UKM
  • Unlimited
  • Upload
  • Uptime
  • using one word per category: Software
  • using only one word from the list provided per category
  • Validasi
  • Video
  • VPS
  • Web
  • Website
  • WordPress

Resource

  • About us
  • Contact Us
  • Privacy Policy

© 2024 tutwuri.

No Result
View All Result
  • Error generating categories
  • Hosting
  • Indonesia
  • Website
  • Laravel
  • Bisnis

© 2024 tutwuri.