[{"data":1,"prerenderedAt":190},["ShallowReactive",2],{"project-30515346":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":39,"post_text":41,"what":42,"said":73,"maker_in_thread":115,"shape":123,"grid":124,"attempts":151,"same_week":152,"maker_shows":116,"maker_hidden":182,"reader_version":183,"card":184},"30515346","Aserto playground","RBAC for your REST API in 2 minutes","title","Show HN: RBAC for your REST API in 2 minutes","https:\u002F\u002Fwww.aserto.com\u002Fplayground","aserto.com","ogazitt",1646148686,2022,21,12,1460,2570,57,"shown","security_privacy","authorization policy","web_app",[24,25,26,27,28],"rbac","open policy agent","rego","openapi","authorization","curious",0.048,{"positive":32,"neutral":33,"mixed":34,"critical":34},1,5,0,6,{"design":37,"idea":38},{"positive":34,"critical":34},{"positive":32,"critical":34},[34,34,34,34,40,40,40,34,33,40,40,34],3,null,{"problem":43,"audience":50,"pricing":41,"motivation":55,"time_to_build":41,"stack":59,"openness":72,"stage":72,"team_size":72},{"value":44,"source":45,"evidence":46},"Teams must build authorization from scratch for their REST APIs","maker",[47],{"id":48,"by":11,"text":49},"30515354","Authorization is a must-have for every application, but most teams have to build it from scratch. The Open Policy Agent [0] is a good place to start for creating an OSS-based…",{"value":51,"source":52,"evidence":53},"Teams building REST APIs that need role-based access control","inferred",[54],{"id":48,"by":11,"text":49},{"value":56,"source":45,"evidence":57},"Authorization is a must-have but most teams build it from scratch",[58],{"id":48,"by":11,"text":49},[60,64],{"value":61,"source":45,"evidence":62},"Open Policy Agent (OPA)",[63],{"id":48,"by":11,"text":49},{"value":65,"source":66,"evidence":67},"Rego","commenter",[68],{"id":69,"by":70,"text":71},"30515802","itsronenh","So this is basically a tool for generating and testing Rego policies from an OpenAPI spec. Very cool!","unknown",{"praise":74,"objections":86,"requests":87,"questions":94,"alternatives":111},[75,79],{"value":76,"source":66,"evidence":77},"Seen as a useful tool for generating and testing Rego policies from OpenAPI",[78],{"id":69,"by":70,"text":71},{"value":80,"source":66,"evidence":81},"Thread discussion quality praised",[82],{"id":83,"by":84,"text":85},"30518221","yodon","Thanks for the link to that post - unusually good discussion on that page (even for HN)",[],[88],{"value":89,"source":66,"evidence":90},"Support for Dapr sidecars",[91],{"id":92,"by":84,"text":93},"30518180","Does your k8s sidecar approach work with https:\u002F\u002Fdapr.io sidecars?",[95,104],{"value":96,"source":66,"evidence":97},"Whether package names must match API routes and whether one policy can cover multiple endpoints",[98,101],{"id":99,"by":70,"text":100},"30515656","Do package names have to match API routes? Can I create a policy that is shared by multiple endpoints?",{"id":102,"by":11,"text":103},"30515731","By convention, we generate a package for every API definition in the OpenAPI spec. But the calling application can decide which package to use when authorizing an operation, so…",{"value":105,"source":66,"evidence":106},"What can be done with policies created in the playground",[107],{"id":108,"by":109,"text":110},"30515717","rschwabco","What can I do with policies I create in this playground?",[112],{"value":61,"source":45,"evidence":113},[114],{"id":48,"by":11,"text":49},{"comments":116,"answered":40,"key":117},4,[118,121,122],{"id":119,"text":120},"30515934","This was meant to be a \"Show\" of an unauthenticated experience (i.e. no account required) for creating OPA policies, different than the thread you referenced (which linked a…",{"id":48,"text":49},{"id":102,"text":103},{"commenters":35,"max_depth":40,"maker_replies":116,"first_comment_mins":32,"lifespan_hours":40},[125,129,131,133,135,138,141,143,144,145,147,148],[126,34,34,127,128,34],"30515666","commenter\u002Fneutral\u002Fnone","troydavis",[119,34,34,130,11,32],"project\u002Fneutral\u002Fidea",[83,34,34,132,84,34],"other\u002Fpositive\u002Fnone",[48,32,34,134,11,32],"project\u002Fpositive\u002Fidea",[99,136,40,137,70,34],2,"project\u002Fneutral\u002Fdesign",[139,136,40,137,140,34],"30515673","gertd",[142,136,40,137,140,34],"30515703",[102,136,34,137,11,32],[69,136,33,134,70,34],[92,40,40,146,84,34],"project\u002Fneutral\u002Fnone",[108,116,40,130,109,34],[149,116,34,150,11,32],"30515789","project\u002Fneutral\u002Fdocs",[],[153,158,163,168,172,177],{"id":154,"name":155,"points":156,"category":157},"30517626","Almost Pong",1135,"games",{"id":159,"name":160,"points":161,"category":162},"30503197","booqsi.com",478,"consumer_social",{"id":164,"name":165,"points":166,"category":167},"30529262","Huemint",335,"creative",{"id":169,"name":170,"points":171,"category":162},"30489003","Messages for Macintosh",211,{"id":173,"name":174,"points":175,"category":176},"30457900","Programming Time",203,"learning_science",{"id":178,"name":179,"points":180,"category":181},"30531621","WAPM",186,"dev_tools",false,"v2",{"id":185,"name":5,"line":6,"ai":182,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":186,"top":18,"kw":187,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":188,"url":9,"mix":189,"praise":76,"objection":-1,"sub":21},30515346,0.05,[24,25,26,27,28],"000033305330",[32,33,34,34],1794036617555]