firebase:: auth:: User
#include <user.h>Firebase user account object.
Summary
This class allows you to manipulate the profile of a user, link to and unlink from authentication providers, and refresh authentication tokens.
Inheritance
Inherits from: firebase::auth::UserInfoInterface
Friend classes |
|---|
Public functions |
|
|---|---|
Anonymous() const
|
bool
Returns true if user signed in anonymously.
|
Delete()
|
Future< void >
Deletes the user account.
|
DeleteLastResult() const
|
Future< void >
Get results of the most recent call to Delete.
|
DisplayName() const
|
virtual std::string
Gets the display name associated with the user, if any.
|
Email() const
|
virtual std::string
Gets email associated with the user, if any.
|
EmailVerified() const
|
bool
Returns true if the email address associated with this user has been verified.
|
LinkWithCredential(const Credential & credential)
|
Links the user with the given 3rd party credentials.
|
LinkWithCredentialLastResult() const
|
Get results of the most recent call to LinkWithCredential.
|
PhotoUrl() const
|
virtual std::string
Gets the photo url associated with the user, if any.
|
ProviderData() const
|
const std::vector< UserInfoInterface * > &
Gets the third party profile data associated with this user returned by the authentication server, if any.
|
ProviderId() const
|
virtual std::string
Gets the provider ID for the user (For example, "Facebook").
|
Reauthenticate(const Credential & credential)
|
Future< void >
Reauthenticate using a credential.
|
ReauthenticateLastResult() const
|
Future< void >
Get results of the most recent call to UpdatePassword.
|
RefreshToken() const
|
std::string
Gets the raw refresh token (only for use in advanced scenarios where manually refresh of tokens is required).
|
Reload()
|
Future< void >
Refreshes the data for this user.
|
ReloadLastResult() const
|
Future< void >
Get results of the most recent call to Reload.
|
SendEmailVerification()
|
Future< void >
Initiates email verification for the user.
|
SendEmailVerificationLastResult() const
|
Future< void >
Get results of the most recent call to SendEmailVerification.
|
Token(bool force_refresh)
|
Future< std::string >
The Java Web Token (JWT) that can be used to identify the user to the backend.
|
TokenLastResult() const
|
Future< std::string >
Get results of the most recent call to Token.
|
UID() const
|
virtual std::string
Gets the unique user ID for the user.
|
Unlink(const char *provider)
|
Unlinks the current user from the provider specified.
|
UnlinkLastResult() const
|
Get results of the most recent call to Unlink.
|
UpdateEmail(const char *email)
|
Future< void >
Sets the email address for the user.
|
UpdateEmailLastResult() const
|
Future< void >
Get results of the most recent call to UpdateEmail.
|
UpdatePassword(const char *password)
|
Future< void >
Attempts to change the password for the current user.
|
UpdatePasswordLastResult() const
|
Future< void >
Get results of the most recent call to UpdatePassword.
|
UpdateUserProfile(const UserProfile & profile)
|
Future< void >
Updates a subset of user profile information.
|
UpdateUserProfileLastResult() const
|
Future< void >
Get results of the most recent call to UpdateUserProfile.
|
Structs |
|
|---|---|
|
firebase:: |
Parameters to the UpdateUserProfile() function. |
Friend classes
Public functions
Anonymous
bool Anonymous() const
Returns true if user signed in anonymously.
DeleteLastResult
Future< void > DeleteLastResult() const
Get results of the most recent call to Delete.
DisplayName
virtual std::string DisplayName() const
Gets the display name associated with the user, if any.
virtual std::string Email() const
Gets email associated with the user, if any.
EmailVerified
bool EmailVerified() const
Returns true if the email address associated with this user has been verified.
LinkWithCredential
Future< User * > LinkWithCredential( const Credential & credential )
Links the user with the given 3rd party credentials.
For example, a Facebook login access token, a Twitter token/token-secret pair. Status will be an error if the token is invalid, expired, or otherwise not accepted by the server as well as if the given 3rd party user id is already linked with another user account or if the current user is already linked with another id from the same provider.
LinkWithCredentialLastResult
Future< User * > LinkWithCredentialLastResult() const
Get results of the most recent call to LinkWithCredential.
PhotoUrl
virtual std::string PhotoUrl() const
Gets the photo url associated with the user, if any.
ProviderData
const std::vector< UserInfoInterface * > & ProviderData() const
Gets the third party profile data associated with this user returned by the authentication server, if any.
ProviderId
virtual std::string ProviderId() const
Gets the provider ID for the user (For example, "Facebook").
Reauthenticate
Future< void > Reauthenticate( const Credential & credential )
Reauthenticate using a credential.
Some APIs (for example, UpdatePassword, Delete) require that the token used to invoke them be from a recent login attempt. This API takes an existing credential for the user and retrieves fresh tokens, ensuring that the operation can proceed. Developers can call this method prior to calling UpdatePassword() to ensure success.
Returns an error if the existing credential is not for this user or if sign-in with that credential failed. The user should remain signed in even if this method failed. If the developer had held a reference to that user, the reference will continue to be valid after this operation.
ReauthenticateLastResult
Future< void > ReauthenticateLastResult() const
Get results of the most recent call to UpdatePassword.
RefreshToken
std::string RefreshToken() const
Gets the raw refresh token (only for use in advanced scenarios where manually refresh of tokens is required).
Reload
Future< void > Reload()
Refreshes the data for this user.
For example, the attached providers, email address, display name, etc.
ReloadLastResult
Future< void > ReloadLastResult() const
Get results of the most recent call to Reload.
SendEmailVerification
Future< void > SendEmailVerification()
Initiates email verification for the user.
SendEmailVerificationLastResult
Future< void > SendEmailVerificationLastResult() const
Get results of the most recent call to SendEmailVerification.
Token
Future< std::string > Token( bool force_refresh )
The Java Web Token (JWT) that can be used to identify the user to the backend.
If a current ID token is still believed to be valid (i.e. it has not yet expired), that token will be returned immediately. A developer may set the optional forceRefresh flag to get a new ID token, whether or not the existing token has expired. For example, a developer may use this when they have discovered that the token is invalid for some other reason.
TokenLastResult
Future< std::string > TokenLastResult() const
Get results of the most recent call to Token.
UID
virtual std::string UID() const
Gets the unique user ID for the user.
Note:The user's ID, unique to the Firebase project. Do NOT use this value to authenticate with your backend server, if you have one. Use User::Token() instead.
Unlink
Future< User * > Unlink( const char *provider )
Unlinks the current user from the provider specified.
Status will be an error if the user is not linked to the given provider.
UnlinkLastResult
Future< User * > UnlinkLastResult() const
Get results of the most recent call to Unlink.
UpdateEmail
Future< void > UpdateEmail( const char *email )
Sets the email address for the user.
May fail if there is already an email/password-based account for the same email address.
UpdateEmailLastResult
Future< void > UpdateEmailLastResult() const
Get results of the most recent call to UpdateEmail.
UpdatePassword
Future< void > UpdatePassword( const char *password )
Attempts to change the password for the current user.
For an account linked to an Identity Provider (IDP) with no password, this will result in the account becoming an email/password-based account while maintaining the IDP link. May fail if the password is invalid, if there is a conflicting email/password-based account, or if the token has expired. To retrieve fresh tokens, call Reauthenticate.
UpdatePasswordLastResult
Future< void > UpdatePasswordLastResult() const
Get results of the most recent call to UpdatePassword.
UpdateUserProfile
Future< void > UpdateUserProfile( const UserProfile & profile )
Updates a subset of user profile information.
UpdateUserProfileLastResult
Future< void > UpdateUserProfileLastResult() const
Get results of the most recent call to UpdateUserProfile.

