「SAP Basis概要の教科書」No.10 SAPユーザ管理の概要
INDEX LINK
1.はじめに
今回は、SAPのユーザ管理について、主要なトランザクションコードを出しながら説明いたします。ユーザの登録・変更・削除、一括操作、ロック・アンロック、権限の付与など、Basis運用の中でも様々なユーザ管理業務が発生します。トランザクションコードそれぞれで、どんなユーザ管理業務を行うのか概要がわかるよう進めていきます。
2.ユーザ登録・変更・削除
まず、最初に覚える必要があるトランザクションコードは「SU01」になります。単一ユーザの新規登録・変更・削除を行います。ユーザの登録・変更というのはどのような内容を登録するかというと、以下のようなものを登録します。
・氏名、所属など表示上の情報
・デフォルト設定
例えばシステムにログオンする際の表示言語は日本語なのか英語なのか、通常使うプリンタはどのフロアーに設定されているプリンタなのかなどを設定します。
・初期パラメータ値
伝票を処理する際に表示される会社コードは本社なのか支店なのか、原価センタはどこかなどを設定します。
・通貨や日付の表示形式
円表示かドル表示なのか、YYYYMMDD形式かMM.DD.YYYY形式かなどを設定します。
・権限設定
そのユーザにどんな処理、トランザクションを利用されるかなどをまとめてロールを割り当てます。
3.ユーザ一括管理
こちらはトランザクションコード「SU10」を使います。上述の「SU01」は1ユーザずつの処理になりますが、こちらは複数まとめて処理することが可能です。たとえばユーザをまとめて削除することや、同じ権限ロールを複数のユーザに一括で付与することが可能なので、効率の良いユーザ管理が可能になります。また、システムのメンテナンスの都合で一時的にユーザのログオンを抑止したい場合があります。そのような場合、このトランザクションコードでまとめてユーザをロックし、処理完了後まとめてアンロックさせることが可能です。
4.権限管理
こちらはトランザクションコード「PFCG」になります。ユーザに実行させるレポートプログラムやトランザクションをロールという1つのオブジェクトで生成し、それをユーザに割り当てるのですが、このトランザクションで、そのロールを生成します。基本的にどのプロジェクトでもロールの設計・開発はBasisの担当範囲ではなく会計や販売、生産などのアプリケーションモジュール担当の仕事になります。Basisは、このトランザクションで生成されたロールが正しく必要なユーザに割り当てられているか、ロールにも有効期限があるため、その有効期限が切れていないかなど、ユーザがシステムを利用する際に不具合が発生した際の調査・確認にこのトランザクションを利用することになります。
5.ユーザ管理プログラム(BAPI)
こちらは他と毛色が異なり、トランザクションではありません。BAPIとはSAPが標準機能として用意している汎用モジュール(プログラム)のことを指します。BAPIはモジュール毎に複数用意されており、もちろんBasis用にも用意されています。今回説明しているユーザ管理業務効率化のためのBAPIも複数用意されており、これをABAPプログラムから呼び出す、またはSAP .NetConnectorというモジュールと組み合わせることで、PowerShellはVBScriptからも簡単に呼び出すことが可能です。これを使うと、テキストファイルに事前に用意しておいた数百人のユーザ情報を1クリックでまとめて登録できたり、タスクスケジューラで指定の時刻に一斉ロックをかけたりすることが可能になります。主要なユーザ管理BAPIとしては、「BAPI_USER_CREATE1」、「BAPI_USER_LOCK」などがあります。
6.集中ユーザ管理
こちら複数トランザクションがあるのですが、主要なトランザクションコードとして「SCUA」「SCUG」があげられます。“集中ユーザ管理”とは文字通りSAPのユーザを集中管理する仕組みになります。SAPのシステムは中心となるERPだけではなく、顧客管理に特化したCRMやデータ分析を行うBWなど様々なシステムが存在します。それらシステムを利用する際にはそれぞれのシステムでユーザ登録・管理が必要なのですが、システムごとに実施していては運用工数も増加し、管理も煩雑になってしまいます(ユーザの追加・削除漏れなどを引き起こしやすい)。そこで、システムを親子関係で結び、親システムで登録・変更したユーザを子システムにも反映・同期するというのが集中ユーザ管理の概要になります。この構成に使うのが上述のトランザクションコードになります。こちらは通常の運用時というより構築時やクライアントが追加された場合などに使用することが多くなります。機会があれば、集中ユーザ管理の構成方法について別途ご説明したいと思います。
7.LDAP連携
こちらで使う主要なトランザクションコードは「LDAPMAP」になります。これもユーザ登録の効率化を実現するための機能なります。ユーザの所属や氏名などをSAPシステムに都度登録するのではなく、社内のActiveDirectoryと連携し、ユーザの各種属性情報をマッピングして自動的にSAPユーザ情報に同期させる仕組みを構築する、そんな場合に利用します。また、同期時にActiveDirectoryにない情報も、固定で指定することも可能です。つまり、氏名や所属はActiveDirectoryからマッピングし、デフォルトプリンタや業務パラメータを固定値で埋め込んでSAPユーザ属性に連携させる、こんな使い方も可能です。このあたりも詳しい設定方法など、今後のコラムでお話できたらと考えております。
8.おわりに
いかがでしたでしょうか。今回はユーザ管理の概要をトランザクションコードベースで説明いたしました。日々の運用で頻繁に使うであろう、「SU01」「SUI10」。業務効率化の検討で利用が想定される「BAPI」、SAPシステム環境構築・修正時に利用する「SCUA」「SCUG」「LDAPMAP」など、場面に応じて様々なトランザクションが用意されていることがご理解頂けたかと思います。まずは日々の運用で基礎から学び、Basis運用に慣れてきたら業務効率化、集中ユーザ環境構築について学習し、構築スキルも上げていって頂ければ幸いです。