SAPをユーザに使ってもらうにあたって、権限制御が1つの検討ポイントになる。
誰でも会計伝票を登録できたり、マスタ情報の変更ができたりしては、もし誤った操作をした場合、システムの信頼性が落ちる。
SAPでもユーザにロールを付与することにより、権限制御ができます。
この記事ではSAPのロール・権限の制御・構成・設定イメージについて解説していきます。
SAPの権限制御でできること
SAPの権限制御でできることは、以下3つです。
- トランザクションコード使用可否の制御
- CRUD(登録・照会・変更・削除)の制御
- 組織レベルの使用可否の制御
これだけでは分からないと思うので、イメージで説明していきます。
例えば、このような4つのロールを登録したとします。
①トランザクションコード使用可否の制御・・・ロール:Z11、Z12、Z13は、MIGO のみ使えます。 ロール:Z14は、ME21N/ME22N/ME23N のみ使えます。
②CRUD(登録・照会・変更・削除)の制御・・・ロール:Z11は、入出庫伝票の登録・変更・照会ができます。 ロール:Z12は、入出庫伝票の照会のみできます。
③組織レベルの使用可否の制御・・・ロール:Z12は、プラント:1000の入出庫伝票のみ照会ができます。 ロール:Z13は、プラント:1001の入出庫伝票のみ照会ができます。
これでSAPの権限で制御できる3つのことのイメージは掴めたでしょうか?
続いて、SAPの権限構成について解説していきます。
権限構成
SAPの権限は、ロール → 権限オブジェクト → 権限項目 と3段構造になっています。
そして、登録したロールをユーザに割り当てる仕組みになっています。
イメージとしてはこのようになります。
まず権限オブジェクト・権限項目について解説していきます。
権限オブジェクト
権限オブジェクトとは、トランザクションコード(メニュー)に紐づく、「処理内容」。 と覚えてもらえればいいです。
例えば、T-code:MIGO をロールに割り当てれば、
権限オブジェクト:
- M_MSEG_BWA(在庫移動: 移動タイプ)
- M_MSEG_LGO(在庫移動: 保管場所)
- M_MSEG_WMB(入出庫伝票: プラント)
- など、、、(M_MSEG_xxxx というロールに自動で権限オブジェクトが付与されます。)
こんな感じでトランザクションコードに紐づく権限オブジェクトが自動で登録されます。
そのため、権限オブジェクトを1つ1つ覚える必要はなく、紐づく権限オブジェクトが自動で登録されるんだ。くらいでも大丈夫です。
権限項目
続いて、「権限項目」です。
権限項目は大きく以下2つの設定をします。
- CRUD(登録・照会・変更・削除)
- 組織レベル
あれ? どこかで見覚えのある2つですね。
そうです! 一番初めに説明した、SAPで権限制御のできる2項目ですね。
CRUD(登録・照会・変更・削除)は、トランザクションコードの割当で自動的に値が入ります。
例えば、ME21N/ME22N/ME23N は、購買発注伝票の登録/変更/照会 のトランザクションコードですが、紐づく権限オブジェクトは同じで、権限項目のCRUDにて制御されます。
そのため、ME21N/ME22N/ME23N を割り当てれば、自動的にCRUDの権限項目に・「登録/変更/照会」が入ります。
ちなみにCRUDの権限項目をSAPでは、「ACTIVITY」と呼びます。
組織レベルでは、権限オブジェクトに適した組織項目が入っています。
例えば、FI系の権限オブジェクトであれば、「会社コード」や「利益センタ」の権限項目を持っています。
MM系の購買発注伝票の権限オブジェクトであれば、「購買組織」「プラント」「伝票タイプ」といった権限項目を持っています。
そのため、組織設定は権限オブジェクトによって、権限項目が異なります、
こちらが設定例です。
例えば、権限オブジェクト:M_MSEG_WMB(入出庫伝票: プラント)の権限項目に設定値を入れるとこのようになります、
例えば、トランザクションコード:MIGOを割り当てれば、ACTIVITY:1, 2, 3 (登録/変更/照会)が自動で入ります。
組織設定のWERKS(プラント)はマニュアルで入力する必要があるので、設定例ではプラント:1000を入れてみました。
例えば、この権限オブジェクトが紐づいたロールをユーザに割り当てると、プラント:1000のみ 入出庫伝票の登録/変更/照会 ができる権限制御がかかります。
組織設定(Tips)
組織設定は、上の説明のように各権限オブジェクトに対して設定も可能ですが、ロールに紐づいている全権限オブジェクトに対して一括で設定も可能です。
「権限オブジェクト・権限項目設定画面」の上部に「組織ボタン」があります。
このボタンを押すと、設定できる組織項目(会社コード・プラント・利益センタ・原価センタ・販売伝票タイプ・購買伝票タイプなど、、)がずらっと出てきます。
この「組織」画面で設定値を入力すると、一括で権限オブジェクト配下の組織項目に値が入ります。
※各権限オブジェクトの組織項目をマニュアルで設定するのは、とある権限オブジェクトだけ組織設定値を修正したい場合に行います。
(例えば、標準ではプラント:1000のみ使用可 としたいが、在庫照会のみ プラント:*(全プラント)としたい場合)
ここまでで、SAPロールには、
- トランザクションコード
- CRUD(登録・照会・変更・削除)
- 組織レベル
の3つを設定し、ロールをユーザに割り当てる。 ということを理解いただけたかと思います。
単一ロール・集合ロール
続いて、「ロールをユーザに割り当てる」というところを、もう少し深堀りしていきます。
ロールには、「単一ロール」と「集合ロール」の2種類があります。
単一ロールは、シンプルに単一ロールの下に、権限オブジェクトを紐づけ、上で解説したような設定をしていきます。
集合ロールは、複数の単一ロールをひとまとめにしたロールです。
そして、単一ロール・集合ロールともに、ユーザに割り当てることができます。
イメージとしては、このようになります。
- 集合ロール(調達)には、単一ロール(発注・入出庫・在庫照会)を紐づけておきます。
- 調達担当(正社員)には、集合ロール(調達)を割り当てる。
- 調達担当(契約社員)には、単一ロール(在庫照会)を割り当てる
集合ロールを使うと、単一ロールを取りまとめられ、ユーザには集合ロールのみを割り当てることで配下の単一ロール分の権限制御が一括でできるメリットがあります。
実際のプロジェクトでは、集合ロールを使って単一ロールをまとめたものをユーザに割り当てるか、単一ロールのみを使用するかは権限設計次第なところがあります。
このあたりは、別記事で事例を交えて話していきます。
サマリ
ここまでSAPのロール・権限について解説してきました。
SAPの権限設定では、
- トランザクションコード使用可否の制御
- CRUD(登録・照会・変更・削除)の制御
- 組織レベルの使用可否の制御
の3つを制御でき、
単一ロール or 集合ロール(単一ロールのまとまり)をユーザに割り当てることで、権限制御ができる、ということを理解いただけたかと思います。
SAPプロジェクトでは、必ず権限設計をユーザも交えて進めていく必要があります。
まずはロール・権限のできることについて理解し、ユーザと要件を詰めていってもらえればと思います。