18
7

More than 3 years have passed since last update.

[SAP] S/4HANA 1909 SAP_ALLプロファイルから全照会権限ロールを作った

Last updated at Posted at 2020-08-14

はじめに

この記事は chillSAP 夏の自由研究2020 の記事として執筆しています。

SAPシステムを運用していく上で本番環境にあってほしいSAP全機能の照会ONLY権限。全機能を実行可能なSAP_ALLという権限プロファイルは有名ですが、それでは登録・更新・削除・実行・etcと何でもできてしまいます。そうじゃなくて欲しいのはただ照会のみの権限プロファイル。ところがそういったものが見当たりません。ググってもACTVT=03でどや!程度しか見つからない始末。
じゃあひとつ権限ロールとして作ってみよう、というのがこの記事です。

この記事で書かれていること

SAP_ALLプロファイルをもとに作成した照会権限ロールの設定内容の考え方・作り方・権限ロールの実物です。
作成環境はS/4HANA 1909 FP02(2020/05リリース)です。

対象読者

メインターゲットは「SAP_ALLの照会権限とかググってもACTVT=03にしろとしか出てこなくて、そーじゃないんだよなぁ」と考えているベーシス系コンサルタントの方々です。ただ照会権限のACTVTに何を与えたのかは業務系の権限ロールにも跳ねる内容なので業務系のコンサルタント・エンジニアにとっては参考になると考えています。

SAP権限の作成方法

標準機能で作るとマウスでポチポチ。1000をゆうに超える権限項目に対してポチポチ。。。
コンサルタントは体力勝負なところもありますが、これではさすがに腱鞘炎になります。
そう、SAP権限はホワイトリストを作成するが如く、許可する権限(技術的には権限オブジェクトと呼びます)を一つずつ付与していきます。また個々の要件に合わせて各権限オブジェクト配下にあるできることの詳細(権限項目と各項目の権限値)を設定します。

筆者がこんな記事を出そうと思った理由

昔、この記事で書かれている手順を知らずにマウスでポチポチやって腱鞘炎になったからです。
知ってる・知らずでは身体への負担が大違い。ベーシス系で権限触る人は絶対マスターしたほうが良いのに、自分の周りで知らない人が多かったのです。

SAPのアクティビティ権限項目(ACTVT)の値一覧

下表はS/4HANA 1909 FP02における各機能の操作に関わる権限値です。
「照会権限へ設定してよい値」は、責任取れないのですが(笑)「X」の入っている値を使います。
ぜひ参考にしてみて下さい。
いわゆる「03(照会)」だけでは照会権限と称するには足りず、変更文書やアーカイブ情報など参照できません。辛いですね。

アクティビティ(技術名称) テキスト(英語) テキスト(日本語) 照会権限へ設定してよい値
01 Add or Create 追加または登録
02 Change 変更
03 Display 照会 X
04 Print, edit messages 印刷、メッセージ編集
05 Lock ロック
06 Delete 削除
07 Activate, generate 有効化、生成
08 Display change documents 変更文書照会 X
09 Display prices 価格照会 X
0A Check Documents for Process プロセスの文書のチェック
0B Status Change in Substitute 代理ユーザのステータス変更
10 Post 転記
11 Change number range status 番号範囲ステータス変更
12 Maint.and gen.change document 変更伝票の更新および生成
13 Initialize number levels 番号レベル初期化
14 Field select.:Generate screen 項目選択: 画面生成
15 Field select.:Assign table 項目選択: テーブル割当
16 Execute 実行
17 Maintain number range object 番号範囲オブジェクト更新
18 Deliveries from coll. proc. 一括出荷処理
19 Invoices from coll. proc 一括請求処理
20 Transport without translation 翻訳なしで移送
21 Transport 移送
22 Enter, Include, Assign 入力、取込、割当
23 Maintain 更新
24 Archive アーカイブ
25 Reload リロード
26 Change customer account group 得意先勘定グループ変更
27 Display totals records 全レコード照会 X
28 Display line items 明細照会 X
29 Display saved data 保存済データ照会 X
30 Determine 設定
31 Confirm 確認
32 Save 保存
33 Read 読込 X
34 Write 書込
35 Output 出力
36 Extended maintenance 拡張更新
37 Accept 受入
38 Perform 実行
39 Check チェック
40 Create in DB DB に登録
41 Delete in DB DB から削除
42 Convert to DB DB に変換
43 Release リリース
44 Flag フラグ
45 Allow 許可
46 Merge マージ
47 Borrow 借用
48 Simulate シミュレーション
49 Request 依頼
50 Move 移動
51 Initialize 初期化
52 Change application start アプリケーション開始変更
53 Display application start アプリケーション開始照会 X
54 Display application archive アプリケーションアーカイブ照会 X
55 Change application archive アプリケーションアーカイブ変更
56 Display archive アーカイブ照会 X
57 Save archive アーカイブ保存
58 Display takeover 引継ぎ照会 X
59 Distribute 配信
60 Import インポート
61 Export エクスポート
62 Create automatic Ledger 自動元帳作成
63 Activate 有効化
64 Generate 生成
65 Reorganize 再編成
66 Refresh リフレッシュ
67 Translate 翻訳
68 Model モデル
69 Discard 破棄
70 Administer 管理者
71 Analyze 分析
72 Plan 計画
73 Execute Digital Signature デジタル署名実行
74 Revoke approval 承認取消
75 Remove 解除
76 Enter 入力
77 Pre-enter 事前入力
78 Assign 割当
79 Assign Role to Composite Role 集合ロールへのロールの割当
80 Print 印刷
81 Schedule 計画
82 Supplement 補足
83 Counterconfirm 取引先確認
84 Settle 決済
85 Reverse 取消
86 Rebook 再予約
87 Return リターン
88 Perform 実行
89 Force Posting 強制転記
90 Copy コピー
91 Reactivate 再有効化
92 Create from Template テンプレートから登録
93 Calculate 計算
94 Override 上書き
95 Unlock ロック解除
96 Reject 却下
97 Set 設定
98 Mark for release リリースマーク
99 Create Invoice List 請求書一覧登録
A0 Receive 受信
A1 Accrue 利子
A2 Pay 支払
A3 Change status ステータス変更
A4 Resubmit 再実行
A5 Display reports レポート照会 X
A6 Read with filter フィルタによる読込み X
A7 Write with filter フィルタによる書込み
A8 Process mass data プロセス一括データ
A9 Send 送信
AA Print Again 再印刷
AB Settle 決済
AC Change Outbound Status 送信ステータス変更
AD Change Inbound Status 受信ステータス変更
AE Change User-Defined ユーザ定義の変更
AF Prompts プロンプト
AG Record
AM
B1 Display permitted values 有効値表示 X
B2 Complete Technically 技術的完了
B3 Derive 派生
B4 Deactivate 無効化
B5 Display History 履歴照会 X
B6 Create File ファイル登録
B8 Execute Again 再実行
B9 Post Parked Document 未転記伝票の転記
BD Maintain obj. in non-OwnerSys. 非 OwnerSys のオブジェクト更新
BE IMG projection IMG 計画立案
C1 Maintenance of payment cards 支払カード更新
C2 Display of payment cards 支払カード表示 X
C3 Maintenance of manual auth. マニュアル権限更新
C4 Close Out 処分
C5 Reopen 再開
C6
C8 Confirm change 変更確認
CA Create Ad Hoc Event アドホックイベント登録
CD Change Drug 薬品変更
CN
CO Complete 完了
CP Change Planned Total Dose 計画総投与量の変更
CS Change Cash Flow Status キャッシュフローステータス変更
D1 Copy コピー
D3 Detailed Display 詳細表示 X
D4 Fulfill 履行
D5 Process プロセス
D6 Cancel 中止
D7 Create AGR AGR 登録
D8 Complete 完了
D9 Exit 終了
DD Delete Draft ドラフト削除
DE
DF
DG Change Goal Contribution 個別目標値変更
DI Change Incentive インセンティブ変更
DL Download ダウンロード
DP Delete plan プラン削除
DR Rel. frm Rej. When Elig. Fail 適格時の却下からのリリース失敗
E0 Save extract 抽出保存
E6 Delete own extracts 自分の抽出削除
E7 Delete external extracts 外部抽出削除
EC Execution Without Check
EP Prioritise extract 抽出優先
EU Execute Unit Tests
F1 Approve 承認
F4 Display in Value Help 入力ヘルプで表示 X
FA Cancel 中止
FB Maintenance of Header Data ヘッダデータの更新
FP Change customer field selectn カスタマ項目選択変更
FS
G1 Maintain Budget 予算更新
G2 Billing 請求管理
G3 Maintain Overhead Costs 間接費更新
G4 Maintain Reevaluation 再評価更新
G5 Pre-enter 事前入力
G6 Transfer Budget 予算振替
G7 Reverse 取消
GL General overview 一般概要
H1 Deactivate 無効化
H2 Activate Logging ロギング有効化
H3 Deactivate Logging ロギング無効化
HD Hold 保留
I1 Submit 送信
I2 Rebook 再予約
IA Inactive 無効
KA Activate notice 通知有効化
KI Knock In ノックイン
KO Knock Out ノックアウト
KS Reverse notice 通知取消
KU Give notice 解約通知
L0 All functions 全機能
L1 Function range level 1 機能範囲レベル 1
L2 Function range level 2 機能範囲レベル 2
LM Change LDAP Mapping LDAP マッピングの変更
LS Change LDAP Sync. Switch LDAP 同期化スイッチの変更
MA Deactivate mod.assistant Mod. 割当無効化
MB Exit 終了
MS Schedule Task List タスクリストスケジュール
N1 Release DBC DBC リリース
N2 Block and Release DBC DBC のブロックとリリース
N3 Validate DBC DBC のチェック
N4 Reopen DBC DBC 再オープン
N5 Process Rejected DBC 拒否された DBC の処理
N6 Bill DBC Without Validating チェックなしで DBC 請求
N7 Process Special Dummy DBC 特殊ダミー DBC の処理
N8 DBC Type Changes in Process 処理中の DBC タイプ変更
NO
NP
O1 Overbook オーバーブッキング
O2 Overbook Appt Always Possible オーバーブッキングが常に可能
OA OCS-AOF Functions OCS-AOF 機能
OC
OM Call Surgery Monitor 手術モニタ
ON Create Secondary Surgery 二次手術の登録
OP Start Surgery 手術開始
OR
OV Exit Material Entry Function 品目入力機能の終了
P0 Accept CCMS CSM data CCMS CSM データ受領
P1 Edit CCMS CSM data CCMS CSM データ編集
P2 Maintain CCMS CSM methods CCMS CSM メソッド更新
P3 Register CCMS CSM remote systm CCMS CSM リモートシステム登録
P4 Release Plan 計画リリース
PA Open Period 期間オープン
PB Close Period 会計期間締め
PC Open Consolid. Grp Processing 連結グループ処理のオープン
PD Close Consolid. Unit Processng 連結グループ処理のクローズ
PP Set Productive 本稼動設定
PQ Propose
PR Process Correspondence 連絡文書を処理
PS
PU Publish パブリッシュ
PZ Personalize パーソナライゼーション
RE Restart 再実行
RF
RL Reload リロード
RO Roll Out ロールアウト
RS Send to New Recipient 新規受信者への送信
RT Reset リセット
S1 Edit template テンプレート編集
S2 Edit specification 仕様編集
SE Search 検索 X
SK Skip スキップ
SO Edit in Sourcing ソーシングの編集
SP Exit 終了
ST Start 開始
SZ Assign Switch Framework Switch 切替フレームワークスイッチ割当
T0 Display Time Slots タイムスロット表示 X
T1 Maintain Time Slots タイムスロット更新
T2
T3
T4
T5
T6
T7
U2 Compare business volumes 取引量比較
U3 Change business volume comp. 取引量比較変更
U4 Add business volume data 取引量データ追加
UL Upload アップロード
US
V1 Create version バージョン登録
V2 Change Version バージョン変更
V3 Display Version バージョン照会 X
V4 Delete Version バージョン削除
V5 Transport Version バージョン転送
V6 Delete Version Header バージョンヘッダ削除
VE Create an Enhancement ID 拡張 ID 登録
VF Expired 期限終了
VP VIP VIP
W1 Debug デバッグ
W2 External Start 外部起動
W3 Enter Expunge Date 抹消日入力
W4 Forward フォワード
W5 Redo Role Resolution ロール決定のやり直し
W6 Start Workflows with Errors エラーのあるワークフロー開始
W7 Cancel Workflow ワークフロー中止
W8 Restart After Error エラー後再実行
W9 Workflow BRF+ Generation ワークフロー BRF+ 生成
WA Configure Scenario シナリオ設定
WB Edit Workflow Instance ワークフローインスタンス編集

