SlideShare uma empresa Scribd logo
1 de 37
Apache 2.3
mod_auth_form + mod_session
             <koura-h@klab.jp>
• Apache
•
• Apache 2.2
• Apache 2.3
•      (           )
•
•   MacOSX Linux
•
•
Apache

•        2.2   (=2.2.14 at 2010/3/5)

•                 2.3                   (2.3.5-
    alpha and svn trunk)
    • stable                2.4   3.0
~Apache 2.2 (   )
(          )

login

                     home




        logout
•    CGI(Web   )


•
•
•   CGI
•
    •
    •
•       ID
(          )

login

                     home




        logout
•
(          )

login

                     home




        logout
•

    •

    •
(          )

login

                     home




        logout
Apache 2.3~
Browser   Apache(httpd)
Browser                   Apache(httpd)




• 401 Authorization Required
•
  •
mod_auth_form                   …

   Browser      Apache(httpd)
mod_auth_form                             …

     Browser              Apache(httpd)




• 301 Moved Permanently
•
(          )

login

                     home




        logout
• Apache                     -
    mod_auth_form + mod_session
•
    • handler
    • check_authn (or check_user_id)
Apache
• HTTP           Apache


    •    parse
                   etc...

•
•
handler

•         HTTP
          HTTP



• CGI   Web
check_authn

•       HTTP




• 2.3
               (check_user_id   )
mod_auth_form

•
    • handler
    • check_authn
•
    • check_authn
httpd.conf
<Location /doauth>
  SetHandler form-login-handler
  AuthFormLoginRequiredLocation /login.html
  AuthFormLoginSuccessLocation /mypage/
  AuthFormProvider dbd
  AuthDBDUserPWQuery "SELECT password FROM user
WHERE user = %s"
  AuthType form
  AuthName realm
  Session On
  SessionDBDCookieName session path=/
</Location>

<Location /dologout>
  SetHandler form-logout-handler
  AuthFormLogoutLocation /logout.html
  AuthName realm
  Session On
  SessionDBDCookieName session path=/
</Location>
httpd.conf
•                = /doauth

•                  = /dologout

    • SetHandler
    • AuthFormLoginSuccessLocation
    • AuthFormLoginRequiredLocation
    • AuthFormLogoutLocation
httpd.conf

<LocationMatch "/mypage/*">
  AuthFormProvider dbd
  AuthDBDUserPWQuery "SELECT password FROM user
WHERE user = %s"
  AuthFormLoginRequiredLocation /login.html
  AuthType form
  AuthName realm
  Session On
  SessionEnv On
  SessionDBDCookieName session path=/
</LocationMatch>
(ACL)

• AuthFormProvider
 •         DB

 •            LDAP

• htpasswd
(          )

login

                     home




        logout
• CGI/Web
•         HTTP_SESSION
    REMOTE_USER
•           ID

    •
•              HTTP_SESSION


    • mod_session_crypto
•         ID

    •
•                 DB


    • Key-Value
...

• MPM
• mod_lua
• FastCGI        (mod_proxy_fcgi &
  fcgistarter)
• etc...
DSAS
Apache2.3 探訪

Mais conteúdo relacionado

Mais procurados

Toutch Jquery Mobile
Toutch Jquery MobileToutch Jquery Mobile
Toutch Jquery MobileJinlong He
 
Go Web Development
Go Web DevelopmentGo Web Development
Go Web DevelopmentCheng-Yi Yu
 
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014Naresha K
 
Introduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10genIntroduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10genMongoDB
 
Efficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line KeystrokesEfficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line KeystrokesSeth Miller
 
Different waysconnect
Different waysconnectDifferent waysconnect
Different waysconnectmyrajendra
 
PLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and ExtensionPLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and ExtensionAlfresco Software
 

Mais procurados (10)

Intro to Apache Shiro
Intro to Apache ShiroIntro to Apache Shiro
Intro to Apache Shiro
 
Toutch Jquery Mobile
Toutch Jquery MobileToutch Jquery Mobile
Toutch Jquery Mobile
 
Go Web Development
Go Web DevelopmentGo Web Development
Go Web Development
 
Azure F#unctions
Azure F#unctionsAzure F#unctions
Azure F#unctions
 
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
 
Introduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10genIntroduction to the new official C# Driver developed by 10gen
Introduction to the new official C# Driver developed by 10gen
 
Pyramid REST
Pyramid RESTPyramid REST
Pyramid REST
 
Efficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line KeystrokesEfficient DBA: Gain Time by Reducing Command-Line Keystrokes
Efficient DBA: Gain Time by Reducing Command-Line Keystrokes
 
Different waysconnect
Different waysconnectDifferent waysconnect
Different waysconnect
 
PLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and ExtensionPLAT-15 Forms Config, Customization, and Extension
PLAT-15 Forms Config, Customization, and Extension
 

Semelhante a Apache2.3 探訪

PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)TaiShunHuang
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsPuneet Ghanshani
 
REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!Stormpath
 
GitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by ScalaGitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by Scalatakezoe
 
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...DataArt
 
JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2Rodrigo Cândido da Silva
 
Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3Oleh Burkhay
 
Super simple application security with Apache Shiro
Super simple application security with Apache ShiroSuper simple application security with Apache Shiro
Super simple application security with Apache ShiroMarakana Inc.
 
Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017Dejan Glozic
 
15-auth-session-mgmt.ppt
15-auth-session-mgmt.ppt15-auth-session-mgmt.ppt
15-auth-session-mgmt.pptssuserec53e73
 
Persona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwordsPersona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwordsFrancois Marier
 
Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server TutorialJagat Kothari
 
Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)Kazuaki Matsuo
 
下吧开发总结
下吧开发总结下吧开发总结
下吧开发总结Night Sailer
 
Secure Coding for NodeJS
Secure Coding for NodeJSSecure Coding for NodeJS
Secure Coding for NodeJSThang Chung
 

Semelhante a Apache2.3 探訪 (20)

Apache mod authまわりとか
Apache mod authまわりとかApache mod authまわりとか
Apache mod authまわりとか
 
PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)PHP記帳網頁教材(第一頁是空白的)
PHP記帳網頁教材(第一頁是空白的)
 
Kiosk / PHP
Kiosk / PHP Kiosk / PHP
Kiosk / PHP
 
Rails Security
Rails SecurityRails Security
Rails Security
 
Serverless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic appsServerless Architecture - Azure Logic apps
Serverless Architecture - Azure Logic apps
 
Hacking Wordpress Plugins
Hacking Wordpress PluginsHacking Wordpress Plugins
Hacking Wordpress Plugins
 
Some OAuth love
Some OAuth loveSome OAuth love
Some OAuth love
 
REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!REST API Security: OAuth 2.0, JWTs, and More!
REST API Security: OAuth 2.0, JWTs, and More!
 
GitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by ScalaGitBucket: The perfect Github clone by Scala
GitBucket: The perfect Github clone by Scala
 
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
Антон Бойко (Microsoft Azure MVP, Ukrainian Azure Community Founder) «Azure M...
 
JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2JavaOne 2014 - Securing RESTful Resources with OAuth2
JavaOne 2014 - Securing RESTful Resources with OAuth2
 
Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3Modx Evo Basic Cheatsheet 1 3
Modx Evo Basic Cheatsheet 1 3
 
Super simple application security with Apache Shiro
Super simple application security with Apache ShiroSuper simple application security with Apache Shiro
Super simple application security with Apache Shiro
 
Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017Authentication in microservice systems - fsto 2017
Authentication in microservice systems - fsto 2017
 
15-auth-session-mgmt.ppt
15-auth-session-mgmt.ppt15-auth-session-mgmt.ppt
15-auth-session-mgmt.ppt
 
Persona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwordsPersona: in your browsers, killing your passwords
Persona: in your browsers, killing your passwords
 
Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server Tutorial
 
Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)Chrome Devtools Protocol via Selenium/Appium (English)
Chrome Devtools Protocol via Selenium/Appium (English)
 
下吧开发总结
下吧开发总结下吧开发总结
下吧开发总结
 
Secure Coding for NodeJS
Secure Coding for NodeJSSecure Coding for NodeJS
Secure Coding for NodeJS
 

Mais de KLab株式会社

KLabのSI事業について
KLabのSI事業についてKLabのSI事業について
KLabのSI事業についてKLab株式会社
 
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
 アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版) アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)KLab株式会社
 
