keycloak-service
静的公開メンバ関数 | 全メンバ一覧
org.keycloak.services.resources.admin.permissions.Helper クラス
org.keycloak.services.resources.admin.permissions.Helper 連携図
Collaboration graph

静的公開メンバ関数

static Policy addScopePermission (AuthorizationProvider authz, ResourceServer resourceServer, String name, Resource resource, Scope scope, Policy policy)
 
static Policy addEmptyScopePermission (AuthorizationProvider authz, ResourceServer resourceServer, String name, Resource resource, Scope scope)
 
static Policy createRolePolicy (AuthorizationProvider authz, ResourceServer resourceServer, RoleModel role)
 
static Policy createRolePolicy (AuthorizationProvider authz, ResourceServer resourceServer, RoleModel role, String policyName)
 
static String getRolePolicyName (RoleModel role)
 

詳解

著者
Bill Burke
バージョン
Revision
1

関数詳解

◆ addEmptyScopePermission()

static Policy org.keycloak.services.resources.admin.permissions.Helper.addEmptyScopePermission ( AuthorizationProvider  authz,
ResourceServer  resourceServer,
String  name,
Resource  resource,
Scope  scope 
)
inlinestatic
52  {
53  ScopePermissionRepresentation representation = new ScopePermissionRepresentation();
54 
55  representation.setName(name);
56  representation.setDecisionStrategy(DecisionStrategy.UNANIMOUS);
57  representation.setLogic(Logic.POSITIVE);
58  representation.addResource(resource.getName());
59  representation.addScope(scope.getName());
60 
61  return authz.getStoreFactory().getPolicyStore().create(representation, resourceServer);
62  }

◆ addScopePermission()

static Policy org.keycloak.services.resources.admin.permissions.Helper.addScopePermission ( AuthorizationProvider  authz,
ResourceServer  resourceServer,
String  name,
Resource  resource,
Scope  scope,
Policy  policy 
)
inlinestatic
39  {
40  ScopePermissionRepresentation representation = new ScopePermissionRepresentation();
41 
42  representation.setName(name);
43  representation.setDecisionStrategy(DecisionStrategy.UNANIMOUS);
44  representation.setLogic(Logic.POSITIVE);
45  representation.addResource(resource.getName());
46  representation.addScope(scope.getName());
47  representation.addPolicy(policy.getName());
48 
49  return authz.getStoreFactory().getPolicyStore().create(representation, resourceServer);
50  }

◆ createRolePolicy() [1/2]

static Policy org.keycloak.services.resources.admin.permissions.Helper.createRolePolicy ( AuthorizationProvider  authz,
ResourceServer  resourceServer,
RoleModel  role 
)
inlinestatic
64  {
65  String roleName = getRolePolicyName(role);
66  return createRolePolicy(authz, resourceServer, role, roleName);
67  }
static Policy createRolePolicy(AuthorizationProvider authz, ResourceServer resourceServer, RoleModel role)
Definition: Helper.java:64
static String getRolePolicyName(RoleModel role)
Definition: Helper.java:84

◆ createRolePolicy() [2/2]

static Policy org.keycloak.services.resources.admin.permissions.Helper.createRolePolicy ( AuthorizationProvider  authz,
ResourceServer  resourceServer,
RoleModel  role,
String  policyName 
)
inlinestatic
69  {
70  PolicyRepresentation representation = new PolicyRepresentation();
71 
72  representation.setName(policyName);
73  representation.setType("role");
74  representation.setDecisionStrategy(DecisionStrategy.UNANIMOUS);
75  representation.setLogic(Logic.POSITIVE);
76  String roleValues = "[{\"id\":\"" + role.getId() + "\",\"required\": true}]";
77  Map<String, String> config = new HashMap<>();
78  config.put("roles", roleValues);
79  representation.setConfig(config);
80 
81  return authz.getStoreFactory().getPolicyStore().create(representation, resourceServer);
82  }

◆ getRolePolicyName()

static String org.keycloak.services.resources.admin.permissions.Helper.getRolePolicyName ( RoleModel  role)
inlinestatic
84  {
85  String roleName = "";
86  if (role.getContainer() instanceof ClientModel) {
87  ClientModel client = (ClientModel) role.getContainer();
88  roleName = client.getClientId() + "." + role.getName();
89  } else {
90  roleName = role.getName();
91  }
92  roleName = "role.policy." + roleName;
93  return roleName;
94  }

このクラス詳解は次のファイルから抽出されました: