MCPcopy Index your code
hub / github.com/rilldata/rill / generateDeviceAndUserCode

Function generateDeviceAndUserCode

admin/auth_code.go:30–49  ·  view source on GitHub ↗

generateDeviceAndUserCode generates a random device code and user code.

()

Source from the content-addressed store, hash-verified

28
29// generateDeviceAndUserCode generates a random device code and user code.
30func generateDeviceAndUserCode() (*database.DeviceAuthCode, error) {
31 // Generate a random 24-byte device code, after base64 encoding it will be 32 characters
32 deviceCodeBytes := make([]byte, 24)
33 _, err := rand.Read(deviceCodeBytes)
34 if err != nil {
35 return nil, err
36 }
37 deviceCode := base64.StdEncoding.EncodeToString(deviceCodeBytes)
38
39 userCode, err := generateUserCode()
40 if err != nil {
41 return nil, err
42 }
43
44 return &database.DeviceAuthCode{
45 DeviceCode: deviceCode,
46 UserCode: userCode,
47 Expiry: time.Now().Add(DeviceAuthCodeTTL),
48 }, nil
49}
50
51func generateUserCode() (string, error) {
52 // Generate an 8-character base 36 user code from the device code

Calls 2

generateUserCodeFunction · 0.85
AddMethod · 0.65