ตัวอย่างการทำ OpenID Server ด้วย ruby

Posted February 12, 2009 at Rails66
ขอประเดิมโพสแรกด้วยการฝากลิงค์นะครับ ผมเองเขียนบทความไม่เก่ง A Ruby on Rails OpenID Server เป็นตัวอย่างง่ายๆ ในการสร้าง OpenID Server น่าจะมีหลายๆ คนสนใจนะครับ แต่โดยส่วนตัวแล้วผมใช้ Grails

ใช้ OpenID ด้วย AuthKit อย่างง่าย

Posted March 01, 2009 at Pylons66
ผมพยายามจะเขียนตัวอย่างการทำให้เว็บเข้าใช้ได้ด้วย OpenID โดยใช้ AuthKit 0.4.3 และ Pylons 0.9.7 โดยพยายามดัดแปลงตัวอย่างของ AuthKit มา เริ่มเแรกผมก็สร้าง app ขึ้นมาใหม่เลยชื่อ topenid แล้วก็แก้ไขตามขั้นตอนต่อไปนี้ development.ini: ผมเพิ่มบรรทัดข้างล่างเข้าไปใน development.ini authkit.setup.enable = true authkit.setup.method = openid, cookie authkit.openid.store.type = file authkit.openid.store.config = authkit.openid.charset = UTF-8 authkit.openid.path.signedin = /auth/signin authkit.cookie.signoutpath = /auth/signout authkit.openid.store.baseurl = http://localhost:5000 authkit.cookie.secret = somesecret ใน topenid/config/middleware.py ... import authkit.authenticate # เพิ่มบรรทัดนี้ ... app = PylonsApp() app = authkit.authenticate.middleware(app, app_conf) # เพิ่มบรรทัดนี้ ... topenid/controllers/auth.py import logging from [...]

สร้างหน้าลงทะเบียนเข้าใช้งาน สำหรับ AuthKit OpenID

Posted March 04, 2009 at Pylons66
ผมใช้ AuthKit และ OpenID บนโปรแกรมของผมที่เขียนด้วย พอเริ่มจะได้ได้แล้วผมก็อยากจะแก้หน้าลงทะเบียนเข้าใช้งาน (Sign in) สักหน่อย. จริงๆ แล้วก็แก้ได้ง่ายๆ เพราะว่าใช้วิธีคล้ายๆ กับการสร้างหน้าลงทะเบียนเข้าใช้งานใหม่สำหรับ AuthKit + form นอกจากจะเขียนถึงตัวอย่างแล้ว ผมก็จะพยายามอธิบายด้วยนิดหน่อย สมมุติว่าใช้ AuthKit + OpenID ได้อยู่แล้วจะแก้หน้าลงทะเบียนเข้าใช้ใหม่ผมก็เริ่มแก้ไขจาก development.ini ให้ชี้ไปที่ template ใหม่ authkit.openid.template.obj = topenid.lib.signin:make_template นอกจากนั้นก็เพิ่ม 2 ไฟล์เข้าไป ได้แก่ topenid/lib/signin.py และ topenid/template/signin.html topenid/lib/signin.py: # This file is based on example from http://jimmyg.org/2007/08/14/pylons-mako-templates-in-authkit/ from pylons.templating import Buffet from pylons import config import topenid.lib.helpers as h class MyBuffet(Buffet): [...]