{"action":"created","issue":{"url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/1070","labels_url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/1070/labels{/name}","comments_url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/1070/comments","events_url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/1070/events","html_url":"https://github.com/IdentityServer/IdentityServer3/issues/1070","id":61119376,"number":1070,"title":"How to configure IdentityServer for a web farm behind an F5?","user":{"login":"slafave","id":10047666,"avatar_url":"https://avatars.githubusercontent.com/u/10047666?v=3","gravatar_id":"","url":"https://api.github.com/users/slafave","html_url":"https://github.com/slafave","followers_url":"https://api.github.com/users/slafave/followers","following_url":"https://api.github.com/users/slafave/following{/other_user}","gists_url":"https://api.github.com/users/slafave/gists{/gist_id}","starred_url":"https://api.github.com/users/slafave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slafave/subscriptions","organizations_url":"https://api.github.com/users/slafave/orgs","repos_url":"https://api.github.com/users/slafave/repos","events_url":"https://api.github.com/users/slafave/events{/privacy}","received_events_url":"https://api.github.com/users/slafave/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/IdentityServer/IdentityServer3/labels/question","name":"question","color":"cc317c"}],"state":"open","locked":false,"assignee":{"login":"leastprivilege","id":1454075,"avatar_url":"https://avatars.githubusercontent.com/u/1454075?v=3","gravatar_id":"","url":"https://api.github.com/users/leastprivilege","html_url":"https://github.com/leastprivilege","followers_url":"https://api.github.com/users/leastprivilege/followers","following_url":"https://api.github.com/users/leastprivilege/following{/other_user}","gists_url":"https://api.github.com/users/leastprivilege/gists{/gist_id}","starred_url":"https://api.github.com/users/leastprivilege/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leastprivilege/subscriptions","organizations_url":"https://api.github.com/users/leastprivilege/orgs","repos_url":"https://api.github.com/users/leastprivilege/repos","events_url":"https://api.github.com/users/leastprivilege/events{/privacy}","received_events_url":"https://api.github.com/users/leastprivilege/received_events","type":"User","site_admin":false},"milestone":null,"comments":7,"created_at":"2015-03-13T16:16:22Z","updated_at":"2015-03-16T15:37:28Z","closed_at":null,"body":"We are hosting IdSrv on an IIS web farm behind an F5 for high-availability and load balancing.  What steps need to be taken to configure and optimize IdSrv for this configuration?\r\n\r\n*F5 config*\r\n* not using sticky sessions\r\n* SSL terminates at the F5 public endpoint.\r\n  * So F5-to-IIS is not SSL\r\n\r\n*Here are the things I have noted so far*\r\n1. Configure the machine keys as noted in #1029\r\n2. Install the F5 SSL cert locally in the Windows Cert Store on each node to be able to reference the SSL keys\r\n3. Set RequireSsl to false so the non-SSL F5-to-IIS traffic is accepted\r\n4. Set PublicOrigin to the DNS of the F5 public SSL endpoint\r\n5. Store Client, Scope, and Operational Data in EF\r\n6. If we decide to cache results for client, scope, and user stores, consider writing a custom ICache to an L2 cache like NCache or Redis instead of using the default L1 in memory stores.\r\n\r\n**Is there anything I am missing or that you would suggest in addition?**\r\n\r\nThanks!\r\n"},"comment":{"url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/comments/81745893","html_url":"https://github.com/IdentityServer/IdentityServer3/issues/1070#issuecomment-81745893","issue_url":"https://api.github.com/repos/IdentityServer/IdentityServer3/issues/1070","id":81745893,"user":{"login":"leastprivilege","id":1454075,"avatar_url":"https://avatars.githubusercontent.com/u/1454075?v=3","gravatar_id":"","url":"https://api.github.com/users/leastprivilege","html_url":"https://github.com/leastprivilege","followers_url":"https://api.github.com/users/leastprivilege/followers","following_url":"https://api.github.com/users/leastprivilege/following{/other_user}","gists_url":"https://api.github.com/users/leastprivilege/gists{/gist_id}","starred_url":"https://api.github.com/users/leastprivilege/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leastprivilege/subscriptions","organizations_url":"https://api.github.com/users/leastprivilege/orgs","repos_url":"https://api.github.com/users/leastprivilege/repos","events_url":"https://api.github.com/users/leastprivilege/events{/privacy}","received_events_url":"https://api.github.com/users/leastprivilege/received_events","type":"User","site_admin":false},"created_at":"2015-03-16T15:37:28Z","updated_at":"2015-03-16T15:37:28Z","body":"https://github.com/IdentityServer/IdentityServer3/blob/master/source/Core/Configuration/X509CertificateDataProtector.cs"}}