New cheerz slideshare_version
New cheerz slideshare_versionNew cheerz slideshare_version
New cheerz slideshare_versionKLab株式会社
 
大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側KLab株式会社
 
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~KLab株式会社
 
KLab Social Game Platform ~Symfony1.4活用事例~
KLab Social Game Platform ~Symfony1.4活用事例~KLab Social Game Platform ~Symfony1.4活用事例~
KLab Social Game Platform ~Symfony1.4活用事例~KLab株式会社
 
ベイジアンフィルターによる ユーザー投稿フィルタリングエンジンIshigroid
ベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroidベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroid
ベイジアンフィルターによる ユーザー投稿フィルタリングエンジンIshigroidKLab株式会社
 
LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!KLab株式会社
 

Mais de KLab株式会社 (14)

KLabのSI事業について
KLabのSI事業についてKLabのSI事業について
KLabのSI事業について
 
KLab si_case
KLab si_caseKLab si_case
KLab si_case
 
KLab si_operation
KLab si_operationKLab si_operation
KLab si_operation
 
Cheerz presentation110217
Cheerz presentation110217Cheerz presentation110217
Cheerz presentation110217
 
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
 アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版) アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
アクセルメール小冊子2010「安定・確実な携帯メール配信マニュアル ~『届かない』『遅延する』『文字化けする』の回避~」(抜粋版)
 
New cheerz slideshare_version
New cheerz slideshare_versionNew cheerz slideshare_version
New cheerz slideshare_version
 
Phpconf2010
Phpconf2010Phpconf2010
Phpconf2010
 
大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側大ヒットソーシャルアプリの裏側
大ヒットソーシャルアプリの裏側
 
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
 
KLab Social Game Platform ~Symfony1.4活用事例~
KLab Social Game Platform ~Symfony1.4活用事例~KLab Social Game Platform ~Symfony1.4活用事例~
KLab Social Game Platform ~Symfony1.4活用事例~
 
Dsas周りのお話
Dsas周りのお話Dsas周りのお話
Dsas周りのお話
 
Bazaar
BazaarBazaar
Bazaar
 
ベイジアンフィルターによる ユーザー投稿フィルタリングエンジンIshigroid
ベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroidベイジアンフィルターによるユーザー投稿フィルタリングエンジンIshigroid
ベイジアンフィルターによる ユーザー投稿フィルタリングエンジンIshigroid
 
LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!LL言語でもHudsonを使おう!
LL言語でもHudsonを使おう!
 

