Package (v2.0.1)

Package user provides a client for App Engine's user authentication service.


func IsAdmin

func IsAdmin(c context.Context) bool

IsAdmin returns true if the current user is signed in and is currently registered as an administrator of the application.

func LoginURL

func LoginURL(c context.Context, dest string) (string, error)

LoginURL returns a URL that, when visited, prompts the user to sign in, then redirects the user to the URL specified by dest.

func LoginURLFederated

func LoginURLFederated(c context.Context, dest, identity string) (string, error)

LoginURLFederated is like LoginURL but accepts a user's OpenID identifier.

func LogoutURL

func LogoutURL(c context.Context, dest string) (string, error)

LogoutURL returns a URL that, when visited, signs the user out, then redirects the user to the URL specified by dest.

func OAuthConsumerKey

func OAuthConsumerKey(c context.Context) (string, error)

OAuthConsumerKey returns the OAuth consumer key provided with the current request. This method will return an error if the OAuth request was invalid.


type User struct {
	Email      string
	AuthDomain string
	Admin      bool

	// ID is the unique permanent ID of the user.
	// It is populated if the Email is associated
	// with a Google account, or empty otherwise.
	ID string

	// ClientID is the ID of the pre-registered client so its identity can be verified.
	// See for more information.
	ClientID string

	FederatedIdentity string
	FederatedProvider string

User represents a user of the application.

func Current

func Current(c context.Context) *User

Current returns the currently logged-in user, or nil if the user is not signed in.

func CurrentOAuth

func CurrentOAuth(c context.Context, scopes string) (*User, error)

CurrentOAuth returns the user associated with the OAuth consumer making this request. If the OAuth consumer did not make a valid OAuth request, or the scopes is non-empty and the current user does not have at least one of the scopes, this method will return an error.

func (*User) String

func (u *User) String() string

String returns a displayable name for the user.