WICG / WebApiDevice

This repository contains the data related to the new proposed Web API -- Managed Device Web API.
Other
17 stars 9 forks source link

AnnotatedAssetId, AnnotatedLocation, and DirectoryId are loosely defined #11

Open 9072997 opened 3 years ago

9072997 commented 3 years ago

AnnotatedAssetId is said to be administrator-defined. If it's use is organization specific, the same thing could be achieved by the administrator just putting this information in the device config using the proposed Managed Configuration API. The only case I can see for it being given special treatment is that an application might be written for use in multiple organizations which needs a unique identifier (AssetId is defined by the explainer to be unique within the organization). For this use case though, I would imagine most applications would use SerialNumber.

Would AnnotatedLocation refer to a device's physicaly assigned location or logical location (such as department)? What if an administrator wanted both pieces of information available to their application? They would have to stick one of them in the general config section, so why not just put both there to begin with?

Why can getAnnotatedAssetId, getAnnotatedLocation, and getHostname all resolve to undefined while getDirectoryId cannot? An organization might use 0 or multiple inventory management systems which might use 1 or more unique identifiers to track devices. Would it not make more sense to allow an administrator to set as many unique identifiers as they wanted under whatever names they wanted using the general Managed Configuration API?

I suppose that my general issue is that the Device Attributes Web API is very Google-Admin-ey. It might be worth considering more of an ldap-style approach and let different implementations decide what attributes make sense. For example, Google Admin managed devices might always have a 'DirectoryId' config key set, but IMO this should not be part of the spec.

Thanks for the great work.

sbykov-g commented 1 year ago

Regarding "using the proposed Managed Configuration API". I've recently added a 'Design considerations' section that explains that Managed configuration is set as an application setting, meaning that it is the same config received by all devices in some organisational unit that host this application. On the other hand device attributes (e.g. AnnotatedAssetId) can be set uniquely per device (as a device setting).

AnnotatedLocation may refer to any (physical or logical) location. Same reason for not using managed config as above.

I'm adding a bullet point that directory ID can also resolve as undefined.