Muito obrigado a todos os colaboradores individuais
* Usa um dos principais projetos da ORY em produção.
Vá até a documentação para aprender sobre maneiras de instalar o Ory Keto.
Construímos ory em vários princípios orientadores quando se trata de nosso design de arquitetura:
A arquitetura da ORY foi projetada para ser melhor em um sistema de orquestração de contêineres, como Kubernetes, Cloudfoundry, OpenShift e projetos semelhantes. Os binários são pequenos (5-15 MB) e estão disponíveis para todos os tipos populares de processadores (ARM, AMD64, i386) e sistemas operacionais (FreeBSD, Linux, MacOS, Windows) sem dependências do sistema (Java, Node, Ruby, Libxml, ...).
Ory Kratos é um sistema de gerenciamento de identidade e usuário da API-primeiro que é construído de acordo com as melhores práticas de arquitetura em nuvem. Ele implementa casos de uso principal com os quais quase todo aplicativo de software precisa lidar: login e registro de autoatendimento, autenticação multifatorial (MFA/2FA), recuperação e verificação de contas, perfil e gerenciamento de contas.
O Ory Hydra é um provedor OpenID Certified ™ OAuth2 e OpenID Connect que se conecta facilmente a qualquer sistema de identidade existente, escrevendo um pequeno aplicativo "ponte". Ele fornece controle absoluto sobre a interface do usuário e os fluxos da experiência do usuário.
ORY Oathkeeper é um Proxy de Identidade e Acesso a BeyondCorp/Zero Trust (IAP) com Regras de Autenticação, Autorização e Aceleração Configuráveis para seus Serviços da Web: Autentique JWT, Tokens de Acesso, Keys API, MTLs; Verifique se o assunto contido pode executar a solicitação; Encoda o conteúdo resultante em cabeçalhos personalizados ( X-User-ID ), JSON Web Tokens e muito mais!
Ory Keto é um ponto de decisão político. Ele usa um conjunto de políticas de controle de acesso, semelhantes às políticas da AWS IAM, para determinar se um sujeito (usuário, aplicativo, serviço, carro, ...) está autorizado a executar uma determinada ação em um recurso.
Se você acha que encontrou uma vulnerabilidade de segurança, evite publicá -la publicamente nos fóruns, no bate -papo ou no Github. Você pode encontrar todas as informações para divulgação responsável em nossa segurança.txt.
Nossos serviços coletam dados resumidos e anonimizados, que opcionalmente podem ser desligados. Clique aqui para saber mais.
O guia está disponível aqui.
A API HTTP está documentada aqui.
Novos lançamentos podem introduzir mudanças de ruptura. Para ajudá -lo a identificar e incorporar essas alterações, documentamos essas alterações no upgrade.md e changelog.md.
Execute a ajuda keto -h ou keto help .
Incentivamos todas as contribuições e recomendamos que você leia nossas diretrizes de contribuição.
Você precisa ir 1.19+ e (para as suítes de teste):
É possível desenvolver o Ory Keto no Windows, mas esteja ciente de que todos os guias assumem um shell Unix como Bash ou Zsh.
faça instalar
Você pode formatar todo o código usando make format . Nosso CI verifica se o seu código é formatado corretamente.
Existem dois tipos de testes que você pode executar:
Testes curtos funcionam rapidamente. Você pode testar todo o código de uma só vez:
go test -short -tags sqlite ./...ou teste apenas um módulo específico:
go test -tags sqlite -short ./internal/check/...Testes regulares requerem um banco de dados configurado. Nosso conjunto de testes é capaz de trabalhar diretamente com o Docker (usando o Ory/Dockertest), mas incentivamos a usar o script. O uso do Dockertest pode inchar o número de imagens do Docker no seu sistema e iniciá -las em cada execução é bastante lento. Em vez disso, recomendamos fazer:
source ./scripts/test-resetdb.sh
go test -tags sqlite ./... Os testes E2E fazem parte do go test normal. Para executar apenas o teste E2E, use:
source ./scripts/test-resetdb.sh
go test -tags sqlite ./internal/e2e/... ou adicione a tag -short para testar apenas o sqlite in -memory.
Você pode construir uma imagem do Docker de desenvolvimento usando:
Faça do Docker