Terima kasih banyak untuk semua kontributor individu
* Menggunakan salah satu proyek utama Ory dalam produksi.
Pergilah ke dokumentasi untuk mempelajari cara -cara menginstal Ory Keto.
Kami membangun ory di beberapa prinsip panduan ketika datang ke desain arsitektur kami:
Arsitektur Ory dirancang untuk berjalan paling baik pada sistem orkestrasi kontainer seperti Kubernetes, Cloudfoundry, OpenShift, dan proyek serupa. Binari adalah kecil (5-15MB) dan tersedia untuk semua jenis prosesor populer (ARM, AMD64, I386) dan sistem operasi (FreeBSD, Linux, MacOS, Windows) tanpa dependensi sistem (Java, Node, Ruby, LibxML, ...).
Ory Kratos adalah identitas API-pertama dan sistem manajemen pengguna yang dibangun sesuai dengan praktik terbaik arsitektur cloud. Ini mengimplementasikan kasus penggunaan inti yang hampir setiap aplikasi perangkat lunak perlu ditangani: Login dan pendaftaran swalayan, otentikasi multi-faktor (MFA/2FA), pemulihan dan verifikasi akun, profil, dan manajemen akun.
Ory Hydra adalah penyedia OpenID Certified ™ OAuth2 dan OpenID Connect yang dengan mudah terhubung ke sistem identitas yang ada dengan menulis aplikasi "jembatan" kecil. Ini memberikan kontrol mutlak atas antarmuka pengguna dan aliran pengalaman pengguna.
Ory Oathkeeper adalah BeyondCorp/Zero Trust Identity & Access Proxy (IAP) dengan otentikasi yang dapat dikonfigurasi, otorisasi, dan meminta aturan mutasi untuk layanan web Anda: Otentikasi JWT, Token Akses, Kunci API, MTLS; Periksa apakah subjek yang terkandung diizinkan untuk melakukan permintaan; Pencatat konten yang dihasilkan ke header khusus ( X-User-ID ), token web JSON dan banyak lagi!
Ory Keto adalah titik keputusan kebijakan. Ini menggunakan serangkaian kebijakan kontrol akses, mirip dengan kebijakan AWS IAM, untuk menentukan apakah suatu subjek (pengguna, aplikasi, layanan, mobil, ...) diizinkan untuk melakukan tindakan tertentu pada sumber daya.
Jika Anda pikir Anda menemukan kerentanan keamanan, silakan jangan mempostingnya secara publik di forum, obrolan, atau github. Anda dapat menemukan semua info untuk pengungkapan yang bertanggung jawab di Security.txt kami.
Layanan kami mengumpulkan data yang dirangkum dan dianonimkan yang secara opsional dapat dimatikan. Klik di sini untuk mempelajari lebih lanjut.
Panduan ini tersedia di sini.
API HTTP didokumentasikan di sini.
Rilis baru dapat memperkenalkan perubahan yang melanggar. Untuk membantu Anda mengidentifikasi dan memasukkan perubahan itu, kami mendokumentasikan perubahan ini dalam upgrade.md dan changelog.md.
Jalankan keto -h atau keto help .
Kami mendorong semua kontribusi dan merekomendasikan Anda membaca pedoman kontribusi kami.
Anda perlu pergi 1.19+ dan (untuk suite tes):
Dimungkinkan untuk mengembangkan ory keto di windows, tetapi berhati -hatilah bahwa semua pemandu menganggap shell unix seperti bash atau zsh.
buat instal
Anda dapat memformat semua kode menggunakan make format . CI kami memeriksa apakah kode Anda diformat dengan benar.
Ada dua jenis tes yang dapat Anda jalankan:
Tes pendek berjalan cukup cepat. Anda dapat menguji semua kode sekaligus:
go test -short -tags sqlite ./...Atau uji hanya modul tertentu:
go test -tags sqlite -short ./internal/check/...Tes reguler memerlukan pengaturan database. Test suite kami dapat bekerja dengan Docker secara langsung (menggunakan Ory/Dockertest) tetapi kami mendorong untuk menggunakan skrip sebagai gantinya. Menggunakan Dockertest dapat kembung jumlah gambar Docker pada sistem Anda dan memulainya pada setiap proses cukup lambat. Sebaliknya kami merekomendasikan melakukan:
source ./scripts/test-resetdb.sh
go test -tags sqlite ./... Tes E2E adalah bagian dari go test normal. Untuk hanya menjalankan tes E2E, gunakan:
source ./scripts/test-resetdb.sh
go test -tags sqlite ./internal/e2e/... Atau tambahkan tag -short untuk hanya menguji terhadap SQLite in -memory.
Anda dapat membangun gambar Docker pengembangan menggunakan:
Buat Docker