Openid architecture for Java
I try to understand the concept and benefits of implementing openid in the project Moreover, since I am a java developer, I am more or less interested in understanding its main Java implementation openid4java
My understanding is that openid is a standard for configuring decentralized IDS in a unified way Now, if it is completely (or even slightly) incorrect, please correct me!
Assuming I'm still on track, I find that all kinds or organizations are using openid, such as MySpace, and they use matching http://www.myspace.com/username The URL of identifies each user
So how does openid work as a system? Is it just an "openid server" network that coordinates and ensures that all IDS in its system are unique and match a pattern like DNS machines? Or, it is just an algorithm used to generate a globally unique ID for each client domain (such as MySpace) like a guid
I just don't understand how openid is actually expressed, and how a framework like openid4java is compared to "expression" What is their purpose
Solution
First, openid communication has two aspects - provider and consumer Consumers are applications that attempt to authenticate using openid, and providers are servers that send authentication requests
Each provider has a so - called endpoint - URL that accepts authentication requests When supporting openid providers, you should know the URL in advance First, you must find out what the endpoint for a given openid is, and then exchange messages with the provider All these are included in openid4java consumermanager
Authentication then occurs – you redirect the user to the provider URL, the user confirms that he wants to log in with his account (should log in), then the provider redirects back to you, and then you can get the relevant user (through another request)