他にも制御系の権限項目が...

上記のACTVTのみが動作制御を実施している権限項目ではありません。ERP6.0やS/4HANAを使っている人ならご存知SM36/SM37のジョブなんぞは、JOBACTIONという権限項目で制御されており、値は下表の通りです。他にも複数の権限項目があります。。。
これらの権限項目も変更することで、本当の照会権限を作ることができます。

アクティビティ(技術名称) テキスト(英語) テキスト(日本語) 照会権限へ設定してよい値
DELE Delete Background Jobs バックグラウンドジョブ削除
LIST Obsolete 無効 X
MODI Modify Other Users' Jobs 他のユーザのジョブを修正
PLAN Copy or repeat jobs. ジョブをコピーまたは反復
PROT Display Job Processing Log ジョブ処理ログの照会 X
RELE Release Jobs (Released Automatically When Scheduled) ジョブのリリース (スケジュール時に自動リリース)
SHOW Display Job Queue ジョブキューの照会 X

作成方針

ACTVTだけでも90点は取れそうなので、上述の照会権限に付与しても良い値を設定していきます。
(実際に作る際には、ちゃんと各権限項目ごとに設定をポチポチやっていきましょう。やり方はACTVTと同じです。)
ロール名は「Y_BC_DISPLAY_ALL」とし、SAP_ALLからロールを生成して各権限項目の値を設定します。このあたりはTrCD:PFCGを触ったことのあるベーシスな方はご存知と思いますので飛ばします。問題はその先の手順ですので。

