2

Web アプリケーションに U2F を実装しようとしています。アプリケーションは複数の URL で使用できるため、仕様で説明されているように、有効な FacetID を含む JSON ファイルを追加する必要があります。Yubico のWeb サイトには、その仕様の短い要約があります。

残念ながら、u2f.register(...)メソッドを呼び出すと、エラー コード 2 が表示されます。これは、AppID に問題があることを意味します。

My AppID は JSON ファイルへの URL です。仕様にあるとおり、application/fido.trusted-apps+jsonコンテンツタイプとして追加します。とにかく、この URL が呼び出されることはありません。

最新の Chrome (v46.0.2490.80m) を使用しています。ここで述べたように、Chrome 拡張機能はもう必要ありません。

さらに、仕様に従って U2F が実装されていることを示す Chromium プロジェクトに関するクローズドバグ レポートを見つけました。

Chrome 拡張機能の代わりにu2f-api.jsを使用しています。

この u2f-api.js は問題ですか? より新しいものはありますか?

これまでの私のコードは次のとおりです。

var u2frequest =
[
    {
        "appId":"https://localhost:44300/api/u2f/appids.json",
        "challenge":"hDharTG-SROuScxyD7ACpMDp4xl6A91E9nUPXDRSo_4",
        "version":"U2F_V2"
    }
];
u2f.register(u2frequest, [], function (data) {
    // I always get data={errorCode:2} here.
}
4

2 に答える 2

2

ファセットは、自己署名証明書では機能しません。したがって、1 つの ID アプリケーションは localhost で問題なく動作しますが、複数の ID は localhost では動作しません。

最善の解決策は、VPS をレンタルして Letsencrypt 証明書を取得することです。

于 2016-09-22T05:11:23.140 に答える