Is it possible with the GO sdk to lookup all resou...
# spicedb
m
Is it possible with the GO sdk to lookup all resources of a specific type for a specific subject? Or is it only possible to lookup the specific subject->pemrission->resource/tpye/id)? For example, the following func queries a specific subject->permission->resource(type/id). But would it be possible to have a wildcard for resource/objectID and Permission?
Copy code
go
func lookupSubject(client *authzed.Client) {

    /*
        looked_up_at:{token:"GgYKBENMNEc="}  subject_object_id:"laura"  permissionship:LOOKUP_PERMISSIONSHIP_HAS_PERMISSION  subject:{subject_object_id:"laura"  permissionship:LOOKUP_PERMISSIONSHIP_HAS_PERMISSION}
        looked_up_at:{token:"GgYKBENMNEc="}  subject_object_id:"mbecker"  permissionship:LOOKUP_PERMISSIONSHIP_HAS_PERMISSION  subject:{subject_object_id:"mbecker"  permissionship:LOOKUP_PERMISSIONSHIP_HAS_PERMISSION}
    */

    fmt.Println("--- Lookup Resources ---")

    request := &pb.LookupSubjectsRequest{
        Resource:          &pb.ObjectReference{ObjectType: "post", ObjectId: "3"},
        Permission:        "read",
        SubjectObjectType: "user",
    }

    resp, err := client.LookupSubjects(context.Background(), request)
    if err != nil {
        fmt.Printf("error lookup subjects: %+v\n", err)
        return
    }

    for {
        a, err := resp.Recv()
        if err != nil {
            fmt.Printf("error recv: %+v\n", err)
            return
        }
        fmt.Printf("%+v\n", a)
    }
}
`
11 Views