{"action":"closed","number":382,"pull_request":{"url":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382","id":67561965,"html_url":"https://github.com/privacyidea/privacyidea/pull/382","diff_url":"https://github.com/privacyidea/privacyidea/pull/382.diff","patch_url":"https://github.com/privacyidea/privacyidea/pull/382.patch","issue_url":"https://api.github.com/repos/privacyidea/privacyidea/issues/382","number":382,"state":"closed","locked":false,"title":"Add apache redirect for yubico validation and yubico docs","user":{"login":"jh23453","id":4837658,"avatar_url":"https://avatars.githubusercontent.com/u/4837658?v=3","gravatar_id":"","url":"https://api.github.com/users/jh23453","html_url":"https://github.com/jh23453","followers_url":"https://api.github.com/users/jh23453/followers","following_url":"https://api.github.com/users/jh23453/following{/other_user}","gists_url":"https://api.github.com/users/jh23453/gists{/gist_id}","starred_url":"https://api.github.com/users/jh23453/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jh23453/subscriptions","organizations_url":"https://api.github.com/users/jh23453/orgs","repos_url":"https://api.github.com/users/jh23453/repos","events_url":"https://api.github.com/users/jh23453/events{/privacy}","received_events_url":"https://api.github.com/users/jh23453/received_events","type":"User","site_admin":false},"body":"<a href='#crh-start'></a><a href='#crh-data-%7B%22processed%22%3A%20%5B%22https%3A//github.com/privacyidea/privacyidea/pull/382%23issuecomment-213572947%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60795892%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60795956%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796344%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796451%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796570%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796827%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23issuecomment-213575168%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23issuecomment-213577021%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60798731%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60798933%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60805873%22%2C%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60807665%22%5D%2C%20%22comments%22%3A%20%7B%22General%20Comment%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23issuecomment-213572947%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22%23%23%20%5BCurrent%20coverage%5D%5B1%5D%20is%20%6096.58%25%60%5Cn%3E%20Merging%20%2A%2A%23382%2A%2A%20into%20%2A%2Amaster%2A%2A%20will%20increase%20coverage%20by%20%2A%2A%2B0.03%25%2A%2A%20as%20of%20%5B%609ebfd1d%60%5D%5B3%5D%5Cn%5Cn%5Cn%60%60%60diff%5Cn%40%40%20%20%20%20%20%20%20%20%20%20%20%20master%20%20%20%20%23382%20%20%20diff%20%40%40%5Cn%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%5Cn%20%20Files%20%20%20%20%20%20%20%20%20%20105%20%20%20%20%20105%20%20%20%20%20%20%20%5Cn%20%20Stmts%20%20%20%20%20%20%20%2012147%20%20%2012147%20%20%20%20%20%20%20%5Cn%20%20Branches%20%20%20%20%20%20%20%20%200%20%20%20%20%20%20%200%20%20%20%20%20%20%20%5Cn%20%20Methods%20%20%20%20%20%20%20%20%20%200%20%20%20%20%20%20%200%20%20%20%20%20%20%20%5Cn%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%5Cn%2B%20Hit%20%20%20%20%20%20%20%20%20%2011729%20%20%2011732%20%20%20%20%20%2B3%5Cn%20%20Partial%20%20%20%20%20%20%20%20%20%200%20%20%20%20%20%20%200%20%20%20%20%20%20%20%5Cn%2B%20Missed%20%20%20%20%20%20%20%20%20418%20%20%20%20%20415%20%20%20%20%20-3%5Cn%60%60%60%5Cn%5Cn%3E%20Review%20entire%20%5BCoverage%20Diff%5D%5B4%5D%20as%20of%20%5B%609ebfd1d%60%5D%5B3%5D%5Cn%5Cn%5Cn%5B1%5D%3A%20https%3A//codecov.io/github/privacyidea/privacyidea%3Fref%3D9ebfd1d574eb3c5033bfcaead40868795c343aa2%5Cn%5B2%5D%3A%20https%3A//codecov.io/github/privacyidea/privacyidea/features/suggestions%3Fref%3D9ebfd1d574eb3c5033bfcaead40868795c343aa2%5Cn%5B3%5D%3A%20https%3A//codecov.io/github/privacyidea/privacyidea/commit/9ebfd1d574eb3c5033bfcaead40868795c343aa2%5Cn%5B4%5D%3A%20https%3A//codecov.io/github/privacyidea/privacyidea/compare/9f3c90a7f30735282292d9892b4066e4c10c4920...9ebfd1d574eb3c5033bfcaead40868795c343aa2%5Cn%5Cn%3E%20Powered%20by%20%5BCodecov%5D%28https%3A//codecov.io%29.%20Updated%20on%20successful%20CI%20builds.%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A07%3A42Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/8655789%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/codecov-io%22%7D%7D%2C%20%7B%22body%22%3A%20%22Thanks%20a%20lot.%20I%20added%20some%20comments...%20%3B-%29%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A16%3A33Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%2C%20%7B%22body%22%3A%20%22Cornelius%20K%5Cu00f6lbel%20%3Cnotifications%40github.com%3E%20writes%3A%5Cn%5Cn%3E%20Thanks%20a%20lot.%20I%20added%20some%20comments...%20%3B-%29%5Cn%5CnThanks%20for%20the%20comments.%20I%27ll%20work%20on%20it%20and%20provide%20a%20new%20or%20updated%5Cnpull%20request.%5Cn%5CnJochen%5Cn%5Cn--%20%5CnThe%20only%20problem%20with%20troubleshooting%20is%20that%20the%20trouble%20shoots%20back.%5Cn%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A25%3A23Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/4837658%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/jh23453%22%7D%7D%5D%2C%20%22title%22%3A%20%22General%20Comment%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20doc/configuration/tokens/yubikey.rst%2033%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60795956%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22I%20think%20here%20is%20a%20full%20stop%20missing%3A%5Cr%5Cn%5Cr%5Cnwith%20%5C%22%5C%22--yubislot%5C%22%5C%22.%20For%20further%20help%20call%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A08%3A40Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20doc/configuration/tokens/yubikey.rst%3AL25-114%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20doc/configuration/tokens/yubikey.rst%2053%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796344%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22This%20is%20an%20application%20token.%20I%20would%20rather%20put%20this%20to%20the%20application-pam-docs.%20And%20maybe%20reference%20it%20here.%5Cr%5Cn%5Cr%5CnThere%20is%20a%20doc%20about%20privacyidea-pam.%20%5Cr%5CnI%20would%20add%20it%20there%20and%20note%3A%20If%20you%20are%20using%20yubikey%20you%20might%20also%20use%20pam_yubico...%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A11%3A39Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20doc/configuration/tokens/yubikey.rst%3AL25-114%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20doc/configuration/tokens/yubikey.rst%2065%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796451%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22i.e.%20the%20PIN%20will%20be%20stripped%20by%20pam_yubico%20and%20will%20not%20reach%20the%20privacyIDEA%20system...%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A12%3A24Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20doc/configuration/tokens/yubikey.rst%3AL25-114%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20deploy/apache/sites-available/privacyidea.conf%208%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796827%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Please%20put%20this%20in%20comments.%5Cr%5CnMost%20setups%20do%20not%20use%20the%20yubikey%20in%20the%20yubico%20cloud%20mode.%20And%20there%20is%20no%20need%20to%20turn%20on%20the%20RewirteEngine.%20%5Cr%5Cn%5Cr%5CnSo%20installations%20that%20use%20the%20yubikey%20cloud%20mode%20can%20simple%20uncomment%20these%20two%20lines.%20Cool.%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A15%3A36Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%2C%20%7B%22body%22%3A%20%22Cornelius%20K%5Cu00f6lbel%20%3Cnotifications%40github.com%3E%20writes%3A%5Cn%5Cn%3E%3E%20%40%40%20-11%2C6%20%2B11%2C14%20%40%40%5Cn%3E%3E%20%20%5Ct%5CtAllowOverride%20None%5Cn%3E%3E%20%20%5Ct%3C/Directory%3E%5Cn%3E%3E%20%20%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20Yubico%20servers%20use%20/wsapi/2.0/verify%20as%20the%20path%20in%20the%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20validation%20URL.%20Some%20tools%20%28e.g.%20Kolab%202fa%29%20let%20the%20%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20user/admin%20change%20the%20api%20host%2C%20but%20not%20the%20rest%20of%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20the%20URL.%20Let%27s%20redirect%20the%20api%20URL%20to%20privacyideas%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20/ttype/yubikey.%5Cn%3E%5Cn%3E%20Please%20put%20this%20in%20comments.%5Cn%5CnOk.%5Cn%5CnI%20don%27t%20use%20nginx%2C%20but%20we%20might%20want%20to%20provide%20the%20same%20hint%5Cnthere.%20I%27ll%20look%20at%20the%20nginx%20documentation%20for%20hints.%5Cn%5CnThere%27s%20also%20something%20in%20nginx%20which%20is%20missing%20in%20the%20apache%20config.%5Cnnginx%20redirects%20all%20http-requests%20to%20https.%20Do%20we%20want%20that%20for%20apache%5Cnas%20well%3F%5Cn%5CnJochen%5Cn%5Cn--%20%5CnThe%20only%20problem%20with%20troubleshooting%20is%20that%20the%20trouble%20shoots%20back.%5Cn%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A30%3A23Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/4837658%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/jh23453%22%7D%7D%2C%20%7B%22body%22%3A%20%22No%2C%20no%20redirect%2C%20please.%20Wondering%20why%20nginx%20config%20does%20that...%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A32%3A15Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%2C%20%7B%22body%22%3A%20%22Cornelius%20K%5Cu00f6lbel%20%3Cnotifications%40github.com%3E%20writes%3A%5Cn%5Cn%3E%3E%20%40%40%20-11%2C6%20%2B11%2C14%20%40%40%5Cn%3E%3E%20%20%5Ct%5CtAllowOverride%20None%5Cn%3E%3E%20%20%5Ct%3C/Directory%3E%5Cn%3E%3E%20%20%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20Yubico%20servers%20use%20/wsapi/2.0/verify%20as%20the%20path%20in%20the%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20validation%20URL.%20Some%20tools%20%28e.g.%20Kolab%202fa%29%20let%20the%20%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20user/admin%20change%20the%20api%20host%2C%20but%20not%20the%20rest%20of%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20the%20URL.%20Let%27s%20redirect%20the%20api%20URL%20to%20privacyideas%5Cn%3E%3E%20%2B%20%20%20%20%20%20%20%20%23%20/ttype/yubikey.%5Cn%3E%5Cn%3E%20No%2C%20no%20redirect%2C%20please.%20Wondering%20why%20nginx%20config%20does%20that...%5Cn%5CnThat%27s%20what%20I%20have%20now%3A%5Cn%5Cn%20%20%20%20%20%20%20%20%23%20Yubico%20servers%20use%20/wsapi/2.0/verify%20as%20the%20path%20in%20the%5Cn%20%20%20%20%20%20%20%20%23%20validation%20URL.%20Some%20tools%20%28e.g.%20Kolab%202fa%29%20let%20the%5Cn%20%20%20%20%20%20%20%20%23%20user/admin%20change%20the%20api%20host%2C%20but%20not%20the%20rest%20of%5Cn%20%20%20%20%20%20%20%20%23%20the%20URL.%20Uncomment%20the%20following%20two%20lines%20to%20reroute%5Cn%20%20%20%20%20%20%20%20%23%20the%20api%20URL%20internally%20to%20privacyideas%20/ttype/yubikey.%5Cn%20%20%20%20%20%20%20%20%23RewriteEngine%20%20on%5Cn%20%20%20%20%20%20%20%20%23RewriteRule%20%20%20%20%5C%22%5E/wsapi/2.0/verify%5C%22%20%20%5C%22/ttype/yubikey%5C%22%20%5BPT%5D%5Cn%5CnThe%20PT%20flag%20is%20documented%20here%3A%5Cnhttps%3A//httpd.apache.org/docs/current/rewrite/flags.html%23flag_pt%5Cn%5CnIf%20I%20call%20/wsapi/2.0/verify%20in%20my%20browser%2C%20the%20url%20is%20not%20rewritten%2C%5Cne.g.%20unchanged%20after%20the%20call.%20access.log%20has%3A%5Cn%5Cn%20-%20-%20%5B22/Apr/2016%3A23%3A15%3A10%20%2B0200%5D%20200%20%5C%22GET%20/ttype/yubikey%20HTTP/1.1%5C%22%20%20167%20%5C%22-%5C%22%20%5C%22Mozilla/5.0%20%28X11%3B%20Ubuntu%3B%20Linux%20x86_64%3B%20rv%3A45.0%29%20Gecko/20100101%20Firefox/45.0%5C%22%5Cn%5CnDo%20you%20have%20something%20different%20in%20mind%3F%5Cn%5CnJochen%5Cn%5Cn--%20%5CnThe%20only%20problem%20with%20troubleshooting%20is%20that%20the%20trouble%20shoots%20back.%5Cn%22%2C%20%22created_at%22%3A%20%222016-04-22T21%3A30%3A24Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/4837658%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/jh23453%22%7D%7D%2C%20%7B%22body%22%3A%20%22%3A%2B1%3A%20%22%2C%20%22created_at%22%3A%20%222016-04-22T21%3A48%3A20Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20deploy/apache/sites-available/privacyidea.conf%3AL11-25%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20doc/configuration/tokens/yubikey.rst%2032%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60795892%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Hah%21%20Found%20a%20typo%21%20%3B-%29%20toen%20-%3E%20token.%5Cr%5Cn%5Cr%5Cn%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A08%3A07Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20doc/configuration/tokens/yubikey.rst%3AL25-114%22%7D%2C%20%22Pull%20a1b21347452f8b4f8d56dbf586a167cf33763aa7%20doc/configuration/tokens/yubikey.rst%2082%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/privacyidea/privacyidea/pull/382%23discussion_r60796570%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22Yes%2C%20the%20pam_yubico%20topic%20should%20be%20a%20subsection%20to%20the%20pam%20application%20doc...%22%2C%20%22created_at%22%3A%20%222016-04-22T20%3A13%3A19Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1908620%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/cornelinux%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20doc/configuration/tokens/yubikey.rst%3AL25-114%22%7D%7D%7D'></a>\n<a href='https://www.codereviewhub.com/'><img src='http://www.codereviewhub.com/site/github-bar.png' height=40></a>\n- [ ] <a href='#crh-comment-General Comment'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#issuecomment-213572947'>General Comment</a></b>\n- <a href='https://github.com/codecov-io'><img border=0 src='https://avatars.githubusercontent.com/u/8655789?v=3' height=16 width=16'></a> ## [Current coverage][1] is `96.58%`\n> Merging **#382** into **master** will increase coverage by **+0.03%** as of [`9ebfd1d`][3]\n```diff\n@@            master    #382   diff @@\n======================================\nFiles          105     105\nStmts        12147   12147\nBranches         0       0\nMethods          0       0\n======================================\n+ Hit          11729   11732     +3\nPartial          0       0\n+ Missed         418     415     -3\n```\n> Review entire [Coverage Diff][4] as of [`9ebfd1d`][3]\n[1]: https://codecov.io/github/privacyidea/privacyidea?ref=9ebfd1d574eb3c5033bfcaead40868795c343aa2\n[2]: https://codecov.io/github/privacyidea/privacyidea/features/suggestions?ref=9ebfd1d574eb3c5033bfcaead40868795c343aa2\n[3]: https://codecov.io/github/privacyidea/privacyidea/commit/9ebfd1d574eb3c5033bfcaead40868795c343aa2\n[4]: https://codecov.io/github/privacyidea/privacyidea/compare/9f3c90a7f30735282292d9892b4066e4c10c4920...9ebfd1d574eb3c5033bfcaead40868795c343aa2\n> Powered by [Codecov](https://codecov.io). Updated on successful CI builds.\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> Thanks a lot. I added some comments... ;-)\n- <a href='https://github.com/jh23453'><img border=0 src='https://avatars.githubusercontent.com/u/4837658?v=3' height=16 width=16'></a> Cornelius Kölbel <notifications@github.com> writes:\n> Thanks a lot. I added some comments... ;-)\nThanks for the comments. I'll work on it and provide a new or updated\npull request.\nJochen\n--\nThe only problem with troubleshooting is that the trouble shoots back.\n- [ ] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 doc/configuration/tokens/yubikey.rst 32'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60795892'>File: doc/configuration/tokens/yubikey.rst:L25-114</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> Hah! Found a typo! ;-) toen -> token.\n- [ ] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 doc/configuration/tokens/yubikey.rst 33'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60795956'>File: doc/configuration/tokens/yubikey.rst:L25-114</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> I think here is a full stop missing:\nwith \"\"--yubislot\"\". For further help call\n- [ ] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 doc/configuration/tokens/yubikey.rst 53'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60796344'>File: doc/configuration/tokens/yubikey.rst:L25-114</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> This is an application token. I would rather put this to the application-pam-docs. And maybe reference it here.\nThere is a doc about privacyidea-pam.\nI would add it there and note: If you are using yubikey you might also use pam_yubico...\n- [ ] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 doc/configuration/tokens/yubikey.rst 65'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60796451'>File: doc/configuration/tokens/yubikey.rst:L25-114</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> i.e. the PIN will be stripped by pam_yubico and will not reach the privacyIDEA system...\n- [ ] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 doc/configuration/tokens/yubikey.rst 82'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60796570'>File: doc/configuration/tokens/yubikey.rst:L25-114</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> Yes, the pam_yubico topic should be a subsection to the pam application doc...\n- [x] <a href='#crh-comment-Pull a1b21347452f8b4f8d56dbf586a167cf33763aa7 deploy/apache/sites-available/privacyidea.conf 8'></a> <img src='http://www.codereviewhub.com/site/github-completed.png' height=16 width=60>&nbsp;<b><a href='https://github.com/privacyidea/privacyidea/pull/382#discussion_r60796827'>File: deploy/apache/sites-available/privacyidea.conf:L11-25</a></b>\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> Please put this in comments.\nMost setups do not use the yubikey in the yubico cloud mode. And there is no need to turn on the RewirteEngine.\nSo installations that use the yubikey cloud mode can simple uncomment these two lines. Cool.\n- <a href='https://github.com/jh23453'><img border=0 src='https://avatars.githubusercontent.com/u/4837658?v=3' height=16 width=16'></a> Cornelius Kölbel <notifications@github.com> writes:\n>> @@ -11,6 +11,14 @@\n>>  \t\tAllowOverride None\n>>  \t</Directory>\n>>\n>> +        # Yubico servers use /wsapi/2.0/verify as the path in the\n>> +        # validation URL. Some tools (e.g. Kolab 2fa) let the\n>> +        # user/admin change the api host, but not the rest of\n>> +        # the URL. Let's redirect the api URL to privacyideas\n>> +        # /ttype/yubikey.\n>\n> Please put this in comments.\nOk.\nI don't use nginx, but we might want to provide the same hint\nthere. I'll look at the nginx documentation for hints.\nThere's also something in nginx which is missing in the apache config.\nnginx redirects all http-requests to https. Do we want that for apache\nas well?\nJochen\n--\nThe only problem with troubleshooting is that the trouble shoots back.\n- <a href='https://github.com/cornelinux'><img border=0 src='https://avatars.githubusercontent.com/u/1908620?v=3' height=16 width=16'></a> No, no redirect, please. Wondering why nginx config does that...\n- <a href='https://github.com/jh23453'><img border=0 src='https://avatars.githubusercontent.com/u/4837658?v=3' height=16 width=16'></a> Cornelius Kölbel <notifications@github.com> writes:\n>> @@ -11,6 +11,14 @@\n>>  \t\tAllowOverride None\n>>  \t</Directory>\n>>\n>> +        # Yubico servers use /wsapi/2.0/verify as the path in the\n>> +        # validation URL. Some tools (e.g. Kolab 2fa) let the\n>> +        # user/admin change the api host, but not the rest of\n>> +        # the URL. Let's redirect the api URL to privacyideas\n>> +        # /ttype/yubikey.\n>\n> No, no redirect, please. Wondering why nginx config does that...\nThat's what I have now:\n# Yubico servers use /wsapi/2.0/verify as the path in the\n# validation URL. Some tools (e.g. Kolab 2fa) let the\n# user/admin change the api host, but not the rest of\n# the URL. Uncomment the following two lines to reroute\n# the api URL internally to privacyideas /ttype/yubikey.\n#RewriteEngine  on\n#RewriteRule    \"^/wsapi/2.0/verify\"  \"/ttype/yubikey\" [PT]\nThe PT flag is documented here:\nhttps://httpd.apache.org/docs/current/rewrite/flags.html#flag_pt\nIf I call /wsapi/2.0/verify in my browser, the url is not rewritten,\ne.g. unchanged after the call. access.log has:\n- - [22/Apr/2016:23:15:10 +0200] 200 \"GET /ttype/yubikey HTTP/1.1\"  167 \"-\" \"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0\"\nDo you have something different in mind?\nJochen\n--\nThe only problem with troubleshooting is that the trouble shoots back.\n\n\n<a href='https://www.codereviewhub.com/privacyidea/privacyidea/pull/382?mark_as_completed=1'><img src='http://www.codereviewhub.com/site/github-mark-as-completed.png' height=26></a>&nbsp;<a href='https://www.codereviewhub.com/privacyidea/privacyidea/pull/382?approve=1'><img src='http://www.codereviewhub.com/site/github-approve.png' height=26></a>&nbsp;<a href='https://github.com/privacyidea/privacyidea/pull/382'><img src='http://www.codereviewhub.com/site/github-refresh.png' height=26></a>\n<a href='#crh-end'></a>","created_at":"2016-04-22T19:37:20Z","updated_at":"2016-05-04T13:18:26Z","closed_at":"2016-05-04T13:18:26Z","merged_at":null,"merge_commit_sha":"44b78ab5db45938d1f01cdb800820711f4117e0c","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382/commits","review_comments_url":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382/comments","review_comment_url":"https://api.github.com/repos/privacyidea/privacyidea/pulls/comments{/number}","comments_url":"https://api.github.com/repos/privacyidea/privacyidea/issues/382/comments","statuses_url":"https://api.github.com/repos/privacyidea/privacyidea/statuses/5d6f1d8ace2ce5ee032db7d44fd9415cb604e615","head":{"label":"jh23453:add-apache-redirect","ref":"add-apache-redirect","sha":"5d6f1d8ace2ce5ee032db7d44fd9415cb604e615","user":{"login":"jh23453","id":4837658,"avatar_url":"https://avatars.githubusercontent.com/u/4837658?v=3","gravatar_id":"","url":"https://api.github.com/users/jh23453","html_url":"https://github.com/jh23453","followers_url":"https://api.github.com/users/jh23453/followers","following_url":"https://api.github.com/users/jh23453/following{/other_user}","gists_url":"https://api.github.com/users/jh23453/gists{/gist_id}","starred_url":"https://api.github.com/users/jh23453/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jh23453/subscriptions","organizations_url":"https://api.github.com/users/jh23453/orgs","repos_url":"https://api.github.com/users/jh23453/repos","events_url":"https://api.github.com/users/jh23453/events{/privacy}","received_events_url":"https://api.github.com/users/jh23453/received_events","type":"User","site_admin":false},"repo":{"id":54902813,"name":"privacyidea","full_name":"jh23453/privacyidea","owner":{"login":"jh23453","id":4837658,"avatar_url":"https://avatars.githubusercontent.com/u/4837658?v=3","gravatar_id":"","url":"https://api.github.com/users/jh23453","html_url":"https://github.com/jh23453","followers_url":"https://api.github.com/users/jh23453/followers","following_url":"https://api.github.com/users/jh23453/following{/other_user}","gists_url":"https://api.github.com/users/jh23453/gists{/gist_id}","starred_url":"https://api.github.com/users/jh23453/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jh23453/subscriptions","organizations_url":"https://api.github.com/users/jh23453/orgs","repos_url":"https://api.github.com/users/jh23453/repos","events_url":"https://api.github.com/users/jh23453/events{/privacy}","received_events_url":"https://api.github.com/users/jh23453/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jh23453/privacyidea","description":"authentication system for two factor authentication (2FA, OTP)","fork":true,"url":"https://api.github.com/repos/jh23453/privacyidea","forks_url":"https://api.github.com/repos/jh23453/privacyidea/forks","keys_url":"https://api.github.com/repos/jh23453/privacyidea/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jh23453/privacyidea/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jh23453/privacyidea/teams","hooks_url":"https://api.github.com/repos/jh23453/privacyidea/hooks","issue_events_url":"https://api.github.com/repos/jh23453/privacyidea/issues/events{/number}","events_url":"https://api.github.com/repos/jh23453/privacyidea/events","assignees_url":"https://api.github.com/repos/jh23453/privacyidea/assignees{/user}","branches_url":"https://api.github.com/repos/jh23453/privacyidea/branches{/branch}","tags_url":"https://api.github.com/repos/jh23453/privacyidea/tags","blobs_url":"https://api.github.com/repos/jh23453/privacyidea/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jh23453/privacyidea/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jh23453/privacyidea/git/refs{/sha}","trees_url":"https://api.github.com/repos/jh23453/privacyidea/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jh23453/privacyidea/statuses/{sha}","languages_url":"https://api.github.com/repos/jh23453/privacyidea/languages","stargazers_url":"https://api.github.com/repos/jh23453/privacyidea/stargazers","contributors_url":"https://api.github.com/repos/jh23453/privacyidea/contributors","subscribers_url":"https://api.github.com/repos/jh23453/privacyidea/subscribers","subscription_url":"https://api.github.com/repos/jh23453/privacyidea/subscription","commits_url":"https://api.github.com/repos/jh23453/privacyidea/commits{/sha}","git_commits_url":"https://api.github.com/repos/jh23453/privacyidea/git/commits{/sha}","comments_url":"https://api.github.com/repos/jh23453/privacyidea/comments{/number}","issue_comment_url":"https://api.github.com/repos/jh23453/privacyidea/issues/comments{/number}","contents_url":"https://api.github.com/repos/jh23453/privacyidea/contents/{+path}","compare_url":"https://api.github.com/repos/jh23453/privacyidea/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jh23453/privacyidea/merges","archive_url":"https://api.github.com/repos/jh23453/privacyidea/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jh23453/privacyidea/downloads","issues_url":"https://api.github.com/repos/jh23453/privacyidea/issues{/number}","pulls_url":"https://api.github.com/repos/jh23453/privacyidea/pulls{/number}","milestones_url":"https://api.github.com/repos/jh23453/privacyidea/milestones{/number}","notifications_url":"https://api.github.com/repos/jh23453/privacyidea/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jh23453/privacyidea/labels{/name}","releases_url":"https://api.github.com/repos/jh23453/privacyidea/releases{/id}","deployments_url":"https://api.github.com/repos/jh23453/privacyidea/deployments","created_at":"2016-03-28T15:39:48Z","updated_at":"2016-03-28T15:39:50Z","pushed_at":"2016-04-25T19:24:41Z","git_url":"git://github.com/jh23453/privacyidea.git","ssh_url":"git@github.com:jh23453/privacyidea.git","clone_url":"https://github.com/jh23453/privacyidea.git","svn_url":"https://github.com/jh23453/privacyidea","homepage":"http://www.privacyidea.org","size":21863,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"privacyidea:master","ref":"master","sha":"9b275d1827720a87dd588928eb97c07106340898","user":{"login":"privacyidea","id":7519615,"avatar_url":"https://avatars.githubusercontent.com/u/7519615?v=3","gravatar_id":"","url":"https://api.github.com/users/privacyidea","html_url":"https://github.com/privacyidea","followers_url":"https://api.github.com/users/privacyidea/followers","following_url":"https://api.github.com/users/privacyidea/following{/other_user}","gists_url":"https://api.github.com/users/privacyidea/gists{/gist_id}","starred_url":"https://api.github.com/users/privacyidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/privacyidea/subscriptions","organizations_url":"https://api.github.com/users/privacyidea/orgs","repos_url":"https://api.github.com/users/privacyidea/repos","events_url":"https://api.github.com/users/privacyidea/events{/privacy}","received_events_url":"https://api.github.com/users/privacyidea/received_events","type":"Organization","site_admin":false},"repo":{"id":20446681,"name":"privacyidea","full_name":"privacyidea/privacyidea","owner":{"login":"privacyidea","id":7519615,"avatar_url":"https://avatars.githubusercontent.com/u/7519615?v=3","gravatar_id":"","url":"https://api.github.com/users/privacyidea","html_url":"https://github.com/privacyidea","followers_url":"https://api.github.com/users/privacyidea/followers","following_url":"https://api.github.com/users/privacyidea/following{/other_user}","gists_url":"https://api.github.com/users/privacyidea/gists{/gist_id}","starred_url":"https://api.github.com/users/privacyidea/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/privacyidea/subscriptions","organizations_url":"https://api.github.com/users/privacyidea/orgs","repos_url":"https://api.github.com/users/privacyidea/repos","events_url":"https://api.github.com/users/privacyidea/events{/privacy}","received_events_url":"https://api.github.com/users/privacyidea/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/privacyidea/privacyidea","description":"authentication system for two factor authentication (2FA, OTP)","fork":false,"url":"https://api.github.com/repos/privacyidea/privacyidea","forks_url":"https://api.github.com/repos/privacyidea/privacyidea/forks","keys_url":"https://api.github.com/repos/privacyidea/privacyidea/keys{/key_id}","collaborators_url":"https://api.github.com/repos/privacyidea/privacyidea/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/privacyidea/privacyidea/teams","hooks_url":"https://api.github.com/repos/privacyidea/privacyidea/hooks","issue_events_url":"https://api.github.com/repos/privacyidea/privacyidea/issues/events{/number}","events_url":"https://api.github.com/repos/privacyidea/privacyidea/events","assignees_url":"https://api.github.com/repos/privacyidea/privacyidea/assignees{/user}","branches_url":"https://api.github.com/repos/privacyidea/privacyidea/branches{/branch}","tags_url":"https://api.github.com/repos/privacyidea/privacyidea/tags","blobs_url":"https://api.github.com/repos/privacyidea/privacyidea/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/privacyidea/privacyidea/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/privacyidea/privacyidea/git/refs{/sha}","trees_url":"https://api.github.com/repos/privacyidea/privacyidea/git/trees{/sha}","statuses_url":"https://api.github.com/repos/privacyidea/privacyidea/statuses/{sha}","languages_url":"https://api.github.com/repos/privacyidea/privacyidea/languages","stargazers_url":"https://api.github.com/repos/privacyidea/privacyidea/stargazers","contributors_url":"https://api.github.com/repos/privacyidea/privacyidea/contributors","subscribers_url":"https://api.github.com/repos/privacyidea/privacyidea/subscribers","subscription_url":"https://api.github.com/repos/privacyidea/privacyidea/subscription","commits_url":"https://api.github.com/repos/privacyidea/privacyidea/commits{/sha}","git_commits_url":"https://api.github.com/repos/privacyidea/privacyidea/git/commits{/sha}","comments_url":"https://api.github.com/repos/privacyidea/privacyidea/comments{/number}","issue_comment_url":"https://api.github.com/repos/privacyidea/privacyidea/issues/comments{/number}","contents_url":"https://api.github.com/repos/privacyidea/privacyidea/contents/{+path}","compare_url":"https://api.github.com/repos/privacyidea/privacyidea/compare/{base}...{head}","merges_url":"https://api.github.com/repos/privacyidea/privacyidea/merges","archive_url":"https://api.github.com/repos/privacyidea/privacyidea/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/privacyidea/privacyidea/downloads","issues_url":"https://api.github.com/repos/privacyidea/privacyidea/issues{/number}","pulls_url":"https://api.github.com/repos/privacyidea/privacyidea/pulls{/number}","milestones_url":"https://api.github.com/repos/privacyidea/privacyidea/milestones{/number}","notifications_url":"https://api.github.com/repos/privacyidea/privacyidea/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/privacyidea/privacyidea/labels{/name}","releases_url":"https://api.github.com/repos/privacyidea/privacyidea/releases{/id}","deployments_url":"https://api.github.com/repos/privacyidea/privacyidea/deployments","created_at":"2014-06-03T14:47:02Z","updated_at":"2016-04-26T20:19:45Z","pushed_at":"2016-05-04T13:16:40Z","git_url":"git://github.com/privacyidea/privacyidea.git","ssh_url":"git@github.com:privacyidea/privacyidea.git","clone_url":"https://github.com/privacyidea/privacyidea.git","svn_url":"https://github.com/privacyidea/privacyidea","homepage":"http://www.privacyidea.org","size":22514,"stargazers_count":113,"watchers_count":113,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":35,"mirror_url":null,"open_issues_count":20,"forks":35,"open_issues":20,"watchers":113,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382"},"html":{"href":"https://github.com/privacyidea/privacyidea/pull/382"},"issue":{"href":"https://api.github.com/repos/privacyidea/privacyidea/issues/382"},"comments":{"href":"https://api.github.com/repos/privacyidea/privacyidea/issues/382/comments"},"review_comments":{"href":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382/comments"},"review_comment":{"href":"https://api.github.com/repos/privacyidea/privacyidea/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/privacyidea/privacyidea/pulls/382/commits"},"statuses":{"href":"https://api.github.com/repos/privacyidea/privacyidea/statuses/5d6f1d8ace2ce5ee032db7d44fd9415cb604e615"}},"merged":false,"mergeable":true,"mergeable_state":"clean","merged_by":null,"comments":4,"review_comments":10,"commits":3,"additions":179,"deletions":11,"changed_files":8}}