[フレーム]
PPT, PDF1,734 views

Rails authentication with Authlogic RPX

A review of the current state of authentication in Rails, why Authlogic is the best thing since sliced bread, and how you can easily add multi-provider authentication support in your application using the new Authlogic_RPX plugin gem. This presentation was originally delivered at the Singapore Ruby Brigade Oct-09 meetup.

Related topics:

Embed presentation

Downloaded 36 times
NB: This presentation was delivered at the Singapore Ruby Brigade meetup 7-Oct-2009 (hosted at wego.com)
Some things should just be banned on the interwebs..
.. pointless social "applications" ..
.. pointless social "applications" ..
.. twitter celebs ..
.. twitter celebs ..
.. custom login screens!
.. custom login screens!
What’s so bad about that? Security Proliferation of credentials unavoidably leads to greater risks Do sites hash my password? PITA Redundant entry of registration details Validation emails.. aargh! Code bloat: reset/forgot password flows Site developer’s need to be (should be!) security experts Enterprise clients Ideally want your site to treat employees as "verified employees" not just part of the madding crowd Public sites: still in its infancy. Belief: before long, enterprises will clue in to this, and be "exporting" corporate credentials for use on the web. If your site supports this, you can win big.
End of days for "own the user identity"? Consumers: already have (multiple) "identities" Hypothesis: these days a reasonable assumption Why should I jump thru hoops to create another just so I can try your site? Businesses: don’t really want their employees creating new "identities" on your site if it is for business purposes Compliance – no control or visibility of what employees are doing or information they are creating Data ownership – what happens when the employee leaves?
Or "Why authentication and identity management is still worth talking about"
Authorisation Options
Sometimes there’s no choice No internet access Legacy accounts Special purpose Admin or test users for example Internal (username / password)
LDAP/AD Intranet applications Legacy directories
Supports many providers , which don’t need to be known ahead of time Consumer adoption has been relatively slow, although many users now have an OpenID (via Yahoo or Google) even though they don’t know this! Criticised for being a little too "technical" for the average web citizen(!)
OAuth Must tie to a specific provider ahead of time Also used as the basis of OpenSocial signed requests Great if you just want to target a specific community (e.g. build a twitter app)
A single-sign-on solution for web sites Abstracts the authentication provider – you can support as many as JanRain support Normalizes profile settings across providers (i.e. "email" is always "email") RPX by JanRain
SAML – WS* security mainly enterprise use, but now gaining some attention via openSSO 2FA/3FA solutions – provider specific or custom integrated Many others..
Authentication options in Rails Internal (username/password) LDAP/AD RPX by JanRain Many others.. OAuth Acts_as_authenticated Restful_authentication Clearance Twitter_oauth Openid_authentication ActiveLDAP acts_as_ldpa_authenticated Ruby Net-LDAP Rpx_now ... Ruby oauth OpenID
Or Authlogic Internal (username/password) LDAP/AD RPX by JanRain Many others.. OAuth Authlogic-oauth Authlogic-ldap Authlogic-oid Authlogic_rpx Authlogic (base) Authlogic plugin X Or use Authlogic " unobtrusive authentication" No generator crud Smells like ActiveRecord Plugin architecture
Using Authlogic_RPX
RPX Request Model Link to sign-in ..chatter.. ..chatter.. Post:token Verify:token (returns:profile info)
Authlogic_RPX-on-a-page
Enabling Authlogic_RPX See the Authlogic RPX README for full details. It walks you through the steps for enabling Authlogic RPX: Enable RPX for your user model Add RPX configuration for the Authlogic session model Add custom user profile mapping (optional) Add application controller helpers: current_user, current_user_session Setup the Authlogic session controller Setup the Authlogic user controller Use view helpers to provide login links Allow users to "Add RPX" to existing accounts (optional) In this presentation, we’ll touch on some of the main points...
Register your RPX app Register your application at http://rpxnow.com – set it’s name and be assigned an API key, and select/configure the authentication providers: Note: max 6 providers with the free RPX account
Configure your project In config/environment.rb – Set the RPX app name and API key: Configure gems: $ rake gems:install Once setup, using Authlogic_RPX is almost identical to standard Authlogic
Two MVCs: session and user Minimal models: Simple helpers you define and control: current_user require_user (e.g. for before_filter)
Controllers – clean and sweet
[:post] create – this is a user "signing in" Session controller All this is optional branching logic, which you can tailor specifically for your application successful save means authentication OK!
[:delete] destroy – this is a user "signing out" Session controller
Access controls: Registration form (optional): Save registration (optional): Edit my profile: Show my profile: Save my profile: User controller Note: sample is a controller that only lets users access their own information, but you can just as easily adapt this so they can list and see the public profile information of other users too.
Auto registration Authlogic_RPX will "register" new users by default. For users this is great: registration is no more difficult than logging in. You can disable this in the session model:
UserSession model – profile mapping When users auto-register, profile data from RPX is available to be inserted in the user's record on your site. Authlogic_rpx will map the username and email fields by default. If you have other fields you want to map, you can provide your own implementation of the map_rpx_data method in the UserSession model
UserSession model – profile mapping
UserSession model – profile mapping WARNING: any fields you map should NOT have constraints enforced at the database level. Authlogic_rpx will optimistically attempt to save the user record during registration, and violating a db constraint will cause the authentication/ registration to fail. You can/should enforce any required validations at the model level. This will allow the auto-registration to proceed, and the user can be given a chance to rectify the validation errors on your user profile page If it is not acceptable in your application to have user records created with potential validation errors in auto-populated fields, you will need to override map_rpx_data and implement whatever special handling makes sense in your case.
RPX – the catch (or: why you might want to buy their pro service) Today I sign-in with Tomorrow I use these aren’t the same identities! We need identity mapping! RPX paid options support "identity mapping", but this is currently not supported in Authlogic_RPX Authlogic_RPX 1.1.0+ includes an internal identity mapping solution (it is optional)
Try it out Live Demonstration Site: rails- authlogic-rpx-sample.heroku.com Demonstration site source repository: github.com/tardate/rails-authlogic-rpx-sample
Take-aways Getting authentication right is critical for your site’s success Lower the barrier-to-entry for consumer/personal users. Eliminate the need to create redundant "identities"! Business sites – make it possible for employees to use business identities "exported" via OpenID (for example), without the need for a specific agreement and integration to be in place 3
Take-aways Authlogic – leading authentication framework for rails (IMHO) Best even if you just want to do traditional username/password Unobtrusive Makes it easy to switch or add authentication options in future One framework to learn – plugin the most suitable authentication method for each specific project 2
Take-aways Authlogic_RPX – takes away the pain Support diverse identity providers Standard Authlogic - nothing special to do except plug in your API key Can be used as "RPX only", or co-exist with standard Authlogic username/password Use it for: Public sites + you just need authentication services + want to give users the best opportunity to use existing credentials. 1
Thank you! Questions? 0
Some References Authlogic: http://github.com/binarylogic/authlogic Authlogic_RPX: http://github.com/tardate/authlogic_rpx RPX: http:// rpxnow.com OpenID: http://openid.net OAuth: http://oauth.net Singapore Ruby Brigade (SRB): http://groups.google.com/group/singapore-rb