Último

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Último (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

Apache2.3 探訪

  • 1. Apache 2.3 mod_auth_form + mod_session <koura-h@klab.jp>
  • 2. • Apache • • Apache 2.2 • Apache 2.3
  • 3. ( ) • • MacOSX Linux • •
  • 4. Apache • 2.2 (=2.2.14 at 2010/3/5) • 2.3 (2.3.5- alpha and svn trunk) • stable 2.4 3.0
  • 6. ( ) login home logout
  • 7. CGI(Web ) • • • CGI
  • 8. • • • ID
  • 9. ( ) login home logout
  • 10.
  • 11. ( ) login home logout
  • 12. • •
  • 13. ( ) login home logout
  • 15. Browser Apache(httpd)
  • 16. Browser Apache(httpd) • 401 Authorization Required • •
  • 17. mod_auth_form … Browser Apache(httpd)
  • 18. mod_auth_form … Browser Apache(httpd) • 301 Moved Permanently •
  • 19. ( ) login home logout
  • 20. • Apache - mod_auth_form + mod_session • • handler • check_authn (or check_user_id)
  • 21. Apache • HTTP Apache • parse etc... • •
  • 22.
  • 23. handler • HTTP HTTP • CGI Web
  • 24. check_authn • HTTP • 2.3 (check_user_id )
  • 25. mod_auth_form • • handler • check_authn • • check_authn
  • 26.
  • 27. httpd.conf <Location /doauth>   SetHandler form-login-handler   AuthFormLoginRequiredLocation /login.html   AuthFormLoginSuccessLocation /mypage/   AuthFormProvider dbd   AuthDBDUserPWQuery "SELECT password FROM user WHERE user = %s"   AuthType form   AuthName realm   Session On   SessionDBDCookieName session path=/ </Location> <Location /dologout>   SetHandler form-logout-handler   AuthFormLogoutLocation /logout.html   AuthName realm   Session On   SessionDBDCookieName session path=/ </Location>
  • 28. httpd.conf • = /doauth • = /dologout • SetHandler • AuthFormLoginSuccessLocation • AuthFormLoginRequiredLocation • AuthFormLogoutLocation
  • 29. httpd.conf <LocationMatch "/mypage/*">   AuthFormProvider dbd   AuthDBDUserPWQuery "SELECT password FROM user WHERE user = %s"   AuthFormLoginRequiredLocation /login.html   AuthType form   AuthName realm   Session On SessionEnv On   SessionDBDCookieName session path=/ </LocationMatch>
  • 30. (ACL) • AuthFormProvider • DB • LDAP • htpasswd
  • 31. ( ) login home logout
  • 32. • CGI/Web • HTTP_SESSION REMOTE_USER • ID •
  • 33. HTTP_SESSION • mod_session_crypto • ID •
  • 34. DB • Key-Value
  • 35. ... • MPM • mod_lua • FastCGI (mod_proxy_fcgi & fcgistarter) • etc...
  • 36. DSAS

Notas do Editor

  1. ssh midlab.st.wakwak.ne.jp&amp;#x3057;&amp;#x3066;&amp;#x3001;8080&amp;#x756A;&amp;#x3078;&amp;#x306E;port forwarding&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x304F;&amp;#x3053;&amp;#x3068;&amp;#x3002; Safari&amp;#x306E;proxy&amp;#x8A2D;&amp;#x5B9A;&amp;#x3092;8080&amp;#x3078;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x304F;&amp;#x3053;&amp;#x3068;&amp;#x3002;
  2. Apache&amp;#x3068;&amp;#x3044;&amp;#x3048;&amp;#x3070;&amp;#x3001;Web&amp;#x30B5;&amp;#x30FC;&amp;#x30D3;&amp;#x30B9;&amp;#x3092;&amp;#x69CB;&amp;#x7BC9;&amp;#x3059;&amp;#x308B;&amp;#x4E0A;&amp;#x3067;&amp;#x3060;&amp;#x3044;&amp;#x305F;&amp;#x3044;&amp;#x3069;&amp;#x3053;&amp;#x304B;&amp;#x3067;&amp;#x5FC5;&amp;#x305A;&amp;#x304A;&amp;#x4E16;&amp;#x8A71;&amp;#x306B;&amp;#x306A;&amp;#x308B;&amp;#x3067;&amp;#x3042;&amp;#x308D;&amp;#x3046;&amp;#x3001;HTTP&amp;#x30B5;&amp;#x30FC;&amp;#x30D0;&amp;#x306E;&amp;#x30C7;&amp;#x30D5;&amp;#x30A1;&amp;#x30AF;&amp;#x30C8;&amp;#x30B9;&amp;#x30BF;&amp;#x30F3;&amp;#x30C0;&amp;#x30FC;&amp;#x30C9;&amp;#x3068;&amp;#x3057;&amp;#x3066;&amp;#x5E45;&amp;#x5E83;&amp;#x304F;&amp;#x5B9A;&amp;#x7740;&amp;#x3057;&amp;#x305F;&amp;#x30BD;&amp;#x30D5;&amp;#x30C8;&amp;#x30A6;&amp;#x30A7;&amp;#x30A2;&amp;#x3060;&amp;#x3068;&amp;#x601D;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;KLab&amp;#x3067;&amp;#x3082;&amp;#x5404;&amp;#x6240;&amp;#x3067;&amp;#x904B;&amp;#x7528;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x4E16;&amp;#x8A71;&amp;#x306B;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x73FE;&amp;#x5728;&amp;#x3001;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x306F;2.2&amp;#x7CFB;&amp;#x304C;&amp;#x5B89;&amp;#x5B9A;&amp;#x7248;(stable branch)&amp;#x3068;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x304A;&amp;#x308A;&amp;#x307E;&amp;#x3059;&amp;#x304C;&amp;#x3001;&amp;#x958B;&amp;#x767A;&amp;#x7248;&amp;#x3067;&amp;#x3042;&amp;#x308B;2.3&amp;#x7CFB;&amp;#x304C;&amp;#x65E2;&amp;#x306B;&amp;#x4E26;&amp;#x884C;&amp;#x3057;&amp;#x3066;&amp;#x516C;&amp;#x958B;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x306E;&amp;#x3092;&amp;#x3054;&amp;#x5B58;&amp;#x77E5;&amp;#x3067;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x304B;&amp;#x3002;&amp;#x65B0;&amp;#x3057;&amp;#x3044;&amp;#x6A5F;&amp;#x80FD;&amp;#x3084;&amp;#x6280;&amp;#x8853;&amp;#x3092;&amp;#x53D6;&amp;#x308A;&amp;#x5165;&amp;#x308C;&amp;#x3066;&amp;#x884C;&amp;#x304F;&amp;#x70BA;&amp;#x306B;2.2&amp;#x7CFB;&amp;#x3068;&amp;#x306E;&amp;#x9593;&amp;#x306E;&amp;#x4E92;&amp;#x63DB;&amp;#x6027;&amp;#x3092;&amp;#x6642;&amp;#x306B;&amp;#x72A0;&amp;#x7272;&amp;#x306B;&amp;#x3057;&amp;#x3064;&amp;#x3064;&amp;#x3001;&amp;#x69D8;&amp;#x3005;&amp;#x306A;&amp;#x30C1;&amp;#x30E3;&amp;#x30EC;&amp;#x30F3;&amp;#x30B8;&amp;#x304C;&amp;#x884C;&amp;#x308F;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x308F;&amp;#x3051;&amp;#x3067;&amp;#x3059;&amp;#x3002;&amp;#x5C06;&amp;#x6765;&amp;#x7684;&amp;#x306B;&amp;#x306F;&amp;#x3053;&amp;#x306E;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x304C;2.4&amp;#x7CFB;&amp;#x3068;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x65B0;&amp;#x3057;&amp;#x3044;&amp;#x5B89;&amp;#x5B9A;&amp;#x7248;&amp;#x3068;&amp;#x3057;&amp;#x3066;&amp;#x63D0;&amp;#x4F9B;&amp;#x3055;&amp;#x308C;&amp;#x308B;&amp;#x3053;&amp;#x3068;&amp;#x306B;&amp;#x306A;&amp;#x308B;&amp;#x3067;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;
  3. &amp;#x305F;&amp;#x3068;&amp;#x3048;&amp;#x3070;&amp;#x3053;&amp;#x3093;&amp;#x306A;&amp;#x30B5;&amp;#x30A4;&amp;#x30C8;&amp;#x69CB;&amp;#x7BC9;&amp;#x3001;&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x9077;&amp;#x79FB;&amp;#x304C;&amp;#x3053;&amp;#x306E;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x5B9A;&amp;#x7FA9;&amp;#x3055;&amp;#x308C;&amp;#x308B;&amp;#x3068;&amp;#x3057;&amp;#x307E;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;&amp;#x7DD1;&amp;#x8272;&amp;#x306E;&amp;#x304C;HTML&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x3001;&amp;#x70B9;&amp;#x7DDA;&amp;#x306E;&amp;#x3082;&amp;#x306E;&amp;#x304C;&amp;#x30ED;&amp;#x30B0;&amp;#x30A4;&amp;#x30F3;&amp;#x30FB;&amp;#x30ED;&amp;#x30B0;&amp;#x30A2;&amp;#x30A6;&amp;#x30C8;&amp;#x51E6;&amp;#x7406;&amp;#x3092;&amp;#x884C;&amp;#x3046;&amp;#x3082;&amp;#x306E;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  4. &amp;#xA0;
  5. &amp;#xA0;
  6. &amp;#xA0;
  7. &amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x623B;&amp;#x3057;&amp;#x3066;&amp;#x30C7;&amp;#x30A3;&amp;#x30EC;&amp;#x30AF;&amp;#x30C6;&amp;#x30A3;&amp;#x30D6;&amp;#x898B;&amp;#x305B;&amp;#x306A;&amp;#x304C;&amp;#x3089;&amp;#x8AAC;&amp;#x660E;