下記の方法はサポート対象外のため、お客様判断となります。ご了承ください。
概要
MCのユーザー権限を設定する方法は、MCにデフォルトで用意されている設定ファイルを編集する方法と、LDAP認証を用いて設定する方法があります。
本ナレッジでは、MCにデフォルトで用意されている設定ファイル(roles.xml)を編集する方法について説明します。
roles.xmlファイルを編集することで、既存のセキュリティグループの権限を編集したり、新たなセキュリティグループを追加することができます。
※既存のセキュリティグループを組み合わせること(複数の権限が付与されます)や、一部の権限のみ付与することもできます。
各権限情報に関しては、本ナレッジの最下部に記載されているドキュメントページ内のファイルを参考にしてください。
●roles.xmlファイルの格納場所
・tomcat環境の場合
{tomcatインストールフォルダ}\webapps\{展開したwarファイル名}\WEB-INF\roles.xml
例:デフォルトのインストールフォルダ、mc.warファイルを展開した場合
C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps\mc\WEB-INF\roles.xml
・非tomcat環境の場合
C:\Users\{ユーザー名}\AppData\Local\Kapow\{バージョン}\Temp\Root\WEB-INF\roles.xml
※バージョンによってフォルダ名称が異なる場合があります。
詳細は以下をナレッジをご確認ください。
参考:各バージョンのインストールフォルダ
●セキュリティグループ(ユーザー権限)の設定内容
各セキュリティグループの設定情報は、下記太字の
<bean class="com.kapowtech.scheduler.client.auth.Roles" id="roles">
</bean>
の間に記載されています。
※下記は、セキュリティグループがAdministratorの設定情報であり、全ての権限が"true"となっています。
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- version of the file, used when upgrading from previous versions -->
<bean class="com.kapowtech.scheduler.server.license.StringBasedVersion" id="rolesVersion">
<property name="fullVersion" value="9.3.0"/>
</bean>
<!-- This file defines the list of application roles user can have.
Roles are mapped to user of a security group, the users permissions are calculated based on the
roles which are mapped to security groups of which the user is a member.
You may modify or additional roles to fit your needs.
-->
<bean class="com.kapowtech.scheduler.client.auth.Roles" id="roles">
<property name="roles">
<list>
<bean class="com.kapowtech.scheduler.client.auth.Role">
<property name="roleName" value="Administrator"/>
<property name="description" value="A role with all priveleges"/>
<property name="permissions">
<bean class="com.kapowtech.scheduler.client.auth.Permissions">
<property name="dashBoardPermissions">
<bean class="com.kapowtech.scheduler.client.auth.DashBoardPermissions">
<property name="viewDashboard" value="true"/>
</bean>
</property>
<property name="schedulesTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.SchedulesTabPermissions">
<property name="viewSchedules" value="true"/>
<property name="editSchedules" value="true"/>
<property name="deleteSchedule" value="true"/>
<property name="startSchedules" value="true"/>
<property name="stopSchedules" value="true"/>
</bean>
</property>
<property name="robotsTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.RobotsTabPermissions">
<property name="viewRobots" value="true"/>
<property name="addRobot" value="true"/>
<property name="deleteRobot" value="true"/>
<property name="downloadRobot" value="true"/>
<property name="runRobot" value="true"/>
<property name="generateAPICode" value="true"/>
</bean>
</property>
<property name="typesTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.TypesTabPermissions">
<property name="viewTypes" value="true"/>
<property name="addType" value="true"/>
<property name="deleteType" value="true"/>
<property name="downloadType" value="true"/>
</bean>
</property>
<property name="snippetsTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.SnippetsTabPermissions">
<property name="viewSnippets" value="true"/>
<property name="addSnippet" value="true"/>
<property name="deleteSnippet" value="true"/>
<property name="downloadSnippet" value="true"/>
</bean>
</property>
<property name="resourcesTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.ResourcesTabPermissions">
<property name="viewResources" value="true"/>
<property name="addResource" value="true"/>
<property name="deleteResource" value="true"/>
<property name="downloadResource" value="true"/>
</bean>
</property>
<property name="OAuthTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.OAuthTabPermissions">
<property name="OAuthTab" value="true"/>
</bean>
</property>
<property name="dataViewPermissions">
<bean class="com.kapowtech.scheduler.client.auth.DataViewPermissions">
<property name="viewData" value="true"/>
<property name="deleteData" value="true"/>
<property name="exportData" value="true"/>
</bean>
</property>
<property name="logTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.LogTabPermissions">
<property name="viewScheduleRunLog" value="true"/>
<property name="deleteScheduleRunLog" value="true"/>
<property name="viewScheduleMessageLog" value="true"/>
<property name="deleteScheduleMessageLog" value="true"/>
<property name="viewServerLog" value="true"/>
<property name="deleteServerMessage" value="true"/>
<property name="viewRobotRunLog" value="true"/>
<property name="deleteRobotRun" value="true"/>
<property name="viewRobotMessageLog" value="true"/>
<property name="deleteRobotMessage" value="true"/>
<property name="viewRobotsLog" value="true"/>
<property name="viewOrphanProjects" value="true"/>
</bean>
</property>
<property name="taskViewTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.TaskViewTabPermissions">
<property name="viewTasks" value="true"/>
<property name="stopTask" value="true"/>
</bean>
</property>
<property name="clustersAndSettingsTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.ClustersAndSettingsTabPermissions">
<property name="view" value="true"/>
<property name="modify" value="true"/>
</bean>
</property>
<property name="projectsTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.ProjectsTabPermissions">
<property name="viewProjects" value="true"/>
<property name="editProject" value="true"/>
<property name="deleteProject" value="true"/>
</bean>
</property>
<property name="appPermissions">
<bean class="com.kapowtech.scheduler.client.auth.AppPermissions">
<property name="kappletUser" value="true"/>
<property name="kappletAdministrator" value="true"/>
</bean>
</property>
<property name="usersTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.UsersTabPermissions">
<property name="view" value="true"/>
<property name="modify" value="true"/>
</bean>
</property>
</bean>
</property>
</bean>
:
</list>
</property>
</bean>
</beans>
注意事項
・本ナレッジの方法はサポート対象外のため、お客様判断となります。ご了承ください。
・実施する際は、元ファイルをバックアップして頂き、有事の際はすぐに戻せる状態でお試し下さい。
作業手順
●既存セキュリティグループの編集方法
1. 「roles.xml」ファイルを、テキストエディタで開く。
2. 編集したいセキュリティグループが記載されている箇所を探し、目的に応じてvalue属性値を変更します。
3. 「roles.xml」ファイルを上書き保存して閉じる。
4. MCを再起動する。
●新たなセキュリティグループの追加方法
※以下は「BizRoboUser」というセキュリティグループを追加する例です。
1. 「roles.xml」ファイルを、テキストエディタで開く。
2.<list>の次行に、下記の情報を追記する。
※<権限内容>には設定したい権限を記載してください。なお、設定していないpropertyはvalue="false"と認識されます。
<bean class="com.kapowtech.scheduler.client.auth.Role">
<property name="roleName" value="BizRoboUser"/>
<権限内容>
</property>
</bean>
3. 「roles.xml」ファイルを上書き保存して閉じる。
4.MCを再起動する。
追加した権限は既存の権限と同じく、「新しいプロジェクト(New Project)」ダイアログや「プロジェクトの編集(Edit)」ダイアログの「権限(Permissions)」タブ>「プロジェクトロール(Project Role)」列のプルダウンから選択できます。
以下は「ロボットの実行(スケジュール、Kapplet)」「実行中のロボット参照」「実行中のロボットのみ削除」を可能にしたい場合の権限内容の記載例です。参考にしてください。
<権限内容>の記載例
<property name="description" value="A role with all priveleges"/>
<property name="permissions">
<bean class="com.kapowtech.scheduler.client.auth.Permissions">
<property name="schedulesTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.SchedulesTabPermissions">
<property name="viewSchedules" value="true"/>
<property name="editSchedules" value="true"/>
<property name="deleteSchedule" value="false"/>
<property name="startSchedules" value="true"/>
<property name="stopSchedules" value="true"/>
</bean>
</property>
<property name="taskViewTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.TaskViewTabPermissions">
<property name="viewTasks" value="true"/>
<property name="stopTask" value="true"/>
</bean>
</property>
<property name="clustersAndSettingsTabPermissions">
<bean class="com.kapowtech.scheduler.client.auth.ClustersAndSettingsTabPermissions">
<property name="view" value="true"/>
<property name="modify" value="false"/>
</bean>
</property>
<property name="appPermissions">
<bean class="com.kapowtech.scheduler.client.auth.AppPermissions">
<property name="kappletUser" value="true"/>
<property name="kappletAdministrator" value="false"/>
</bean>
</property>
</bean>
参考
- Management Consoleユーザー権限情報【v10.4】
- Management Consoleユーザー権限情報【v10.7】
- Management Consoleユーザー権限情報【v11.x】
- Kappletのschedule runの表示/非表示を切り替える方法
区分 | 確認Ver |
手順 | 10.4.0.4 |