Infrastruktur Anda. Data Anda. Kunci Anda.
Cronable dibangun untuk berjalan seperti bagian tepercaya dari stack Anda sendiri. Berikut persis bagaimana ia menjaga otomasi, rahasia, dan riwayat Anda tetap dalam kendali Anda.
On-premises sejak awal
Cronable dipasang di mesin Anda sendiri — aplikasi desktop Mac atau Windows, atau server di bawah systemd/launchd. Tidak ada tingkatan SaaS dan tidak ada ketergantungan cloud. Panggilan keluar rutinnya adalah pemeriksaan lisensi berkala — yang mengonfirmasi langganan Anda dan melaporkan jumlah tugas dan pengguna yang sederhana — serta pemeriksaan rilis baru yang ditandatangani; dan, hanya jika Anda mengaktifkannya, koneksi keluar ke relay yang di-host Cronable untuk webhook masuk atau kendali jarak jauh. Beban kerja Anda — definisi tugas, rahasia, eksekusi, dan keluaran — tetap di perangkat dan tak pernah dikirim kepada kami. Satu-satunya pengecualian adalah sesi kendali jarak jauh yang aktif: lalu lintas dasbornya direlai melalui edge kami (kepercayaan yang sama seperti proxy yang di-host mana pun), dengan enkripsi ujung-ke-ujung ke mesin Anda sendiri sebagai opsi Enterprise yang direncanakan.
Rahasia & kredensial terenkripsi saat disimpan
Nilai rahasia dienkripsi AES-256-GCM dengan kunci yang diturunkan dari kunci enkripsi Anda sendiri (scrypt dengan salt acak per instalasi). Kredensial bertipe — kunci API, token bearer, basic auth, header khusus, dan string koneksi Postgres — berada di penyimpanan terenkripsi yang sama dan dirujuk berdasarkan nama, tak pernah ditempel ke file tugas. Tak ada yang ditulis ke git, dan tak ada yang meninggalkan mesin Anda. Anda mencadangkan kunci secara terpisah — hilangkan dan rahasia tak dapat dipulihkan, sesuai rancangan.
Disamarkan di setiap log dan aliran
Nilai rahasia dan kredensial yang telah di-resolve disunting menjadi “***” di seluruh file log, keluaran tugas, dan aliran log langsung — bahkan ketika sebuah nilai terpecah di antara potongan streaming. Apa yang berjalan di perangkat Anda tetap di perangkat Anda.
Terautentikasi dan hak akses minimal
Konsol web mensyaratkan login per pengguna dengan hashing kata sandi argon2id dan penguncian anti brute-force. Mesin terikat ke localhost secara bawaan dan dimaksudkan untuk berjalan sebagai pengguna khusus berhak akses rendah. Pemanggil server-ke-server menggunakan token bearer privat; browser menggunakan cookie sesi berumur pendek — dan keluar, atau sesi yang kedaluwarsa, menutup bahkan aliran log langsung yang terbuka dalam hitungan detik. Kata sandi juga harus lolos pemeriksaan kekuatan — panjang minimum ditambah uji keterdugaan — sehingga yang lemah atau mudah ditebak ditolak. Autentikasi dua faktor (TOTP) opsional menambahkan kode sekali pakai dari aplikasi autentikator seperti Google Authenticator, dengan kode pemulihan jika perangkat hilang; autentikasi ini wajib untuk menggunakan akses jarak jauh, sehingga sebuah mesin hanya dapat dibuka ke dasbor terkelola oleh orang yang telah mengaktifkannya.
Akses tim dengan peran
Konsol web bersifat multi-pengguna, dengan empat peran berjenjang — peninjau (hanya-baca), penyunting (membuat tugas, rahasia, dan eksekusi), admin (mengelola pengguna, peran, dan pengaturan), serta pemilik, akun pertama instalasi. Admin menambah dan menghapus pengguna, menetapkan peran tiap orang, mereset kata sandi atau perangkat dua faktor, dan mencabut akses di Settings → Users — sehingga rekan tim yang keluar langsung kehilangan akses dan tak ada yang berbagi login. Instalasi yang diperketat dapat mengaktifkan lebih banyak lagi: penjenjangan eksekusi membatasi siapa yang boleh membuat tugas yang menjalankan perintah, dan persetujuan perubahan menambahkan tinjauan dua orang, sehingga admin kedua harus menyetujui perubahan tugas atau rahasia yang tertunda sebelum berlaku.
Single sign-on via OIDC
Bawa penyedia identitas Anda — Okta, Entra ID, Google, Keycloak — melalui alur OIDC authorization-code dengan PKCE dan verifikasi ID-token penuh. Masuk lewat SSO harus dipetakan ke akun lokal yang sudah ada: tak ada yang di-provisioning otomatis, dan galat penyedia muncul sebagai pesan tetap yang ramah alih-alih pengalihan mentah.
Jejak audit yang benar-benar bisa Anda baca
Login dan upaya yang gagal, perubahan rahasia dan kredensial, penyuntingan tugas, pembaruan pengaturan, dan sinkronisasi git dicatat dalam jejak audit yang hanya-tambah — hanya nama dan metadata, tak pernah nilai — bisa dilihat dan difilter langsung di konsol pada Settings → Audit.
Webhook masuk yang diperkeras
Webhook masuk menjangkau daemon Anda melalui relay kami yang dibatasi lisensi lewat koneksi yang dibuka server Anda ke luar, jadi Anda tak pernah mengekspos port — kecuali Anda memang sengaja memilihnya. Setiap hook terikat pada lisensi Anda — tak ada pelanggan lain yang bisa mengklaimnya atau menerima peristiwanya, bahkan jika tahu URL-nya — dan dijaga oleh token per-hook yang hanya disimpan sebagai hash SHA-256 dan diperiksa dalam waktu konstan. URL membutuhkan setidaknya 32 karakter yang tak bisa ditebak ditambah token itu; salah, hilang, dinonaktifkan, atau tak dikenal semuanya mengembalikan 401 generik yang sama, dan probe berulang dari sebuah IP diblokir sementara — jadi tak ada yang bisa dienumerasi dan tak ada yang bisa di-brute-force. Token diungkap sekali saat dibuat dan bisa dirotasi dengan sekali klik. Jika Anda lebih suka payload masuk sama sekali tidak melewati server kami, Anda bisa melewati relay dan menyajikan endpoint HTTPS Anda sendiri — itulah satu-satunya kasus di mana Anda memang membuka port, dan webhook lalu tiba langsung di mesin Anda.
Riwayat teraudit git yang bisa dibalik
Setiap definisi tugas adalah sebuah file dalam repositori git milik Anda. Setiap perubahan adalah sebuah commit — sepenuhnya bisa di-diff, dilacak pemiliknya, dan dibalik. Riwayat tugas Anda dapat diaudit dengan alat yang sudah dipakai tim Anda. Saat Anda menautkan repositori untuk sinkronisasi dua arah, Cronable hanya menerima yang privat — menolak repositori publik dan menghentikan sinkronisasi jika repositori yang tertaut kemudian dijadikan publik — sehingga definisi tugas Anda tidak akan pernah dapat dibaca publik.
Jujur soal batas kepercayaan
Tugas Cronable adalah menjalankan perintah, agen AI, dan HTTP atas nama Anda, jadi perlakukan ia seperti shell di perangkat. Ekspresi berjalan dalam sandbox yang menjaga dari kecerobohan, bukan batas keamanan yang diperkeras — jangan pernah memberinya input tak tepercaya. Kami membantu Anda menerapkannya dengan hak akses minimal dan isolasi jaringan yang masuk akal.
Jalankan di balik firewall Anda.
Punya persyaratan keamanan yang harus dipenuhi? Beri tahu kami lingkungan Anda dan kami akan menelusuri penerapan, pengerasan, dan kontrol akses bersama-sama.
Cronable, dan ia tak pernah meninggalkan perangkat Anda.