source: examples/access_tests/creddy_prover/s2_run_query @ 2e9455f

mei_rt2
Last change on this file since 2e9455f was 2e9455f, checked in by Mei <mei@…>, 11 years ago

1) added namespace
2) tweak ?This,
3) allowing linking role/oset as constraining conditions
4) adding access_tests regression testing that uses GENI's access policy
5) added couple multi contexts regression tests
6) add compression/uncompression calls to abac_encode_string/abac_decode_string
(libstrongwan only allows 512 char for attribute rule storage)
7) add attribute_now option to creddy that takes a whole char string for attribute
rule

  • Property mode set to 100755
File size: 1.9 KB
Line 
1#!/bin/sh
2
3# geni s2_run_query
4# using aba_prover_yap
5
6echo "=====================s2_run_query=================="
7
8pwd=`pwd`
9
10eloc=`which abac_prover_yap | sed 's/\/abac_prover_yap//'`
11if [ "$eloc" = "" ]; then
12  echo "ERROR: abac_prover_yap is not in the search path!!!"
13  exit 1
14fi
15
16keyloc=$pwd
17
18g=`creddy --keyid --cert $keyloc/G_ID.pem`
19pa=`creddy --keyid --cert $keyloc/PA_ID.pem`
20sa=`creddy --keyid --cert $keyloc/SA_ID.pem`
21
22drd=`creddy --keyid --cert $keyloc/Drd_ID.pem`
23frank=`creddy --keyid --cert $keyloc/Frank_ID.pem`
24dan=`creddy --keyid --cert $keyloc/Dan_ID.pem`
25jim=`creddy --keyid --cert $keyloc/Jim_ID.pem`
26nancy=`creddy --keyid --cert $keyloc/Nancy_ID.pem`
27lisa=`creddy --keyid --cert $keyloc/Lisa_ID.pem`
28cary=`creddy --keyid --cert $keyloc/Cary_ID.pem`
29alice=`creddy --keyid --cert $keyloc/Alice_ID.pem`
30
31## dump all credentials
32env ABAC_CN=1 $eloc/abac_prover_yap  --keystore $keyloc --dump s2_creds_dump
33
34#  runMember Cary $cary good bad
35runMember() {
36   id=$2 
37   proj="'$3'"
38   role="[keyid:$pa].role:member_([string:$proj])"
39   prin="[keyid:$id]"
40   echo " "
41   echo "===$4============ PA.member_($3)<-?-$1"
42   $eloc/abac_prover_yap --keystore $keyloc --role "$role" --principal "$prin"
43
44   role="[keyid:$pa].role:member([string:$proj])"
45   prin="[keyid:$id]"
46   echo " "
47   echo "===$5============ PA.member("$3")<-?-$1"
48   $eloc/abac_prover_yap --keystore $keyloc --role "$role" --principal "$prin"
49}
50
51
52## PA.member_("proj1") <- Cary
53#[keyid:PA].role:member_([string:'proj1']) <-?- [keyid:Cary]
54## PA.member("proj1") <- Cary
55#[keyid:PA].role:member([string:'proj1']) <-?- [keyid:Cary]
56
57runMember Frank $frank proj1 bad good
58runMember Dan $dan proj1 good good
59runMember Dan $dan proj2 good good
60runMember Jim $jim proj1 bad good
61runMember Nancy $nancy proj1 good good
62runMember Lisa $lisa proj1 bad good
63runMember Cary $cary proj1 bad good
64runMember Alice $alice proj1 good good
65runMember Drd $drd proj1 good good
66
67echo "\n\n"
Note: See TracBrowser for help on using the repository browser.