
OpenID 인증을 받은 OAuth 2.0 및 OpenID Connect 제공자로, 토큰 발급, 클라이언트 관리, JWKS, 그리고 클라우드 네이티브 애플리케이션을 위한 헤드리스 API를 통한 로그인/동의 흐름 오케스트레이션을 제공합니다.
Ory Hydra는 낮은 지연 시간, 높은 처리량, 낮은 리소스 소비에 최적화된 강화된(OpenID 인증) OAuth 2.0 서버이자 OpenID Connect 제공자입니다. 로그인 및 동의 앱을 통해 기존 ID 제공자에 연결되므로 사용자 인터페이스와 경험을 완전히 제어할 수 있습니다.
Ory Hydra는 OAuth 2.0 인증 프레임워크와 OpenID Connect Core 1.0의 서버 구현체입니다. 클라우드 아키텍처 모범 사례를 따르며 다음에 중점을 둡니다:
아키텍처, 기능 세트, 다른 시스템과의 비교 등 자세한 내용은 Ory Hydra 소개 문서를 먼저 읽어 보시기를 권장합니다.
Ory Hydra는 다음을 위해 설계되었습니다:
Ory Hydra는 IETF가 제정한 공개 표준을 구현합니다:
그리고 OpenID 재단이 제정한 표준도 구현합니다:
Ory Hydra는 OpenID 재단의 인증된 OpenID 제공자(OP)입니다.
다음 OpenID 프로필이 인증되었습니다:
code)id_token, id_token+token)code+id_token, code+id_token+token, code+token)인증을 획득하기 위해 참조 사용자 로그인 및 동의 앱(수정되지 않은 버전)과 Ory Hydra v1.0.0을 배포했습니다.
Ory Hydra는 두 가지 주요 방식으로 실행할 수 있습니다:
Ory Network는 프로덕션 환경에서 Ory 서비스를 사용하는 가장 빠른 방법입니다. Ory OAuth2 및 OpenID Connect는 오픈 소스 Ory Hydra 서버로 구동되며 API 호환이 가능합니다.
Ory Network는 다음을 제공합니다:
시작하려면 무료 개발자 계정에 가입하세요.
Ory Hydra를 직접 실행하면 인프라, 배포, 사용자 지정을 완전히 제어할 수 있습니다.
설치 가이드에서는 다음 방법을 설명합니다:
이 가이드는 라이선스 요구 사항 없이 시작할 수 있도록 오픈 소스 배포판을 사용합니다. 개인, 연구자, 해커, 그리고 SLA 없이 실험, 프로토타이핑 또는 중요하지 않은 워크로드를 실행하려는 기업에 적합합니다. 전체 코어 엔진을 사용할 수 있으며, 소스 코드를 검사하고 확장하고 빌드할 자유가 있습니다.
예를 들어 모든 사용자의 OAuth2 및 OpenID Connect와 같이 Hydra를 비즈니스에 중요한 시스템의 일부로 실행하는 경우, 운영 및 보안 위험을 줄이기 위해 상업 계약을 사용해야 합니다. **Ory 엔터프라이즈 라이선스(OEL)**는 자체 호스팅 Hydra 위에 계층으로 제공되며 다음을 지원합니다:
보장된 CVE 수정, 최신 엔터프라이즈 빌드, 고급 기능, 프로덕션 환경 지원을 위해서는 유효한 Ory 엔터프라이즈 라이선스와 Ory 엔터프라이즈 Docker 레지스트리 액세스 권한이 필요합니다. 자세한 내용은 Ory 팀에 문의하세요.
Ory CLI를 설치하고 새 프로젝트를 만들어 Ory OAuth2 및 OpenID Connect를 사용해 보세요.```bash
bash <(curl https://raw.githubusercontent.com/ory/meta/master/install.sh) -b . ory sudo mv ./ory /usr/local/bin/
ory auth
ory create project --create-workspace "Ory Open Source" --name "GitHub Quickstart" --use-project
OAuth 2.0 Client Credentials 플로우를 사용해 보세요:```bash
ory create oauth2-client \
--name "Client Credentials Demo" \
--grant-type client_credentials
# Note the client ID and secret from output
ory perform client-credentials \
--client-id <your-client-id> \
--client-secret <your-client-secret>
# Note the access token from output
ory introspect token <your-access-token>
OAuth 2.0 Authorize Code + OpenID Connect 흐름을 사용해 보세요:```bash
ory create oauth2-client
--name "Authorize Code with OpenID Connect Demo"
--grant-type authorization_code,refresh_token
--response-type code
--redirect-uri http://127.0.0.1:4446/callback
ory perform authorization-code
--client-id
--client-secret
## Ory Hydra를 사용하는 곳
<!--BEGIN ADOPTERS-->
Ory 커뮤니티는 개인, 기업, 유지관리자의 어깨 위에 서 있습니다. Ory 팀은 버그 리포트와 기능 요청 제출부터 패치와 문서 기여에 이르기까지 참여한 모든 분들께 감사드립니다. Ory 커뮤니티는 50,000명 이상의 회원을 보유하고 있으며 계속 성장하고 있습니다. Ory 스택은 매일 수천 개의 기업에서 70억 건 이상의 API 요청을 보호합니다. 이 모든 것이 여러분 모두 없이는 불가능했을 것입니다!
다음 목록은 우리와 함께해 왔고 우리 생태계에 뛰어난 기여를 한 기업들을 나타냅니다. _귀사의 자리가 여기에 있다고 생각되면 지금 <a href="mailto:[email protected]">[email protected]</a>으로 연락해 주세요_!<table>
<thead>
<tr>
<th>이름</th>
<th>로고</th>
<th>웹사이트</th>
<th>사례 연구</th>
</tr>
</thead>
<tbody>
<tr>
<td>OpenAI</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/openai.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/openai.svg" alt="OpenAI">
</picture>
</td>
<td><a href="https://openai.com/">openai.com</a></td>
<td><a href="https://www.ory.com/case-studies/openai">OpenAI 사례 연구</a></td>
</tr>
<tr>
<td>Fandom</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/fandom.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/fandom.svg" alt="Fandom">
</picture>
</td>
<td><a href="https://www.fandom.com/">fandom.com</a></td>
<td><a href="https://www.ory.com/case-studies/fandom">Fandom 사례 연구</a></td>
</tr>
<tr>
<td>Lumin</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/lumin.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/lumin.svg" alt="Lumin">
</picture>
</td>
<td><a href="https://www.luminpdf.com/">luminpdf.com</a></td>
<td><a href="https://www.ory.com/case-studies/lumin">Lumin 사례 연구</a></td>
</tr>
<tr>
<td>Sencrop</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/sencrop.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/sencrop.svg" alt="Sencrop">
</picture>
</td>
<td><a href="https://sencrop.com/">sencrop.com</a></td>
<td><a href="https://www.ory.com/case-studies/sencrop">Sencrop 사례 연구</a></td>
</tr>
<tr>
<td>OSINT Industries</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/osint.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/osint.svg" alt="OSINT Industries">
</picture>
</td>
<td><a href="https://www.osint.industries/">osint.industries</a></td>
<td><a href="https://www.ory.com/case-studies/osint">OSINT Industries 사례 연구</a></td>
</tr>
<tr>
<td>HGV</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/hgv.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/hgv.svg" alt="HGV">
</picture>
</td>
<td><a href="https://www.hgv.it/">hgv.it</a></td>
<td><a href="https://www.ory.com/case-studies/hgv">HGV 사례 연구</a></td>
</tr>
<tr>
<td>Maxroll</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/maxroll.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/maxroll.svg" alt="Maxroll">
</picture>
</td>
<td><a href="https://maxroll.gg/">maxroll.gg</a></td>
<td><a href="https://www.ory.com/case-studies/maxroll">Maxroll 사례 연구</a></td>
</tr>
<tr>
<td>Zezam</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/zezam.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/zezam.svg" alt="Zezam">
</picture>
</td>
<td><a href="https://www.zezam.io/">zezam.io</a></td>
<td><a href="https://www.ory.com/case-studies/zezam">Zezam 사례 연구</a></td>
</tr>
<tr>
<td>T.RowePrice</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/troweprice.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/troweprice.svg" alt="T.RowePrice">
</picture>
</td>
<td><a href="https://www.troweprice.com/">troweprice.com</a></td>
</tr>
<tr>
<td>Mistral</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/mistral.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/mistral.svg" alt="Mistral">
</picture>
</td>
<td><a href="https://www.mistral.ai/">mistral.ai</a></td>
</tr>
<tr>
<td>Axel Springer</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/axelspringer.svg" />
<img height="22px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/axelspringer.svg" alt="Axel Springer">
</picture>
</td>
<td><a href="https://www.axelspringer.com/">axelspringer.com</a></td>
</tr>
<tr>
<td>Hemnet</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/hemnet.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/hemnet.svg" alt="Hemnet">
</picture>
</td>
<td><a href="https://www.hemnet.se/">hemnet.se</a></td>
</tr>
<tr>
<td>Cisco</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/cisco.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/cisco.svg" alt="Cisco">
</picture>
</td>
<td><a href="https://www.cisco.com/">cisco.com</a></td>
</tr>
<tr>
<td>Presidencia de la República Dominicana</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/republica-dominicana.svg" />
<img height="42px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/republica-dominicana.svg" alt="Presidencia de la República Dominicana">
</picture>
</td>
<td><a href="https://www.presidencia.gob.do/">presidencia.gob.do</a></td>
</tr>
<tr>
<td>Moonpig</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/moonpig.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/moonpig.svg" alt="Moonpig">
</picture>
</td>
<td><a href="https://www.moonpig.com/">moonpig.com</a></td>
</tr>
<tr>
<td>Booster</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/booster.svg" />
<img height="18px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/booster.svg" alt="Booster">
</picture>
</td>
<td><a href="https://www.choosebooster.com/">choosebooster.com</a></td>
</tr>
<tr>
<td>Zaptec</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/zaptec.svg" />
<img height="24px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/zaptec.svg" alt="Zaptec">
</picture>
</td>
<td><a href="https://www.zaptec.com/">zaptec.com</a></td>
</tr>
<tr>
<td>Klarna</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/klarna.svg" />
<img height="24px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/klarna.svg" alt="Klarna">
</picture>
</td>
<td><a href="https://www.klarna.com/">klarna.com</a></td>
</tr>
<tr>
<td>Raspberry PI Foundation</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/raspi.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/raspi.svg" alt="Raspberry PI Foundation">
</picture>
</td>
<td><a href="https://www.raspberrypi.org/">raspberrypi.org</a></td>
</tr>
<tr>
<td>Tulip</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/tulip.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/tulip.svg" alt="Tulip Retail">
</picture>
</td>
<td><a href="https://tulip.com/">tulip.com</a></td>
</tr>
<tr>
<td>Hootsuite</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/hootsuite.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/hootsuite.svg" alt="Hootsuite">
</picture>
</td>
<td><a href="https://hootsuite.com/">hootsuite.com</a></td>
</tr>
<tr>
<td>Segment</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/segment.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/segment.svg" alt="Segment">
</picture>
</td>
<td><a href="https://segment.com/">segment.com</a></td>
</tr>
<tr>
<td>Arduino</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/arduino.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/arduino.svg" alt="Arduino">
</picture>
</td>
<td><a href="https://www.arduino.cc/">arduino.cc</a></td>
</tr>
<tr>
<td>Sainsbury's</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/sainsburys.svg" />
<img height="24px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/sainsburys.svg" alt="Sainsbury's">
</picture>
</td>
<td><a href="https://www.sainsburys.co.uk/">sainsburys.co.uk</a></td>
</tr>
<tr>
<td>Contraste</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/contraste.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/contraste.svg" alt="Contraste">
</picture>
</td>
<td><a href="https://www.contraste.com/en">contraste.com</a></td>
</tr>
<tr>
<td>inMusic</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/inmusic.svg" />
<img height="24px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/inmusic.svg" alt="InMusic">
</picture>
</td>
<td><a href="https://inmusicbrands.com/">inmusicbrands.com</a></td>
</tr>
<tr>
<td>Buhta</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/buhta.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/buhta.svg" alt="Buhta">
</picture>
</td>
<td><a href="https://buhta.com/">buhta.com</a></td>
</tr>
</tr>
<tr>
<td>Amplitude</td>
<td align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/amplitude.svg" />
<img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/amplitude.svg" alt="amplitude.com">
</picture>
</td>
<td><a href="https://amplitude.com/">amplitude.com</a></td>
</tr>
<tr>
<td align="center"><a href="https://tier4.jp/en/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/tieriv.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/tieriv.svg" alt="TIER IV"></picture></a></td>
<td align="center"><a href="https://kyma-project.io"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/kyma.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/kyma.svg" alt="Kyma Project"></picture></a></td>
<td align="center"><a href="https://serlo.org/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/serlo.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/serlo.svg" alt="Serlo"></picture></a></td>
<td align="center"><a href="https://padis.io/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/padis.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/padis.svg" alt="Padis"></picture></a></td>
</tr>
<tr>
<td align="center"><a href="https://cloudbear.eu/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/cloudbear.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/cloudbear.svg" alt="Cloudbear"></picture></a></td>
<td align="center"><a href="https://securityonionsolutions.com/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/securityonion.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/securityonion.svg" alt="Security Onion Solutions"></picture></a></td>
<td align="center"><a href="https://factlylabs.com/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/factly.svg" /><img height="24px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/factly.svg" alt="Factly"></picture></a></td>
<td align="center"><a href="https://cashdeck.com.au/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/allmyfunds.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/allmyfunds.svg" alt="All My Funds"></picture></a></td>
</tr>
<tr>
<td align="center"><a href="https://nortal.com/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/nortal.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/nortal.svg" alt="Nortal"></picture></a></td>
<td align="center"><a href="https://www.ordermygear.com/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/ordermygear.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/ordermygear.svg" alt="OrderMyGear"></picture></a></td>
<td align="center"><a href="https://r2devops.io/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/r2devops.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/r2devops.svg" alt="R2Devops"></picture></a></td>
<td align="center"><a href="https://www.paralus.io/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/paralus.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/paralus.svg" alt="Paralus"></picture></a></td>
</tr>
<tr>
<td align="center"><a href="https://dyrector.io/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/dyrector_io.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/dyrector_io.svg" alt="dyrector.io"></picture></a></td>
<td align="center"><a href="https://pinniped.dev/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/pinniped.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/pinniped.svg" alt="pinniped.dev"></picture></a></td>
<td align="center"><a href="https://pvotal.tech/"><picture><source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/ory/meta/master/static/adopters/light/pvotal.svg" /><img height="32px" src="https://raw.githubusercontent.com/ory/meta/master/static/adopters/dark/pvotal.svg" alt="pvotal.tech"></picture></a></td>
<td></td>
</tr>
</tbody>
</table>모든 개인 기여자분들께 감사드립니다.
<a href="https://opencollective.com/ory" target="_blank"><img src="https://opencollective.com/ory/contributors.svg?width=890&limit=714&button=false" /></a>
<!--END ADOPTERS-->
## 생태계
<!--BEGIN ECOSYSTEM-->
우리는 아키텍처 설계에 있어 다음과 같은 몇 가지 기본 원칙을 바탕으로 Ory를 구축합니다:
- 최소한의 의존성
- 어디서나 실행 가능
- 노력 없이 확장 가능
- 사람과 네트워크 오류의 여지를 최소화
Ory의 아키텍처는 Kubernetes, CloudFoundry, OpenShift 및 유사한 프로젝트와 같은 컨테이너 오케스트레이션 시스템에서 가장 잘 실행되도록 설계되었습니다. 바이너리는 (5-15MB)로 작으며 시스템 의존성(Java, Node, Ruby, libxml 등) 없이 모든 주요 프로세서 유형(ARM, AMD64, i386)과 운영 체제(FreeBSD, Linux, macOS, Windows)에서 사용할 수 있습니다.
### Ory Kratos: 아이덴티티 및 사용자 인프라와 관리
[Ory Kratos](https://github.com/ory/kratos)는 [클라우드 아키텍처 모범 사례](https://www.ory.com/docs/next/ecosystem/software-architecture-philosophy)에 따라 구축된 API 우선 아이덴티티 및 사용자 관리 시스템입니다. 거의 모든 소프트웨어 애플리케이션이 처리해야 하는 핵심 사용 사례를 구현합니다: 셀프 서비스 로그인 및 등록, 다단계 인증(MFA/2FA), 계정 복구 및 확인, 프로필, 계정 관리.
### Ory Hydra: OAuth2 & OpenID Connect 서버
[Ory Hydra](https://github.com/ory/hydra)는 OpenID Certified™ OAuth2 및 OpenID Connect 제공자로, 작은 "브리지" 애플리케이션을 작성하여 기존의 모든 아이덴티티 시스템에 쉽게 연결할 수 있습니다. 사용자 인터페이스와 사용자 경험 흐름에 대한 완전한 제어 권한을 제공합니다.
### Ory Oathkeeper: 아이덴티티 및 액세스 프록시
[Ory Oathkeeper](https://github.com/ory/oathkeeper)는 웹 서비스에 대해 구성 가능한 인증, 권한 부여, 요청 변환 규칙을 제공하는 BeyondCorp/제로 트러스트 아이덴티티 및 액세스 프록시(IAP)입니다: JWT, 액세스 토큰, API 키, mTLS 인증; 포함된 주체가 요청을 수행할 수 있는지 확인; 결과 콘텐츠를 사용자 지정 헤더(`X-User-ID`), JSON Web Token 등으로 인코딩!
### Ory Keto: 서버로서의 액세스 제어 정책
[Ory Keto](https://github.com/ory/keto)는 정책 결정 지점입니다. AWS IAM 정책과 유사한 일련의 액세스 제어 정책을 사용하여 주체(사용자, 애플리케이션, 서비스, 자동차 등)가 리소스에 대해 특정 작업을 수행할 권한이 있는지 결정합니다.
<!--END ECOSYSTEM-->
## 문서
Ory Hydra 전체 문서는 [www.ory.com/docs/hydra](https://www.ory.com/docs/hydra)에서 확인할 수 있습니다. 포함 내용:
- [설치 가이드](https://www.ory.com/docs/hydra/install)
- [구성 참조](https://www.ory.com/docs/hydra/reference/configuration)
- [HTTP API 문서](https://www.ory.com/docs/hydra/sdk/api)
- [보안 아키텍처](https://www.ory.com/docs/hydra/security-architecture)
- [성능 벤치마크](https://www.ory.com/docs/performance/hydra)
업그레이드 및 변경 로그는 [릴리스 탭](https://github.com/ory/hydra/releases)과 [CHANGELOG.md](https://github.com/ory/hydra/blob/HEAD/CHANGELOG.md)를 확인하세요.
## Ory Hydra 개발
[DEVELOP.md](https://github.com/ory/hydra/blob/HEAD/DEVELOP.md)에서 다음 정보를 확인하세요:
- 기여 지침
- 사전 요구 사항
- 소스에서 설치
- 테스트 실행
- Docker 이미지 빌드
- API 문서 미리보기
## 보안
OAuth2 및 OAuth2 관련 사양은 400페이지가 넘습니다. OAuth2를 구현하는 것은 쉽지만 올바르게 구현하는 것은 어렵습니다. Ory Hydra는 전 세계 기업들의 신뢰를 받고 있으며, 활발한 커뮤니티를 보유하고 있고, 프로덕션 환경에서 매일 수백만 건의 요청을 처리합니다. 암호화 및 보안 개념에 대한 자세한 내용은 [보안 가이드](https://www.ory.com/docs/hydra/security-architecture)를 읽어보세요.
### 취약점 공개
보안 취약점을 발견했다고 생각되면 포럼, 채팅 또는 GitHub에 공개적으로 게시하지 말아 주세요. 책임 있는 공개를 위한 모든 정보는 [security.txt](https://www.ory.com/.well-known/security.txt)에서 확인할 수 있습니다.
## 텔레메트리
당사 서비스는 요약되고 익명화된 데이터를 수집하며, 선택적으로 비활성화할 수 있습니다. 자세한 내용은 [여기](https://www.ory.com/docs/ecosystem/sqa)를 클릭하세요.
## 라이브러리 및 서드파티 프로젝트
공식:
- [User Login & Consent Example](https://github.com/ory/hydra-login-consent-node)
커뮤니티:
- [커뮤니티 프로젝트 및 기사 개요를 보려면 이 문서를 방문하세요](https://www.ory.com/docs/ecosystem/community)
개발자 블로그:
- Ory Hydra 및 Ory 생태계에 관한 가이드, 튜토리얼 및 기사는 [Ory 블로그](https://www.ory.com/blog/)를 방문하세요.