Giter Club home page Giter Club logo

Comments (5)

casbin-bot avatar casbin-bot commented on June 11, 2024

@tangyang9464 @JalinWang

from casbin.

hsluoyz avatar hsluoyz commented on June 11, 2024

@taksedo what's your question? (what you expect and what you get)

from casbin.

taksedo avatar taksedo commented on June 11, 2024

@hsluoyz as described in first post I need to establish visibility between users depend on their organization.

If they are from the same organization then they shall see each other.

If they are from different organization they shall see each other only if active contract exists.

from casbin.

hsluoyz avatar hsluoyz commented on June 11, 2024

@taksedo I don't think this is an authorization question

from casbin.

taksedo avatar taksedo commented on June 11, 2024

@hsluoyz definition from Wikipedia:

Authorization or authorisation (see spelling differences) is the function of specifying access rights/privileges to resources, which is related to general information security and computer security, and to access control in particular.[1] More formally, "to authorize" is to define an access policy. So I am not agree that is not authorization question.

Morover I find they way with custom function:

// test stab
pub fn is_active_contract_exists(sub_org: ImmutableString, obj_org: ImmutableString) -> bool {
    let orgs_with_contract = ["org::org1".into(), "org::org2".into()];
    orgs_with_contract.contains(&sub_org)
        && orgs_with_contract.contains(&obj_org)
        && sub_org != obj_org
}
[request_definition]
r = sub, act, obj

[policy_definition]
p = obj, act

[policy_effect]
e = some(where (p.eft == allow))

[matchers]
m = \
r.act == p.act && is_active_contract_exists(r.sub.org_name, r.obj.org_name) && r.sub.public_user == "true" || \
r.act == p.act && r.sub.org_name == r.obj.org_name
p, _, action::user-read

Is it the only way to leverage my purpose?

from casbin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.