15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 package com.nokia.mj.impl.security.midp.authorization; |
18 package com.nokia.mj.impl.security.midp.authorization; |
19 |
19 |
|
20 import com.nokia.mj.impl.utils.Id; |
20 import com.nokia.mj.impl.utils.Uid; |
21 import com.nokia.mj.impl.utils.Uid; |
21 import com.nokia.mj.impl.utils.exception.InvalidAttributeException; |
22 import com.nokia.mj.impl.utils.exception.InvalidAttributeException; |
22 import com.nokia.mj.impl.security.midp.common.MIDPPermission; |
23 import com.nokia.mj.impl.security.midp.common.MIDPPermission; |
23 import com.nokia.mj.impl.security.midp.common.UserSecuritySettings; |
24 import com.nokia.mj.impl.security.midp.common.UserSecuritySettings; |
24 import com.nokia.mj.impl.security.midp.common.UserSecuritySettingsImpl; |
25 import com.nokia.mj.impl.security.midp.common.UserSecuritySettingsImpl; |
357 { |
358 { |
358 PolicyBasedPermission permission = |
359 PolicyBasedPermission permission = |
359 ((PolicyBasedPermission)grantedPermissions.elementAt(i)); |
360 ((PolicyBasedPermission)grantedPermissions.elementAt(i)); |
360 UserSecuritySettings settings = |
361 UserSecuritySettings settings = |
361 permission.getUserSecuritySettings(); |
362 permission.getUserSecuritySettings(); |
362 if (settings == null) |
363 if (permission.getType() != PolicyBasedPermission.USER_TYPE |
|
364 || settings == null) |
363 { |
365 { |
364 // not a user permission -> move on to the next permission |
366 // not a user permission -> move on to the next permission |
365 Logger.log("Permission " + permission.getName() + " is not a user permission, therefore is is not returned as part of the group of blanket permissions"); |
367 Logger.log("Permission " + permission.getName() + " is not a user permission, therefore is is not returned as part of the group of blanket permissions"); |
366 continue; |
368 continue; |
367 } |
369 } |
454 } |
456 } |
455 // check for sensitive combinations |
457 // check for sensitive combinations |
456 if (permissions_from_sensitive_combination_list_1 |
458 if (permissions_from_sensitive_combination_list_1 |
457 && permissions_from_sensitive_combination_list_2) |
459 && permissions_from_sensitive_combination_list_2) |
458 { |
460 { |
459 String blanketPermissionsDetails = ( |
461 /*String blanketPermissionsDetails = ( |
460 ((call_control == true && multimedia == true) |
462 ((call_control == true && multimedia == true) |
461 || (call_control == true && read_user_data == true) |
463 || (call_control == true && read_user_data == true) |
462 || (net_access == true && multimedia == true) |
464 || (net_access == true && multimedia == true) |
463 || (net_access == true && read_user_data == true) |
465 || (net_access == true && read_user_data == true) |
464 || (messaging == true && multimedia == true) |
466 || (messaging == true && multimedia == true) |
465 || (messaging == true && read_user_data == true)) ? |
467 || (messaging == true && read_user_data == true)) ? |
466 "settings_inst_query_perm_net" : |
468 "settings_inst_query_perm_net" : |
467 "settings_inst_query_perm_sec"); |
469 "settings_inst_query_perm_sec");*/ |
|
470 |
|
471 Id blanketPermissionsDetails = ( |
|
472 ((call_control == true && multimedia == true) |
|
473 || (call_control == true && read_user_data == true) |
|
474 || (net_access == true && multimedia == true) |
|
475 || (net_access == true && read_user_data == true) |
|
476 || (messaging == true && multimedia == true) |
|
477 || (messaging == true && read_user_data == true)) ? |
|
478 new Id("settings_inst_query_perm_net", "N/A") : |
|
479 new Id("settings_inst_query_perm_sec", "N/A")); |
|
480 |
468 iBlanketPermissionsDetails.put(msUidKey, |
481 iBlanketPermissionsDetails.put(msUidKey, |
469 UserSecuritySettingsImpl.getLocalizedString( |
482 UserSecuritySettingsImpl.getLocalizedString( |
470 blanketPermissionsDetails)); |
483 blanketPermissionsDetails)); |
471 } |
484 } |
472 if (blanketPermissions.size() > 0) |
485 if (blanketPermissions.size() > 0) |
584 if (policyPermissions != null) |
597 if (policyPermissions != null) |
585 { |
598 { |
586 for (int i=0; i<policyPermissions.length; i++) |
599 for (int i=0; i<policyPermissions.length; i++) |
587 { |
600 { |
588 if (policyPermissions[i].getType() |
601 if (policyPermissions[i].getType() |
589 == PolicyBasedPermission.ASSIGNED_TYPE) |
602 == PolicyBasedPermission.ASSIGNED_TYPE |
|
603 || policyPermissions[i].getType() |
|
604 == PolicyBasedPermission.USER_ASSIGNED_TYPE) |
590 { |
605 { |
591 PolicyBasedPermissionImpl p1 = new PolicyBasedPermissionImpl( |
606 PolicyBasedPermissionImpl p1 = new PolicyBasedPermissionImpl( |
592 policyPermissions[i]); |
607 policyPermissions[i]); |
593 // add it only if not contained already |
608 // add it only if not contained already |
594 boolean found = false; |
609 boolean found = false; |
607 resolvedPermissions.addElement( |
622 resolvedPermissions.addElement( |
608 new PolicyBasedPermissionImpl( |
623 new PolicyBasedPermissionImpl( |
609 policyPermissions[i].getName(), |
624 policyPermissions[i].getName(), |
610 policyPermissions[i].getTarget(), |
625 policyPermissions[i].getTarget(), |
611 policyPermissions[i].getActionList(), |
626 policyPermissions[i].getActionList(), |
|
627 policyPermissions[i].getType(), |
612 policyPermissions[i].getUserSecuritySettings())); |
628 policyPermissions[i].getUserSecuritySettings())); |
613 } |
629 } |
614 } |
630 } |
615 } |
631 } |
616 } |
632 } |