– A Better Way to Sign In –



– A Better Way to Sign In –

0 0


introduction-to-persona

A short introduction to Persona (BrowserID) project of Mozilla

On Github hainp / introduction-to-persona

A Better Way to Sign In

@hai_np

Các vấn đề với password

#1 - Khó để có sự an toàn

Từ việc sinh ra password...

Cần một chuỗi dài ít nhất 8 ký tự, có cả chữ, số, các ký tự đặc biệt, viết hoa, viết thường, ...

... đến việc giữ chúng

Server

  • Mã hóa: bcrypt/scrypt/...
  • Các chính sách về password
  • Cơ chế khôi phục an toàn
ALTER TABLE user DROP COLUMN password;

#2 - Khó nhớ password

Chọn một password thế này

và dùng khắp nơi

Password cần được reset

Sở hữu (các) email

=

Sở hữu nhiều tài khoản

Passwordlesss!

Các hệ thống hiện tại

Client Certificate - Chứng chỉ máy khách

OpenID

  • Đơn giản
  • Phân tán
  • Theo chuẩn web
  • Tương thích với các trình duyệt hiện đại

Cách hoạt động

Demo - 123done.org

Triển khai đơn giản

Relying Party

              navigator.id.watch({

                loggedInUser: 'bob@example.org',

                onlogin: function(assertion) {

                  //Call to backend API

                },
                onlogout: function() {

                  //Call to backend API

                }
              });

            

Identity Provider

Demo - eyedee.me

              {
                  "public-key": {
                     "algorithm":"RS",
                     "n":"a long number",
                     "e":"65537"
                  },
                  "authentication": "/browserid/sign_in.html",
                  "provisioning": "/browserid/provision.html"
              }
            

Nguồn tham khảo:

Thank you!

BY Nguyễn Phan Hải / @hai_np