Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
feb700f3
Commit
feb700f3
authored
Dec 19, 2023
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: clear access token when user not found
parent
5334fdf1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
0 deletions
+18
-0
auth_service.go
api/v2/auth_service.go
+18
-0
No files found.
api/v2/auth_service.go
View file @
feb700f3
...
...
@@ -2,10 +2,15 @@ package v2
import
(
"context"
"fmt"
"github.com/pkg/errors"
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/metadata"
"google.golang.org/grpc/status"
"github.com/usememos/memos/api/auth"
apiv2pb
"github.com/usememos/memos/proto/gen/api/v2"
)
...
...
@@ -15,9 +20,22 @@ func (s *APIV2Service) GetAuthStatus(ctx context.Context, _ *apiv2pb.GetAuthStat
return
nil
,
status
.
Errorf
(
codes
.
Unauthenticated
,
"failed to get current user: %v"
,
err
)
}
if
user
==
nil
{
// Set the cookie header to expire access token.
if
err
:=
clearAccessTokenCookie
(
ctx
);
err
!=
nil
{
return
nil
,
status
.
Errorf
(
codes
.
Internal
,
"failed to set grpc header"
)
}
return
nil
,
status
.
Errorf
(
codes
.
Unauthenticated
,
"user not found"
)
}
return
&
apiv2pb
.
GetAuthStatusResponse
{
User
:
convertUserFromStore
(
user
),
},
nil
}
func
clearAccessTokenCookie
(
ctx
context
.
Context
)
error
{
if
err
:=
grpc
.
SetHeader
(
ctx
,
metadata
.
New
(
map
[
string
]
string
{
"Set-Cookie"
:
fmt
.
Sprintf
(
"%s=; Path=/; Expires=Thu, 01 Jan 1970 00:00:00 GMT; HttpOnly; SameSite=Strict"
,
auth
.
AccessTokenCookieName
),
}));
err
!=
nil
{
return
errors
.
Wrap
(
err
,
"failed to set grpc header"
)
}
return
nil
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment