✨ Basis perm nodes feature
This commit is contained in:
		@@ -42,10 +42,11 @@ func authFunc(c *fiber.Ctx, overrides ...string) error {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	rtk := c.Cookies(services.CookieRefreshKey)
 | 
			
		||||
	if user, atk, rtk, err := services.Authenticate(token, rtk, 0); err == nil {
 | 
			
		||||
	if user, perms, atk, rtk, err := services.Authenticate(token, rtk, 0); err == nil {
 | 
			
		||||
		if atk != token {
 | 
			
		||||
			services.SetJwtCookieSet(c, atk, rtk)
 | 
			
		||||
		}
 | 
			
		||||
		c.Locals("permissions", perms)
 | 
			
		||||
		c.Locals("principal", user)
 | 
			
		||||
		return nil
 | 
			
		||||
	} else {
 | 
			
		||||
 
 | 
			
		||||
@@ -42,6 +42,7 @@ func listenWebsocket(c *websocket.Conn) {
 | 
			
		||||
			var req struct {
 | 
			
		||||
				RequestID string `json:"request_id"`
 | 
			
		||||
				KeypairID string `json:"keypair_id"`
 | 
			
		||||
				Algorithm string `json:"algorithm"`
 | 
			
		||||
				OwnerID   uint   `json:"owner_id"`
 | 
			
		||||
				Deadline  int64  `json:"deadline"`
 | 
			
		||||
			}
 | 
			
		||||
@@ -49,11 +50,12 @@ func listenWebsocket(c *websocket.Conn) {
 | 
			
		||||
			if len(req.RequestID) <= 0 || len(req.KeypairID) <= 0 || req.OwnerID <= 0 {
 | 
			
		||||
				message = lo.ToPtr(models.UnifiedCommandFromError(fmt.Errorf("invalid request")))
 | 
			
		||||
			}
 | 
			
		||||
			services.KexRequest(c, req.RequestID, req.KeypairID, req.OwnerID, req.Deadline)
 | 
			
		||||
			services.KexRequest(c, req.RequestID, req.KeypairID, req.Algorithm, req.OwnerID, req.Deadline)
 | 
			
		||||
		case "kex.provide":
 | 
			
		||||
			var req struct {
 | 
			
		||||
				RequestID string `json:"request_id"`
 | 
			
		||||
				KeypairID string `json:"keypair_id"`
 | 
			
		||||
				Algorithm string `json:"algorithm"`
 | 
			
		||||
				PublicKey []byte `json:"public_key"`
 | 
			
		||||
			}
 | 
			
		||||
			_ = jsoniter.Unmarshal(payload, &req)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user