모든 개인 기고자들에게 감사드립니다
* 생산에 Ory의 주요 프로젝트 중 하나를 사용합니다.
Ory Keto 설치 방법에 대해 알아 보려면 문서로 이동하십시오.
우리는 건축 설계와 관련하여 몇 가지 지침 원칙에 대한 Ory를 구축합니다.
Ory의 아키텍처는 Kubernetes, Cloudfoundry, OpenShift 및 유사한 프로젝트와 같은 컨테이너 오케스트레이션 시스템에서 가장 잘 작동하도록 설계되었습니다. 바이너리는 작고 (5-15MB), 모든 인기있는 프로세서 유형 (ARM, AMD64, i386) 및 시스템 종속성 (Java, Node, Ruby, Libxml, Libxml, Libxml)이없는 운영 체제 (FreeBsd, Linux, MacOS, Windows)에서 사용할 수 있습니다.
Ory Kratos는 클라우드 아키텍처 모범 사례에 따라 구축 된 API-First Identity 및 사용자 관리 시스템입니다. 거의 모든 소프트웨어 응용 프로그램이 셀프 서비스 로그인 및 등록, 다중 요소 인증 (MFA/2FA), 계정 복구 및 확인, 프로필 및 계정 관리를 처리 해야하는 핵심 사용 사례를 구현합니다.
Ory Hydra는 OpenID Certified ™ Oauth2 및 OpenID Connect 제공 업체로, 작은 "브리지"응용 프로그램을 작성하여 기존 ID 시스템에 쉽게 연결할 수 있습니다. 사용자 인터페이스 및 사용자 경험 흐름을 절대적으로 제어합니다.
Ory OathKeeper는 구성 가능한 인증, 승인 및 웹 서비스에 대한 요청 돌연변이 규칙을 갖춘 IAP (BeyondCorp/Zero Trust Identity & Access Proxy)입니다. JWT, 액세스 토큰, API 키, MTLS; 포함 된 주제가 요청을 수행 할 수 있는지 확인하십시오. 결과 콘텐츠를 사용자 정의 헤더 ( X-User-ID ), JSON 웹 토큰 등으로 인코딩하십시오!
Ory Keto는 정책 결정 지점입니다. 주제 (사용자, 응용 프로그램, 서비스, 자동차 등)가 리소스에 대한 특정 조치를 수행 할 수 있는지 여부를 결정하기 위해 AWS IAM 정책과 유사한 일련의 액세스 제어 정책을 사용합니다.
보안 취약점을 찾았다 고 생각되면 포럼, 채팅 또는 Github에 공개적으로 게시하지 마십시오. Security.txt에서 책임있는 공개에 대한 모든 정보를 찾을 수 있습니다.
당사의 서비스는 선택적으로 꺼질 수있는 요약 된 익명 데이터를 수집합니다. 자세한 내용은 여기를 클릭하십시오.
가이드는 여기에서 제공됩니다.
HTTP API는 여기에 문서화되어 있습니다.
새로운 릴리스는 파괴 변경을 도입 할 수 있습니다. 이러한 변경 사항을 식별하고 통합 할 수 있도록 업그레이드 및 changelog.md의 이러한 변경 사항을 문서화합니다.
keto -h 또는 keto help 실행하십시오.
모든 기부금을 장려하고 기여 지침을 읽는 것이 좋습니다.
1.19+가 필요하며 (테스트 스위트의 경우) :
Windows에서 Ory Keto를 개발할 수는 있지만 모든 가이드는 Bash 또는 Zsh와 같은 Unix 쉘을 가정합니다.
설치하십시오
make format 사용하여 모든 코드를 포맷 할 수 있습니다. CI는 귀하의 코드가 올바르게 형식화되어 있는지 확인합니다.
실행할 수있는 두 가지 유형의 테스트가 있습니다.
짧은 테스트는 상당히 빠르게 실행됩니다. 모든 코드를 한 번에 테스트 할 수 있습니다.
go test -short -tags sqlite ./...또는 특정 모듈 만 테스트하십시오.
go test -tags sqlite -short ./internal/check/...정기 테스트에는 데이터베이스 설정이 필요합니다. 테스트 스위트는 Docker와 직접 작업 할 수 있지만 (Ory/DockerTest 사용) 대신 스크립트를 사용하는 것이 좋습니다. DockerTest를 사용하면 시스템의 Docker 이미지 수를 팽창시킬 수 있으며 각 실행에서 시작하여 시작합니다. 대신 우리는 다음을 권장합니다.
source ./scripts/test-resetdb.sh
go test -tags sqlite ./... E2E 테스트는 정상 go test 의 일부입니다. E2E 테스트 만 실행하려면 다음을 사용하십시오.
source ./scripts/test-resetdb.sh
go test -tags sqlite ./internal/e2e/... 또는 -short 태그를 추가하여 SQLITE 내 메모리에 대해서만 테스트하십시오.
다음을 사용하여 개발 도커 이미지를 구축 할 수 있습니다.
Docker를 만드십시오