Este é o repositório do Grupo de Trabalho WebAuthn do W3C, que produz o rascunho da especificação "Autenticação da Web" .
gh-pages
deste repositório.Para contribuir materialmente para esta especificação, você deve atender aos requisitos descritos em CONTRIBUTING.md. Além disso, antes de enviar comentários, familiarize-se com nossa lista de problemas atuais e revise a discussão na lista de e-mails.
O HTML formatado para o rascunho pode ser criado usando bikeshed
(veja abaixo as instruções para instalação bikeshed
):
$ bikeshed spec
Você também pode querer usar a funcionalidade watch
para regenerar automaticamente conforme você faz alterações:
$ bikeshed watch
Veja as instruções completas em https://tabatkins.github.io/bikeshed/#installing.
Você precisará ter o Python 3.7 ou posterior instalado. Depois de instalar o Python 3.7 ou posterior, para instalar o Bikeshed, execute o seguinte:
pip3 install bikeshed && bikeshed update
Quando isso for concluído, o Bikeshed deverá estar instalado e o comando bikeshed
deverá funcionar em seu shell.
https://w3c.github.io/webauthn/ é publicado automaticamente a partir do branch gh-pages
em cada push para o branch main
, usando https://github.com/w3c/webauthn/blob/main/.github/workflows/ build-validate-publish.yml para configurar o comportamento de publicação automática.
Para construir um novo WD e carregá-lo no sistema de publicação W3C:
bikeshed update
bikeshed spec
bikeshed echidna --u USERNAME --p PASSWORD --d DECISION_URL
O comando acima criará um tarball de HTML e imagens e fará o upload para o Echidna, o sistema de publicação automatizado do W3C. O comando deve retornar uma URL, por meio da qual você poderá saber se publicou o rascunho com sucesso. O status da solicitação também pode ser rastreado através do Arquivo da Lista de Discussão. Você também pode usar a API W3C conforme descrito na documentação do Echidna. Observe que no Windows, isso gerará um erro sobre a falha na exclusão de um arquivo temporário porque ele está em uso por um processo diferente. Este erro é inofensivo; isso acontece após a conclusão do envio.
Se a publicação por meio do processo não for bem-sucedida, provavelmente é por causa do Specbreus, um verificador de conformidade de especificações. O Echidna é executado automaticamente no Specbreus e rejeitará a publicação se algum erro for relatado pelo Specbreus. Você pode executar seu documento por meio do Pubrules para entender por que seu documento foi rejeitado. Você pode modificar o arquivo index.bs ou o arquivo index.html para garantir a conformidade.
Na maioria das vezes, você descobrirá que os erros do Pubrules são devidos a bugs no Bikeshed ou no Specbreus. Nesse caso, você terá que modificar o arquivo index.html compilado para ignorar o Echidna e usar o processo manual para publicar. Ao editar o arquivo HTML para evitar erros, você também deve verificar se o documento ainda é renderizado corretamente.
O processo manual requer que você primeiro crie um arquivo tar. Para criar o arquivo tar, você precisa primeiro copiar o arquivo index.html e renomear o arquivo copiado como Overview.html. Isso ocorre porque o Echidna não reconhece index.html. Você pode então usar o seguinte comando para criar um arquivo tar:
tar -cvf WD.tar Overview.html image1 image2 image3
Em seguida, você pode executar o seguinte comando curl para publicar no Echidna (use o comando no mesmo diretório do seu arquivo tar):
curl 'https://labs.w3.org/echidna/api/request' --user '<username>:<password>' -F "[email protected]" -F "decision=<decisionUrl>"
Sinta-se à vontade para entrar em contato com seu presidente ou qualquer equipe do W3C quando estiver empacado. Informações gerais sobre equidna estão aqui: https://github.com/w3c/echidna/wiki e aqui https://labs.w3.org/echidna/.