apereo / dotnet-cas-client

Apereo .NET CAS Client
Apache License 2.0
233 stars 176 forks source link

Unable to obtain CAS proxy ticket in load balanced environment #112

Open rrsingzon opened 4 years ago

rrsingzon commented 4 years ago

Our web application is CAS enabled and works to get data from a CAS enabled backend. Everything works fine and we can get a proxy ticket to retrieve data from the backend. It is when it is launched in production where servers are load balanced that we get "Unable to obtain CAS proxy ticket" errors. We changed our sessionState mode to "StateServer" in web.config hoping that one source handing session will fix the issue. It doesn't seem to work so is there anything else we can change to get it working?

phantomtypist commented 4 years ago

Did you stand up a Memcached or Redis server to manage the tickets in a distributed fashion? If you don't do this in a distributed load balanced environment then each server maintains its own tickets each other server isn't aware of. If you use a central data store for the tickets then all servers phone home to that data store to create/read/update the tickets. We have providers for Redis and Memcached You can find those on NuGet. There are also associated github projects under this organization for each of those packages. Go to those repos to read the pertinent documentation. @TheHokieCoder is working on an MSSQL data store provider. Let me know if you run into any problems.

rrsingzon commented 4 years ago

Thanks for the information. We’ll give it a try but it’d be great to have the MSSQL option.

From: Jason Kanaris notifications@github.com Sent: Monday, October 5, 2020 3:14 PM To: apereo/dotnet-cas-client dotnet-cas-client@noreply.github.com Cc: Ryan Singzon rrsingzon@cpp.edu; Author author@noreply.github.com Subject: Ex: Re: [apereo/dotnet-cas-client] Unable to obtain CAS proxy ticket in load balanced environment (#112)

Did you stand up a Memcached or Redis server to manage the tickets in a distributed fashion? If you don't do this in a distributed load balanced environment then each server maintains its own tickets each other server isn't aware of. If you use a central data store for the tickets then all servers phone home to that data store to create/read/update the tickets. We have providers for Redis and Memcached You can find those on NuGet. There are also associated github projects under this organization for each of those packages. Go to those repos to read the pertinent documentation. @TheHokieCoderhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FTheHokieCoder&data=02%7C01%7Crrsingzon%40cpp.edu%7C94394f6b4eef480b493108d8697be99f%7C164ba61e39ec4f5d89ffaa1f00a521b4%7C0%7C0%7C637375328204631264&sdata=dbASdnTXQ%2F3RbubAaFV5bnk0LYfz5WrB00SJplTG9g4%3D&reserved=0 is working on an MSSQL data store provider. Let me know if you run into any problems.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fapereo%2Fdotnet-cas-client%2Fissues%2F112%23issuecomment-703917451&data=02%7C01%7Crrsingzon%40cpp.edu%7C94394f6b4eef480b493108d8697be99f%7C164ba61e39ec4f5d89ffaa1f00a521b4%7C0%7C0%7C637375328204641215&sdata=JkuyoHFcb93fVfTxmMhGoHumi29lOouaNnMX9ZKRXNM%3D&reserved=0, or unsubscribehttps://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAPFVZWJRFE7I36ME72BQI6DSJJAJHANCNFSM4SFEDBMA&data=02%7C01%7Crrsingzon%40cpp.edu%7C94394f6b4eef480b493108d8697be99f%7C164ba61e39ec4f5d89ffaa1f00a521b4%7C0%7C0%7C637375328204641215&sdata=L2M7SGs4ImoRUUOkzYbBW4zeeePD6SR9GO33AqVHFDI%3D&reserved=0. CAUTION: This email was not sent from a Cal Poly Pomona service. Exercise caution when clicking links or opening attachments. Please forward suspicious email to suspectemail@cpp.edumailto:suspectemail@cpp.edu.

phantomtypist commented 4 years ago

@TheHokieCoder any update on the MSSQL distributed ticket store repo/nuget package? If you're short on time and you feel comfortable dumping the code into that one repo for it go ahead. Just give me some cliff notes and I'll take a look over it and see what I can do to get ready to ship it out.

phantomtypist commented 4 years ago

@TheHokieCoder it's okay if the code looks like poop :)