web-dev-qa-db-ja.com

パスワードの代わりにパスフレーズを実装する

私は要件(例:大文字、数字、特殊文字、8文字)を説明することを決定するためにUXとパスワードについて読んでいて、出くわした この答え これは少し落ち込んだウサギの穴の。

パスフレーズはパスワードよりも使いやすいかもしれません。モバイルユーザーはキーボードを切り替える必要はありません。漫画が示唆するように、それがいかに覚えやすいかを見ることができます。私が理解できることから、 いくつかの投稿と記事を読んだ後 もちろん、実際にはより安全ですが、それは良いことです。ユーザーにもっと安全なパスワードを作成してもらい、他のサイトにアクセスするための良い習慣を身につけてもらいたいと思います。私は OWASPの推奨事項この答え に基づいて読みましたが、実際には典型的な要件がリストされています。多分私は間違って見ていますが、それが伝統的なガイドラインを実際に強化しているときにOWASPにリンクするようにOPに指示する理由がわかりません。

加えて、サイトにログインする人として、ずっと実際にパスフレーズを使用しているところはどこにもありません。または、より長いパスフレーズを要求するサイトに出くわしていません(そこに見られる例はありますか?)ほとんどの場合、これを選択したのはユーザーです。しかし、ほとんどのサイトでは、特殊文字と数字の方が強力であることをユーザーに知らせています。彼らにパスワードを作成させ、パスフレーズを作成するように彼らに勧めるべきでしょうか?繰り返しますが、 この受け入れられた答え はノーと言います。だから私はそうではないと言ってみましょう。

この経路をたどると、まったく新しい方法でパスワードについて考えるようになります。彼らは、ウェブサイトのパスワード要件のすべてを満たすために使用される一般的なパスワード生成プロセスに対処することに慣れています。特に、複数のサイトで同じパスワードを再利用することが許可されている場合。それは良くないことですが、彼らはそれが好きです。したがって、それは一種の苛立たしいことですが、予想されることであり、それほど驚くべきことではありません。それはある程度ユーザビリティと言えなければなりませんよね?

この投稿は2部構成になっています。

1)私はこれを実装するための最良の方法を見つけ出そうとしているので、それをプッシュするかどうかを決定できます。以下のワイヤーフレームで少し解決しました。ユーザーが「これは何ですか」をクリックすると、ポップアップが表示されてユーザーに教えることができます。彼らは詳細をクリックして、セキュリティの向上と使いやすさの詳細を取得します(覚えやすいと思うので)。私はそれらを OWASPサイト に送るつもりだったと思いましたが、今はよくわかりません。マンガであり、このサイトはそのようなサイトではないので、漫画を表示したくないのですが。また、ユーザーが自分のパスフレーズの例を使用できないようにします。サインアップ画面のように、ログイン画面でパスフレーズのガイドラインをユーザーに提供すると、使いやすさが向上すると思います。 この投稿 は私にその考えを与えました。ポップアップの文言が変わります。 この投稿 は、ユーザーを教育する方法についてのフィードバックも提供します。

また、そのパスフレーズ入力フィールドを囲むすべてのテキストを見てください。それはクレイジーです。しかし、私がそれらを教えて、使いやすくしようとするなら、それですべてが必要ではないでしょうか?パスフレーズをマスキングする代わりに表示できるようにした場合、パスフレーズを確認する必要がありますか?

enter image description here

プロセスを改善できますか?

2)パスフレーズが非常に異なるので、実際に使用するように説得するのに苦労しています。

この質問 この件についてはブローチの一種ですが、それはラベル付けに関するものであり、アイデア自体の使いやすさに関するものではありません。受け入れられた答えには、質問の前半に役立つパスフレーズについてユーザーを教育する方法に関するアイデアがありますが、このテクニックの使いやすさについてはまだ疑問に思っています。

パスワードよりもパスフレーズの使いやすさをテストした人はいますか?誰かがそれを実装しましたか?それはどれほど成功していますか?