More Related Content

Storytelling For The Web: Integrate Storytelling in your Design Process
PDF
Storytelling For The Web: Integrate Storytelling in your Design Process
2024 Trend Updates: What Really Works In SEO & Content Marketing
PDF
2024 Trend Updates: What Really Works In SEO & Content Marketing
Introduction to Ruby on Rails
PDF
Introduction to Ruby on Rails
Five Killer Ways to Design The Same Slide
PDF
Five Killer Ways to Design The Same Slide
Ruby - The Hard Bits
PPT
Ruby - The Hard Bits
Multi-tenancy with Rails
PPT
Multi-tenancy with Rails
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
PPT
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
The Adventures Of Ecka The Echidna
PPT
The Adventures Of Ecka The Echidna
Storytelling For The Web: Integrate Storytelling in your Design Process
Storytelling For The Web: Integrate Storytelling in your Design Process
2024 Trend Updates: What Really Works In SEO & Content Marketing
2024 Trend Updates: What Really Works In SEO & Content Marketing
Introduction to Ruby on Rails
Introduction to Ruby on Rails
Five Killer Ways to Design The Same Slide
Five Killer Ways to Design The Same Slide
Ruby - The Hard Bits
Ruby - The Hard Bits
Multi-tenancy with Rails
Multi-tenancy with Rails
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
The Adventures Of Ecka The Echidna
The Adventures Of Ecka The Echidna

