Beispiel #1
0
def test_srv2():
    cc = ClaimsClient(client_id="client_1")
    cc.client_secret = "hemlig"

    req = cc.construct_UserClaimsRequest(
        request_args={
            "sub": "diana",
            "claims_names": ["gender", "birthdate"]
        })

    srv = ClaimsServer("pyoicserv",
                       SessionDB(),
                       CDB,
                       USERINFO,
                       verify_client,
                       keyjar=KEYJAR,
                       dist_claims_mode=ClaimsMode(USER2MODE))

    srv.keyjar[""] = keybundle_from_local_file("rsa.key", "rsa",
                                               ["ver", "sig"])

    assert srv

    resp = srv.claims_endpoint(req.to_urlencoded(), "")

    print resp.message

    ucr = UserClaimsResponse().deserialize(resp.message, "json")
    ucr.verify(keyjar=srv.keyjar)

    print ucr
    assert _eq(ucr["claims_names"], ["gender", "birthdate"])
    assert "jwt" in ucr
Beispiel #2
0
 def create_claims_server(self, keyjar, session_db):
     self.srv = ClaimsServer("pyoicserv",
                             session_db,
                             TestClaimsServer.CDB,
                             UserInfo(USERDB),
                             verify_client,
                             keyjar=keyjar,
                             dist_claims_mode=ClaimsMode(
                                 TestClaimsServer.USER2MODE))
Beispiel #3
0
 def create_claims_server(self, keyjar):
     self.srv = ClaimsServer("pyoicserv",
                             SessionDB("https://example.com"),
                             TestClaimsServer.CDB,
                             UserInfo(USERDB),
                             verify_client,
                             keyjar=keyjar,
                             dist_claims_mode=ClaimsMode(
                                 TestClaimsServer.USER2MODE))
Beispiel #4
0
def test_claims_for_user():
    user = "******"
    user2mode = {user: "******"}
    claims_mode = ClaimsMode(user2mode)

    assert claims_mode.aggregate(user)
Beispiel #5
0
def test_non_aggregate_claims():
    user = "******"
    claims_mode = ClaimsMode({user: "******"})

    assert not claims_mode.aggregate(user)
Beispiel #6
0
def test_claims_for_missing_user():
    claims_mode = ClaimsMode({})

    assert not claims_mode.aggregate("nobody")