Login system layout general description - Advanced Sessions UE5.3

I’m trying to figure out how to do a login system for players but I don’t know much about the unreal portion of it. I can handle the database side of it without any issues but the UE basics I know nothing about. I don’t need programming examples, just general directions (and suggested blueprints like GameInstance or GameMode etc if they matter.

I have a vague thought that in the client I show all the servers but I add a URL for the client to use for authentication (the login server address) so that when the client clicks Join Server it displays a login screen to enter the information (or create account) then it sends that information to the login server for processing. If it is a valid login then the client would actually join the session (as per normal). Not sure if this is the right way or if I should join the session first then authenticate.

Summary: Find Sessions and list them, click the desired server and extract IP from that object, authenticate using that ip/port and if successful join the session (or go back to login page).

Details I don’t know (No clue)

How to get the server IP (login server on same machine for now) can’t seem to find anything about that (except external plugins, rather have something native if it exists).

I already have everything working (Except authentication of course)

P.S. Shouldn’t matter but I’ll probably use MySql or Postgres for the database.

Ok, it was a pretty useless question. I’ve figured out quite a bit since posting.

  1. Yes login before doing a “Join Session”
  2. The Authentication process itself should be done on the gameinstance blueprint so nothing is exposed to anyone (except the local player)
  3. Ownership is important so best to call the authentication process from a playercontroller (so ownership can be certain and nothing happens on other clients

I’m just learning the differences between Multicast and repnotify now and it seems clear enough. Only thing left for me to figure out for authentication purposes is how to tell ONLY the sending client the results of the authentication process. It is not at all clear how to do that and all the replication tutorials I can find only seem to be concerned with replicated to EVERYONE.