権限項目に設定済みの権限値の一括置換

これが今回のキモです。ACTVTを例に権限値を一括置換する手順を記載します。他の権限項目も同様に置換できます。

1.TrCD:PFCGにて、予めSAP_ALLをテンプレートとして作成した「Y_BC_DISPLAY_ALL」をロールに入力した状態で、ユーティリティから「一括更新権限」を開きます。
image.png

2.オプションを設定します。記載している項目のみ触るようにして下さい。
■標準選択
ロール:Y_BC_DISPLAY_ALL
実行モード(そんなこと書いてないですが便宜上):直接実行
■項目変更のタイプ
項目に対する権限の項目値の変更(オブジェクト非依存)
■項目に対する権限の項目値の変更(オブジェクト非依存) ※ここは項目変更のタイプの選択内容で変わります
変更:すべて置換
項目名:ACTVT
 ※ここで「ACTVT」や「ACTION」のキーワードを使って、その他の権限項目を探します。
■オプション
すべてチェックを外す

image.png
(上図の続き)
image.png

3.項目名の右にある「値」をクリックします。
image.png

4.上述の表に従って照会系の権限値を選択し、「保存」ボタンをクリックします。
image.png

5.実行します。
image.png

6.変更結果が表示されるので「プロファイル生成」をクリックします。
画面下部にエラーログが出ていますが、「この権限オブジェクトに対しては"xx"という権限値は無効だよ」という意味のメッセージです。権限オブジェクトそれぞれのなかで、権限項目ACTVTで使用可能な権限値が決まっているので当たり前です。こちらとしては照会系の権限値として使える値を全部指定しているので、使えないものを無視してくれるのは狙い通りです。
他方、画面上部ではACTVT「*」が削られ新たに「03」が追加されていることが値比較・開始値の列から分かります。
image.png

7.プロファイル生成が完了したら、おしまいです。
image.png

実物の権限ロール

実物の権限ロールのテキスト内容を貼ろうとしたら、なんとQiitaの文字数制限に引っかかってしまい貼れませんでした。
仕方ないのでGoogle Driveで共有します。
こちらは今回作成した権限ロールの実物です。TrCD:PFCGにてアップロードできます。
実は内容としては、ACTVT以外にも、XXX_ACTVTやXXX_ACTIONといった権限項目は一通り洗って照会権限にしています。ヤバそうな項目は「' '」と指定して無効化しています。
ただ、テストしてないのでそのまま使って何か起きても責任は取れませんのでご注意下さい。

こちらのリンクに「Y_BC_DISPLAY_ALL.SAP」を置いてます。
https://drive.google.com/file/d/10Q3tiDtmOk5ys4ZfDk6_DMPTvaNeYbIA/view?usp=sharing

おわりに

若干の腱鞘炎になりました。
マウス操作の箇所、これでも多いですね(笑)
他にも何か書きたいことが出てきたら投稿します。

それでは!

18
7
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
7