はじめに
SAP S/4HANA Cloud, public edition のオンボーディングの際、Identity Provisioningでの操作が必要になる箇所があります。
BTP(特にインフラ系)の知見のある方には、馴染みのある製品なのかもしれませんが、アプリ知識しかない私がいきなり Identity Provisioning のヘルプに飛ばされると、まず恐怖を感じ、何とか危機を乗り越えたあとも記憶が定着せず、また出会って恐怖に震える…というケースが続いていました。
ここは、一度整理をしてみようと思いたち、この記事を書いています。
S/4HANA Cloud パブリックをやっていて、インフラ系は初心者です、という属性の方にしか響かないかもしれませんが、ひとまず始めてみます。
この記事は
SAP アドベントカレンダー (unofficial) の12月19日分の記事として書いています。
Identity Provisioningとは
クラウドシステムおよびオンプレミスシステムのアイデンティティライフサイクルプロセスを管理します。
Identity Provisioning サービスは、ID ライフサイクルプロセスを自動化します。アイデンティティおよびその権限をクラウドやオンプレミスのさまざまなビジネスアプリケーションにプロビジョニングに役立ちます。
と
ヘルプにあります。(ヘルプはちゃんと日本語があります)
よくわからないまま、環境、のセクションに進むと
Identity Provisioning のテナントは、SAP Cloud Identity Services のインフラストラクチャ、および SAP BTP, Neo 環境で実行されます。
とあり、「ね、Neo??」と混乱するので、ここは読み飛ばします。
(今は普通に SAP Cloud Identity Services 上にあるようです。それが何かはわかりませんが…)
概要
ヘルプの概要図にある通り、要は、ソースシステムの情報をもとに、ターゲットシステムにユーザを同期してくれるサービスです。
ひとまずそれだけわかっていればOK!です。
ヘルプには様々な設定方法が載っていますが、S/4HANA Cloud に必要なシステム(例えば、IAS、S4HC、CBC、SAC)は事前定義されているため、恐れることは何もありません。
IPS (Identity Provisioning Service) へのアクセス
IPS にアクセスするためのアドレスは、オンボーディング時のメールに載っているので探してみてください。
不明な場合は、ここから確認できます。
https://iamtenants.accounts.cloud.sap/
自分のユーザに IPS にアクセスする権限がない場合には、ここから管理者を確認することもできます。
(Details > Show)
※2023/04/26 追記
IASと入り口が統合されました
Identity Provisioning joined the SAP Cloud Identity Services Administration Console !
IPSに入ってみる
ホームページはこのようになっています。
シンプルで英語しかないのがまた恐怖ですが、ここで私が理解すべきはソースシステム、ターゲットシステム、ジョブログ、の3つのアプリのみです。
ソースシステム
事前定義されたソースシステムの一覧が表示されます。
例えばこちらは IAS (Identity Authentication System) の定義です。
説明に
Predefined system configuration for replication of users from IAS to CBC
とあるとおり、事前定義の設定がされていて、自分で追加設定をする必要はありません。
逆にプロパティでUserやPasswordなどの設定をいじると痛い目にあいます。(←あった)
ターゲットシステム
事前定義されたターゲットシステムの一覧が表示されます。
こちらはCBCの設定ですが、すでにソースシステムとして IAS が設定されています。
このように、「IAS→CBCにユーザをコピーします」という設定は事前に定義されているので、後述の手順のように、IAS側でジョブ実行をするだけで、ユーザコピーが可能となっています。
ジョブログ
ジョブログの一覧から、対象のジョブを見つけて詳細を確認できます。
例えばこのジョブでは、S/4HANA Cloud から embedded Analytics 用のSAC環境(S4HCにバンドルされている)にユーザがコピーされて作成されています。(ケース②にまた出てきます)
では、ここからは具体例を見ていきます。
ケース① CBC (Central Business Configuration) にユーザを作成したい
IASで対象ユーザにCBC関連のロールを付与します。
IPSでソースシステムから IAS を選び、ジョブを開始します。
以上です。ジョブログを確認すると、ユーザが作成できたことがわかります。
詳しい話が知りたくなった場合は、こちらもぜひご参照ください。
User Authentication in SAP Central Business Configuration
※よくあるエラーについて追記
path: $.active is not available in content, but is required in defined system transformation
IASユーザがまだActiveになっていないため。ユーザに一度ログインしてもらうか、手動でステータスを変更するとエラー解消する
Source path: $.userName is not available in content, but is required in defined system transformation
IASユーザの Login Name(任意項目)がブランク のため。Login Nameを埋めるとエラー解消する
参考:
Note 3305454 - Identity Provisioning fails with error "Source path: $.userName is not available in c...
ケース② S4HCの事前定義SACアプリを開こうとしたらクジラが出てきた
こちらのブログにあるように、さまざまなSACのストーリーがS4HCの標準機能としてリリースされています。
Embedded Analytics: SAP Analytics Cloud in SAP S/4HANA Cloud – The Link Collection
ただ、場合によっては、これらのメニューにアクセスしたときに、エラーとなってしまいます。
これは、バンドルされているSAC環境にユーザが同期されていないことが原因です。
2978817 - It seems your profile is not configured for this system - Embedded Analytics not working i...
S4HC→SACへのユーザコピーもIPSに事前定義されていますので、また同期ジョブを実行すれば良さそうです。
IPSのソースシステムからS/4HANA Cloud を選び、ジョブを実行します。
ジョブログを確認すると、24ユーザがS4HCからSACに同期されています。
また、このケースの場合、S4HCでユーザ作成したタイミングと同時にSACにもユーザが必要なニーズは少ないと思うので、定期ジョブとしてスケジュールしておくのが良さそうです。
ちなみに、ジョブの Read と Resync の違いが気になる場合は、こちらのヘルプも参考にしてください。
プロビジョニングジョブには、以下の 2 つのタイプがあります。
プロビジョニングジョブの開始および停止
おわりに
この記事を書いてみたことで、結局はヘルプの情報量の多さにびびっていただけだった、とわかりました。
こうやって見てみると、むしろ親切で簡単なサービスですよね。
別のクラウドサービスを追加で契約した時にはまたIPSにシステム設定が増えていくようです。
今後も便利に使っていきたいと思います。