Files
Memoh/internal/identity/user.go
T
BBQ 06e8619a37 refactor(core): migrate channel identity and binding across app
Align channel identity and bind flow across backend and app-facing layers, including generated swagger artifacts and package lock updates while excluding docs content changes.
2026-02-11 14:51:58 +08:00

21 lines
596 B
Go

package identity
import (
"fmt"
ctr "github.com/memohai/memoh/internal/containerd"
)
// ValidateChannelIdentityID enforces a conservative ID charset for isolation.
func ValidateChannelIdentityID(channelIdentityID string) error {
if channelIdentityID == "" {
return fmt.Errorf("%w: channel identity id required", ctr.ErrInvalidArgument)
}
for _, r := range channelIdentityID {
if !(r == '-' || r == '_' || (r >= 'a' && r <= 'z') || (r >= 'A' && r <= 'Z') || (r >= '0' && r <= '9')) {
return fmt.Errorf("%w: invalid channel identity id", ctr.ErrInvalidArgument)
}
}
return nil
}