Recently uploaded

AI is reshaping business, healthcare, education, and daily life.
PPTX
AI is reshaping business, healthcare, education, and daily life.
Penetration Testing: Enhancing Cyber Defenses Through Realistic Attack Simula...
PPTX
Penetration Testing: Enhancing Cyber Defenses Through Realistic Attack Simula...
Nexsan and Vates: Secure, High-Performance Open Virtualization
PDF
Nexsan and Vates: Secure, High-Performance Open Virtualization
How to optimise the critical path in multi-phase projects for Orangescrum
PDF
How to optimise the critical path in multi-phase projects for Orangescrum
Data Donation as Research Method and Pedagogical Tool
PDF
Data Donation as Research Method and Pedagogical Tool
Single prompt response by ChatGPT to a product strategy-related task
PDF
Single prompt response by ChatGPT to a product strategy-related task
Formulation and Evaluation of herbal peel off mask gel
PPTX
Formulation and Evaluation of herbal peel off mask gel
Getting the Best of TrueDEM – November News & Updates
PDF
Getting the Best of TrueDEM – November News & Updates
The Best AI Medical Scribe Every Home Health Agency Needs Today
PDF
The Best AI Medical Scribe Every Home Health Agency Needs Today
Developing AI Agents in 15 minutes with RAG and MCP
PDF
Developing AI Agents in 15 minutes with RAG and MCP
Cheryl Hung, Vibe Coding Auth Without Melting Down! isaqb Software Architectu...
PDF
Cheryl Hung, Vibe Coding Auth Without Melting Down! isaqb Software Architectu...
Automating ECommerce Product and Pricing Intelligence Across India’s Top Plat...
PDF
Automating ECommerce Product and Pricing Intelligence Across India’s Top Plat...
Mulesoft Meetup Online Portuguese: MCP e IA
PDF
Mulesoft Meetup Online Portuguese: MCP e IA
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ2「AI Computing Broker: Make your GPUs ...
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ2「AI Computing Broker: Make your GPUs ...
[BDD 2025 - Mobile Development] Mobile Engineer and Software Engineer: Are we...
PDF
[BDD 2025 - Mobile Development] Mobile Engineer and Software Engineer: Are we...
DevOps Service Provider in Dubai for Faster Release Cycles.pdf
PDF
DevOps Service Provider in Dubai for Faster Release Cycles.pdf
Links to 42 Recently Posted LLM Documents at https://tinyurl.com/mpavkr8z
PDF
Links to 42 Recently Posted LLM Documents at https://tinyurl.com/mpavkr8z
CompTIA Cybersecurity Analyst (CySA+) CS0-003: Unit 4
PDF
CompTIA Cybersecurity Analyst (CySA+) CS0-003: Unit 4
CompTIA Cybersecurity Analyst (CySA+) CS0-003 Unit 3
PDF
CompTIA Cybersecurity Analyst (CySA+) CS0-003 Unit 3
Introduction of Python class 9 CDC Nepal.pptx
PPTX
Introduction of Python class 9 CDC Nepal.pptx
AI is reshaping business, healthcare, education, and daily life.
AI is reshaping business, healthcare, education, and daily life.
Penetration Testing: Enhancing Cyber Defenses Through Realistic Attack Simula...
Penetration Testing: Enhancing Cyber Defenses Through Realistic Attack Simula...
Nexsan and Vates: Secure, High-Performance Open Virtualization
Nexsan and Vates: Secure, High-Performance Open Virtualization
How to optimise the critical path in multi-phase projects for Orangescrum
How to optimise the critical path in multi-phase projects for Orangescrum
Data Donation as Research Method and Pedagogical Tool
Data Donation as Research Method and Pedagogical Tool
Single prompt response by ChatGPT to a product strategy-related task
Single prompt response by ChatGPT to a product strategy-related task
Formulation and Evaluation of herbal peel off mask gel
Formulation and Evaluation of herbal peel off mask gel
Getting the Best of TrueDEM – November News & Updates
Getting the Best of TrueDEM – November News & Updates
The Best AI Medical Scribe Every Home Health Agency Needs Today
The Best AI Medical Scribe Every Home Health Agency Needs Today
Developing AI Agents in 15 minutes with RAG and MCP
Developing AI Agents in 15 minutes with RAG and MCP
Cheryl Hung, Vibe Coding Auth Without Melting Down! isaqb Software Architectu...
Cheryl Hung, Vibe Coding Auth Without Melting Down! isaqb Software Architectu...
Automating ECommerce Product and Pricing Intelligence Across India’s Top Plat...
Automating ECommerce Product and Pricing Intelligence Across India’s Top Plat...
Mulesoft Meetup Online Portuguese: MCP e IA
Mulesoft Meetup Online Portuguese: MCP e IA
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ2「AI Computing Broker: Make your GPUs ...
PCCC25(設立25年記念PCクラスタシンポジウム):富士通株式会社 テーマ2「AI Computing Broker: Make your GPUs ...
[BDD 2025 - Mobile Development] Mobile Engineer and Software Engineer: Are we...
[BDD 2025 - Mobile Development] Mobile Engineer and Software Engineer: Are we...
DevOps Service Provider in Dubai for Faster Release Cycles.pdf
DevOps Service Provider in Dubai for Faster Release Cycles.pdf
Links to 42 Recently Posted LLM Documents at https://tinyurl.com/mpavkr8z
Links to 42 Recently Posted LLM Documents at https://tinyurl.com/mpavkr8z
CompTIA Cybersecurity Analyst (CySA+) CS0-003: Unit 4
CompTIA Cybersecurity Analyst (CySA+) CS0-003: Unit 4
CompTIA Cybersecurity Analyst (CySA+) CS0-003 Unit 3
CompTIA Cybersecurity Analyst (CySA+) CS0-003 Unit 3
Introduction of Python class 9 CDC Nepal.pptx
Introduction of Python class 9 CDC Nepal.pptx

