Hi All,

 SRM(Secure Resource Manager) hosts Security resources in Iotivity's RI layer
 which are currently registered as 'Non-discoverable'. Below were the primary
 reasons to make them non-discoverable:

 1) SRM hosts multiple Secure Virtual Resources (SVR), such as, /oic/sec/acl,
 /oic/sec/cred, /oic/sec/doxm, /oic/sec/svc etc. Every time a device responds
 to discovery request, including all these SVR's in discovery response would
 inflate the payload size for response packet.

 2) SVR's are mainly used by SRM module to enforce data authentication and
 encryption within Iotivity ecosystem. A client who wants to discover
 'interesting' resources, such as, fan, garage door, lights has no use of SVR
 resources in discovery response.

 BUT, security enforcement tools like Provisioning tool, Access Manager
 Service etc does need to discover SVR's for execution.

In light of above requirements, does it make sense to add a 'resource
property' such as EXPLICIT_DISCOVERABLE ?

When RI layer receives a resource discovery request, it will include
EXPLICIT_DISCOVERABLE resources only if a resource filter is associated
to the discovery query.
Ex:
GET /oic/res will generate a discovery response with all the DISCOVERABLE
resources.i.e. /foo/light, /bar/fan etc

GET /oic/res?rt=oic.sec.acl will generate a discovery response with
EXPLICIT_DISCOVERABLE resources only if they qualify the query filter.
i.e. /oic/sec/acl etc.

Any feedback, comments or better suggestions are highly appreciated.

Thanks
Sachin

Reply via email to