'Return an identifier for the specified resource.
:param cnxt: RPC context.
:param physical_resource_id: The physical resource ID to look up.'

@context.request_context
def find_physical_resource(self, cnxt, physical_resource_id):

    rsrcs = resource_objects.Resource.get_all_by_physical_resource_id(cnxt, physical_resource_id)
    if (not rsrcs):
        raise exception.EntityNotFound(entity='Resource', name=physical_resource_id)
    if (len({rs.stack_id for rs in rsrcs}) > 1):
        raise exception.PhysicalResourceIDAmbiguity(phys_id=physical_resource_id)
    rs = rsrcs[0]
    stack = parser.Stack.load(cnxt, stack_id=rs.stack_id)
    resource = stack[rs.name]
    return dict(resource.identifier())
