✨ New login alert
This commit is contained in:
parent
974c5d9700
commit
8e3ce09734
3
.idea/workspace.xml
generated
3
.idea/workspace.xml
generated
@ -5,7 +5,8 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="3fefb2c4-b6f9-466b-a523-53352e8d6f95" name="更改" comment=":sparkles: More event logs point">
|
<list default="true" id="3fefb2c4-b6f9-466b-a523-53352e8d6f95" name="更改" comment=":sparkles: More event logs point">
|
||||||
<change beforePath="$PROJECT_DIR$/pkg/internal/server/api/sign_api.go" beforeDir="false" afterPath="$PROJECT_DIR$/pkg/internal/server/api/sign_api.go" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/pkg/internal/services/ticket.go" beforeDir="false" afterPath="$PROJECT_DIR$/pkg/internal/services/ticket.go" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
@ -2,6 +2,7 @@ package services
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"gorm.io/datatypes"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/rs/zerolog/log"
|
"github.com/rs/zerolog/log"
|
||||||
@ -124,6 +125,20 @@ func ActiveTicket(ticket models.AuthTicket) (models.AuthTicket, error) {
|
|||||||
|
|
||||||
if err := database.C.Save(&ticket).Error; err != nil {
|
if err := database.C.Save(&ticket).Error; err != nil {
|
||||||
return ticket, err
|
return ticket, err
|
||||||
|
} else {
|
||||||
|
_ = NewNotification(models.Notification{
|
||||||
|
Topic: "passport.security.alert",
|
||||||
|
Title: "New sign in alert",
|
||||||
|
Subtitle: lo.ToPtr(fmt.Sprintf("New sign in from %s", ticket.IpAddress)),
|
||||||
|
Body: fmt.Sprintf("Your account just got a new sign in from %s. Make sure you recongize this device, or sign out it immediately and reset password.", ticket.IpAddress),
|
||||||
|
Metadata: datatypes.JSONMap{
|
||||||
|
"ip_address": ticket.IpAddress,
|
||||||
|
"created_at": ticket.CreatedAt,
|
||||||
|
"available_at": ticket.AvailableAt,
|
||||||
|
},
|
||||||
|
AccountID: ticket.AccountID,
|
||||||
|
IsForcePush: true,
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
return ticket, nil
|
return ticket, nil
|
||||||
|
Loading…
Reference in New Issue
Block a user