私がしたい最後のことは、私が見つけた4つの投稿に基づいてこのようなものを実装し、それがあまりにも苛立たしいことに気づきました。自分でワイヤーフレームテストを行いますが、このアプローチについて議論する前にフィードバックを得ることができれば役に立ちます。眉毛が上がると思います。

基本的に、私は混乱しています。そして、私は1人のUXチームです。 StackExchangeは、このような質問を投げかけなければならない唯一の場所です。これはここに住むには広すぎるかもしれません。皆さん、私に知らせてください。

9
Fletchling

セキュリティエンジニア/使えるセキュリティ研究者はこちら。ほとんどの場合、ウェブサイトメーカーに提供されるセキュリティアドバイスは根拠に基づいたものではなく、パスワードについてknowledgedataがたくさんあるとしても、パスワードの作成元についてはほとんどわかっていません作業。なぜ彼らがまだ存在するのか疑問に思っている場合は、HerleyとOorschotの 'A研究アジェンダはパスワードの永続性を認めている' はいくつかのアイデアを与えるかもしれません。

サービスプロバイダーとしてのメモリベースの認証要素に関してあなたが持つ主な責任は次のとおりです:

  • 人々が明らかに推測可能な/一般的な秘密を使用するのを防ぐため
  • ユーザーのセキュリティを危険にさらさないように、秘密を適切に保存する
  • セキュリティ侵害の伝達について前向きかつ効率的になる
  • さまざまな安全なパスワード/パスフレーズの実践を邪魔しないようにする

詳細に入りましょう。

明らかに間違った選択を防ぐ

最もよく使用されるパスワードと一般的な辞書の単語のリストを編集、保存、更新し、ユーザーがそのような単語をパスワードとして使用できないようにする必要があります。 これらのアカウントが最初に落ちるデータベースが侵害されたときに、非常に予測可能な単語または一般的な単語を選択することは、ユーザーにとって非常に有害です。

同様に、パスフレーズの具体的な例を挙げた場合、mustはユーザーがそれらを使用することを禁止します(これらは公開の例であり、攻撃者が最初にそれらをテストする可能性があることを示します)。一部のユーザーwillは、ページが読み込まれるたびにランダムなパスフレーズを生成するすでに暗号化された接続で、既成のサンプルパスフレーズを選択するという事実を回避できます。

シークレットを適切に保存する

それは言うまでもなく...またはそれは何ですか? Security Stack Exchangeに関する質問をご覧ください。

そして、いくつかのより高度で具体的な質問:

ハッシュやソルトの手順を改善するために数時間を費やしたくなかったので、何百万人もの疑いを持たない個人を危険にさらすその愚痴ではありません。特に、これらの操作は現在、Web開発フレームワークでは簡単です。

違反について前向きになる

侵害されたと疑う正当な理由がある場合、あなたはmustすぐに電子メールで送信all潜在的なターゲットを知らせ、パスワードが侵害されたこと、および変更する必要があることを知らせますこのパスワードユーザーが使用する場所

もちろん、これはUXコンサルタントとしてのyourの仕事ではありませんが、ユーザーの観点からすると、優れたセキュリティ衛生の非常に重要な側面であるため、会社/代理店はそのような情報を確実に伝達する必要があります。

安全な方法の邪魔をしないでください

できる限り多くのパスワードを記憶するように求められ、めちゃくちゃ複雑でさえniqueのパスワードを作成するように求められたという事実に対処する方法はたくさんあります(まるでそれを行う必要があるかのように)。

最終的に、4ワードの一意のパスフレーズを50個作成するようにユーザーに依頼した場合、メモリの干渉は、パスワードの場合と同じように始まり、ユーザーはパスフレーズを嫌うことになります。パスワードより。

