aboutsummaryrefslogtreecommitdiffhomepage
path: root/backend/auth/fortee/fortee.go
diff options
context:
space:
mode:
Diffstat (limited to 'backend/auth/fortee/fortee.go')
-rw-r--r--backend/auth/fortee/fortee.go18
1 files changed, 11 insertions, 7 deletions
diff --git a/backend/auth/fortee/fortee.go b/backend/auth/fortee/fortee.go
index 7f9d816..25ca9c5 100644
--- a/backend/auth/fortee/fortee.go
+++ b/backend/auth/fortee/fortee.go
@@ -14,25 +14,29 @@ var (
ErrLoginFailed = errors.New("fortee login failed")
)
-func LoginFortee(ctx context.Context, username string, password string) error {
+func LoginFortee(ctx context.Context, username string, password string) (string, error) {
client, err := NewClientWithResponses(apiEndpoint, WithRequestEditorFn(addAcceptHeader))
if err != nil {
- return err
+ return "", err
}
res, err := client.PostLoginWithFormdataBodyWithResponse(ctx, PostLoginFormdataRequestBody{
Username: username,
Password: password,
})
if err != nil {
- return err
+ return "", err
}
if res.StatusCode() != http.StatusOK {
- return ErrLoginFailed
+ return "", ErrLoginFailed
}
- if !res.JSON200.LoggedIn {
- return ErrLoginFailed
+ resOk := res.JSON200
+ if !resOk.LoggedIn {
+ return "", ErrLoginFailed
}
- return nil
+ if resOk.User == nil {
+ return "", ErrLoginFailed
+ }
+ return resOk.User.Username, nil
}
// fortee API denies requests without Accept header.