No, Adsense does not send the content of every page to Google - that would be pretty inefficient and hog a lot of bandwidth - and in fact is not technically possible with cross-domain restrictions.
Instead, the Adsense crawler (different from the normal Googlebot crawler) visits the page separately and decides what the context of the page is. Then when a page with Adsense is visited, the URL of the current page is sent to Google and it returns ads based on the predetermined context.
In the case of pages behind a login, under normal circumstances Adsense will see whatever non-logged-in users would see, e.g. a login page, and serve ads based on that (most likely generic ads about your site's category).
However, it appears there is a special method to allow Adsense access to login-protected pages, by setting up a special login account for it. This will be useful if all users are seeing the same content behind the login.
In your case it sounds like users are seeing customised content, so you'll never be able to target them perfectly, but you can make an Adsense login and show some typical content to generate ads appealing to as many of your users as possible.