典型的な対処戦略は次のとおりです。

  • フェデレーション認証-あなた必須十分な理由がない限り、OAuth2、Google AuthまたはFacebook接続をサポートします。
  • password managers-これらは長いランダムなパスワードを作成する可能性があるため、あらゆる種類の構造を備えた合理的に長いパスワードの作成を妨げるべきではありません
  • 実際の一意で強力なパスワード-私を含む一部の人々は、一意のパスワードを覚えるという苦労を実際に経験することによってそれらを尊重する高価値のサービスプロバイダーに報酬を与えます。ただし、ユーザーに1か月おきにパスワードを変更するように要求したり、愚かな制限を課したりする場合は、このような努力を期待しないでください。
  • 戦略的なパスワードの再利用-データ侵害の影響が軽微な場合、ユーザーは強力で一意のパスワードを作成するのはなぜですか?確かに彼らの銀行口座はあなたの地元のブッククラブのニュースレターよりも重要です。それを受け入れて先に進んでください。

さらに、入力モダリティが重要であることに留意してください。モバイルUI経由でサイトを使用する必要がある場合、16文字を入力する方法はありません。実際のタイピング時間にかかわらず、エラー率は高すぎます。

結局、パスフレーズには、他のアプローチの邪魔になることを正当化する特定の要件はありません。 難しいパスワードではなくパスフレーズを使用するようユーザーに推奨できますが、強制的に使用しないでください。

7

必須のソリューションから始めましょう(test、test and test again ...あらゆる努力の価値があります!

今あなたの質問の核心に:

パスフレーズとパスワード

パスフレーズは一般にユーザーのメモリから「生成」され、特定の状況や感情などをユーザーに思い出させる可能性があるため、忘れられたパスワードを処理する優れた方法です。したがって、任意のパスワードの代わりとして機能します。そうは言っても、次の理由でそれらの使用を強制すべきではないと思います:

  • ユーザーは「ユーザー名」と「パスワード」のアプローチを使用するのに慣れています。このアプローチは、変更を試みても意味のないことを行う方法に非常に組み込まれていると思います。人々はあなたのサイトだけでなく他の多くの人も使用していることを覚えておいてください、そして規範は一種のセットです!

  • 最低16桁のパスフレーズが必要な場合は、文字数の制限されたパスワードを入力することに慣れている人がいる可能性があります。そのため、このソリューションは、誰にとっても使いやすいほど包括的ではない場合があります。

  • パスフレーズを考え出そうとすると、特に最終結果に満足する前に多くのメンタルアソシエーションを通過する必要がある場合、タスクが複雑になり、一部のユーザーを圧倒する可能性があります。これには時間がかかり、ご存知のように...時間はあなたの好意では実際には機能しません!


ユーザーへのハンドオーバー制御

ユーザーにパスワードの代わりにパスフレーズを使用するように促すことは間違いなく一歩前進ですが、ユーザーからの制御を削除し、その過程でユーザーの一部を疎外しているため、ユーザーの使用を強制することは一歩後退します。

あなたがこれから取り除くことができるものは:

パスフレーズの使用をユーザーに奨励することは、従来のプロセスを支援するがそれを置き換えるのではない情報と有用なヒントを提供することに向けられています。

もちろん、これらは小さな拡張機能であり、マスク解除パスワード機能の使用など、このプロセスの改善に大きく役立ちます。

そのことを念頭に置いて、ユーザーがパスワードの強度に関する情報にアクセスできるようにいくつかのやり取りを利用し、パスフレーズを使用してパスワードの覚えやすさをより明確にするようにアドバイスできると思います。さらに良いことに、パスワード強度メーターを使用して、より強力なパスワードを作成することができます。

下のワイヤーフレームはこれらのアイデアの一部をカプセル化しています。

enter image description here

4
Okavango

プロセスを改善できますか?

はい。ちょうど彼らにパスワードフィールドを与える:

Password
[                     ]

パスフレーズ、パスワード、または単に12345678を使用する場合は、許可してください。

haveである程度のチェックを行う場合は、おそらく最低限の基準を実装しますが、ほとんどの場合、パスワード要件はユーザーの利益よりも多くの問題点です。

1
DA01