Featured

Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
PDF
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
PDF
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
2024 State of Marketing Report – by Hubspot
PDF
2024 State of Marketing Report – by Hubspot
Everything You Need To Know About ChatGPT
PDF
Everything You Need To Know About ChatGPT
Product Design Trends in 2024 | Teenage Engineerings
PDF
Product Design Trends in 2024 | Teenage Engineerings
How Race, Age and Gender Shape Attitudes Towards Mental Health
PDF
How Race, Age and Gender Shape Attitudes Towards Mental Health
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
PDF
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
Skeleton Culture Code
PDF
Skeleton Culture Code
PEPSICO Presentation to CAGNY Conference Feb 2024
PDF
PEPSICO Presentation to CAGNY Conference Feb 2024
Content Methodology: A Best Practices Report (Webinar)
PDF
Content Methodology: A Best Practices Report (Webinar)
How to Prepare For a Successful Job Search for 2024
PPTX
How to Prepare For a Successful Job Search for 2024
Social Media Marketing Trends 2024 // The Global Indie Insights
PDF
Social Media Marketing Trends 2024 // The Global Indie Insights
Trends In Paid Search: Navigating The Digital Landscape In 2024
PDF
Trends In Paid Search: Navigating The Digital Landscape In 2024
5 Public speaking tips from TED - Visualized summary
PDF
5 Public speaking tips from TED - Visualized summary
ChatGPT and the Future of Work - Clark Boyd
PDF
ChatGPT and the Future of Work - Clark Boyd
Getting into the tech field. what next
PDF
Getting into the tech field. what next
Google's Just Not That Into You: Understanding Core Updates & Search Intent
PDF
Google's Just Not That Into You: Understanding Core Updates & Search Intent
How to have difficult conversations
PDF
How to have difficult conversations
Introduction to Data Science
PDF
Introduction to Data Science
Time Management & Productivity - Best Practices
PDF
Time Management & Productivity - Best Practices
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
Artificial Intelligence, Data and Competition – SCHREPEL – June 2024 OECD dis...
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
How to Leverage AI to Boost Employee Wellness - Lydia Di Francesco - SocialHR...
2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
Skeleton Culture Code
Skeleton Culture Code
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Getting into the tech field. what next
Getting into the tech field. what next
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
How to have difficult conversations
How to have difficult conversations
Introduction to Data Science
Introduction to Data Science
Time Management & Productivity - Best Practices
Time Management & Productivity - Best Practices

