2018-12-24 17:45:15 +00:00
|
|
|
/*
|
2022-11-11 04:49:16 +00:00
|
|
|
* Copyright © 2018 Musing Studio LLC.
|
2018-12-24 17:45:15 +00:00
|
|
|
*
|
|
|
|
* This file is part of WriteFreely.
|
|
|
|
*
|
|
|
|
* WriteFreely is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU Affero General Public License, included
|
|
|
|
* in the LICENSE file in this source code package.
|
|
|
|
*/
|
2018-12-31 06:05:26 +00:00
|
|
|
|
2018-11-08 06:31:01 +00:00
|
|
|
package writefreely
|
|
|
|
|
|
|
|
// AuthenticateUser ensures a user with the given accessToken is valid. Call
|
|
|
|
// it before any operations that require authentication or optionally associate
|
|
|
|
// data with a user account.
|
|
|
|
// Returns an error if the given accessToken is invalid. Otherwise the
|
|
|
|
// associated user ID is returned.
|
|
|
|
func AuthenticateUser(db writestore, accessToken string) (int64, error) {
|
|
|
|
if accessToken == "" {
|
|
|
|
return 0, ErrNoAccessToken
|
|
|
|
}
|
|
|
|
userID := db.GetUserID(accessToken)
|
|
|
|
if userID == -1 {
|
|
|
|
return 0, ErrBadAccessToken
|
|
|
|
}
|
|
|
|
|
|
|
|
return userID, nil
|
|
|
|
}
|