欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
BrowserID
来自开放百科 - 灰狐
(版本间的差异)
小 (→图集) |
小 (→图集) |
||
第34行: | 第34行: | ||
Image:browserid-id-provisioning-secondary.png | Image:browserid-id-provisioning-secondary.png | ||
Image:browserid-user-certificate-provisioning.png | Image:browserid-user-certificate-provisioning.png | ||
+ | Image:browserid-dialog-modules-controllers.png | ||
+ | Image:browserid-modules-actions-state-machine-hub.png | ||
+ | Image:browserid-user-flow.png | ||
+ | Image:browserid-user-flow-higher-level.png | ||
</gallery> | </gallery> | ||
2012年7月5日 (四) 13:02的版本
BrowserID
代码
数据库部分
const schemas = [ "CREATE TABLE IF NOT EXISTS user (" + "id BIGINT AUTO_INCREMENT PRIMARY KEY," + "passwd CHAR(64)" + ") ENGINE=InnoDB;",
"CREATE TABLE IF NOT EXISTS email (" + "id BIGINT AUTO_INCREMENT PRIMARY KEY," + "user BIGINT NOT NULL," + "address VARCHAR(255) UNIQUE NOT NULL," + "type ENUM('secondary', 'primary') DEFAULT 'secondary' NOT NULL," + "FOREIGN KEY user_fkey (user) REFERENCES user(id)" + ") ENGINE=InnoDB;",
"CREATE TABLE IF NOT EXISTS staged (" + "id BIGINT AUTO_INCREMENT PRIMARY KEY," + "secret CHAR(48) UNIQUE NOT NULL," + "new_acct BOOL NOT NULL," + "existing_user BIGINT," + "email VARCHAR(255) UNIQUE NOT NULL," + "passwd CHAR(64)," + "ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL," + "FOREIGN KEY existing_user_fkey (existing_user) REFERENCES user(id)" + ") ENGINE=InnoDB;", ];
图集
链接
分享您的观点