Rails authentication with Authlogic RPX

  • 1.
    NB: This presentation was delivered at the Singapore Ruby Brigade meetup 7-Oct-2009 (hosted at wego.com)
  • 2.
    Some things should just be banned on the interwebs..
  • 3.
    .. pointless social "applications" ..
  • 4.
    .. pointless social "applications" ..
  • 5.
  • 6.
  • 7.
    .. custom login screens!
  • 8.
    .. custom login screens!
  • 9.
    What’s so bad about that? Security Proliferation of credentials unavoidably leads to greater risks Do sites hash my password? PITA Redundant entry of registration details Validation emails.. aargh! Code bloat: reset/forgot password flows Site developer’s need to be (should be!) security experts Enterprise clients Ideally want your site to treat employees as "verified employees" not just part of the madding crowd Public sites: still in its infancy. Belief: before long, enterprises will clue in to this, and be "exporting" corporate credentials for use on the web. If your site supports this, you can win big.
  • 10.
    End of days for "own the user identity"? Consumers: already have (multiple) "identities" Hypothesis: these days a reasonable assumption Why should I jump thru hoops to create another just so I can try your site? Businesses: don’t really want their employees creating new "identities" on your site if it is for business purposes Compliance – no control or visibility of what employees are doing or information they are creating Data ownership – what happens when the employee leaves?
  • 11.
    Or "Why authentication and identity management is still worth talking about"
  • 12.
  • 13.
    Sometimes there’s no choice No internet access Legacy accounts Special purpose Admin or test users for example Internal (username / password)
  • 14.
    LDAP/AD Intranet applications Legacy directories
  • 15.
    Supports many providers , which don’t need to be known ahead of time Consumer adoption has been relatively slow, although many users now have an OpenID (via Yahoo or Google) even though they don’t know this! Criticised for being a little too "technical" for the average web citizen(!)
  • 16.
    OAuth Must tie to a specific provider ahead of time Also used as the basis of OpenSocial signed requests Great if you just want to target a specific community (e.g. build a twitter app)
  • 17.
    A single-sign-on solution for web sites Abstracts the authentication provider – you can support as many as JanRain support Normalizes profile settings across providers (i.e. "email" is always "email") RPX by JanRain
  • 18.
    SAML – WS* security mainly enterprise use, but now gaining some attention via openSSO 2FA/3FA solutions – provider specific or custom integrated Many others..
  • 19.
    Authentication options in Rails Internal (username/password) LDAP/AD RPX by JanRain Many others.. OAuth Acts_as_authenticated Restful_authentication Clearance Twitter_oauth Openid_authentication ActiveLDAP acts_as_ldpa_authenticated Ruby Net-LDAP Rpx_now ... Ruby oauth OpenID
  • 20.
    Or Authlogic Internal (username/password) LDAP/AD RPX by JanRain Many others.. OAuth Authlogic-oauth Authlogic-ldap Authlogic-oid Authlogic_rpx Authlogic (base) Authlogic plugin X Or use Authlogic " unobtrusive authentication" No generator crud Smells like ActiveRecord Plugin architecture
  • 21.
  • 22.
    RPX Request Model Link to sign-in ..chatter.. ..chatter.. Post:token Verify:token (returns:profile info)
  • 23.
  • 24.
    Enabling Authlogic_RPX See the Authlogic RPX README for full details. It walks you through the steps for enabling Authlogic RPX: Enable RPX for your user model Add RPX configuration for the Authlogic session model Add custom user profile mapping (optional) Add application controller helpers: current_user, current_user_session Setup the Authlogic session controller Setup the Authlogic user controller Use view helpers to provide login links Allow users to "Add RPX" to existing accounts (optional) In this presentation, we’ll touch on some of the main points...
  • 25.
    Register your RPX app Register your application at http://rpxnow.com – set it’s name and be assigned an API key, and select/configure the authentication providers: Note: max 6 providers with the free RPX account
  • 26.
    Configure your project In config/environment.rb – Set the RPX app name and API key: Configure gems: $ rake gems:install Once setup, using Authlogic_RPX is almost identical to standard Authlogic
  • 27.
    Two MVCs: session and user Minimal models: Simple helpers you define and control: current_user require_user (e.g. for before_filter)
  • 28.
  • 29.
    [:post] create – this is a user "signing in" Session controller All this is optional branching logic, which you can tailor specifically for your application successful save means authentication OK!
  • 30.
    [:delete] destroy – this is a user "signing out" Session controller
  • 31.
    Access controls: Registration form (optional): Save registration (optional): Edit my profile: Show my profile: Save my profile: User controller Note: sample is a controller that only lets users access their own information, but you can just as easily adapt this so they can list and see the public profile information of other users too.
  • 32.
    Auto registration Authlogic_RPX will "register" new users by default. For users this is great: registration is no more difficult than logging in. You can disable this in the session model:
  • 33.
    UserSession model – profile mapping When users auto-register, profile data from RPX is available to be inserted in the user's record on your site. Authlogic_rpx will map the username and email fields by default. If you have other fields you want to map, you can provide your own implementation of the map_rpx_data method in the UserSession model
  • 34.
    UserSession model – profile mapping
  • 35.
    UserSession model – profile mapping WARNING: any fields you map should NOT have constraints enforced at the database level. Authlogic_rpx will optimistically attempt to save the user record during registration, and violating a db constraint will cause the authentication/ registration to fail. You can/should enforce any required validations at the model level. This will allow the auto-registration to proceed, and the user can be given a chance to rectify the validation errors on your user profile page If it is not acceptable in your application to have user records created with potential validation errors in auto-populated fields, you will need to override map_rpx_data and implement whatever special handling makes sense in your case.
  • 36.
    RPX – the catch (or: why you might want to buy their pro service) Today I sign-in with Tomorrow I use these aren’t the same identities! We need identity mapping! RPX paid options support "identity mapping", but this is currently not supported in Authlogic_RPX Authlogic_RPX 1.1.0+ includes an internal identity mapping solution (it is optional)
  • 37.
    Try it out Live Demonstration Site: rails- authlogic-rpx-sample.heroku.com Demonstration site source repository: github.com/tardate/rails-authlogic-rpx-sample
  • 38.
    Take-aways Getting authentication right is critical for your site’s success Lower the barrier-to-entry for consumer/personal users. Eliminate the need to create redundant "identities"! Business sites – make it possible for employees to use business identities "exported" via OpenID (for example), without the need for a specific agreement and integration to be in place 3
  • 39.
    Take-aways Authlogic – leading authentication framework for rails (IMHO) Best even if you just want to do traditional username/password Unobtrusive Makes it easy to switch or add authentication options in future One framework to learn – plugin the most suitable authentication method for each specific project 2
  • 40.
    Take-aways Authlogic_RPX – takes away the pain Support diverse identity providers Standard Authlogic - nothing special to do except plug in your API key Can be used as "RPX only", or co-exist with standard Authlogic username/password Use it for: Public sites + you just need authentication services + want to give users the best opportunity to use existing credentials. 1
  • 41.
  • 42.
    Some References Authlogic: http://github.com/binarylogic/authlogic Authlogic_RPX: http://github.com/tardate/authlogic_rpx RPX: http:// rpxnow.com OpenID: http://openid.net OAuth: http://oauth.net Singapore Ruby Brigade (SRB): http://groups.google.com/group/singapore-rb

AltStyle によって変換されたページ (->オリジナル) /