Enterprise 技術情報 Enterprise Technical information
外部との連携 Active Directoryにユーザーを登録する
「Active Directoryから情報を取得する」では、Active Directoryの登録情報をKompiraから参照する方法をご紹介しました。今回は同様の手法でActive Directoryに新規のユーザーを登録してみます。
(Active Directoryは既存のサーバーを利用する想定です。)
動作確認環境
Kompira
ソフトウェア | バージョン |
---|---|
Kompira | 1.5.5.post7 |
LinuxOS | CentOS7.8.2003 |
Windows Server
ソフトウェア | バージョン |
---|---|
Active Directory | スキーマバージョン 88 |
OS | Windows Server 2019 |
※本記事は上記環境を利用して検証しております。掲載時点の情報であり、最新のものとは異なる場合があります。予めご了承ください。
事前準備
前回同様「Windows PowerShell 用 Active Directory モジュール」を使用します。Active Directoryサーバーにインストールしてください。
スクリプトジョブの作成
まずはユーザーを登録するスクリプトジョブを作成します。使用するコマンドレットは「New-ADUser」です。
スクリプトジョブ「AddUser」
Import-Module ActiveDirectory $password = ConvertTo-SecureString -AsPlainText $Args[5] -Force New-ADUser -Name $Args[0] -Surname $Args[1] -GivenName $Args[2] -DisplayName $Args[3] -UserPrincipalName $Args[4] -AccountPassword $password -PasswordNeverExpires $true -Enabled $True
New-ADUserに渡す各引数は、スクリプトジョブの引数として指定します。パラメータの順番に注意してください。
–Surname で指定した内容が「姓」に、-GivenName で指定した内容が「名」に、-DisplayName で指定した内容が「表示名」に、-UUserPrincipalName で指定した内容が「ユーザーログオン名」に設定されます。
パスワードはただの文字列ではなく、SecureString 型である必要があるので、ConvertTo-SecureStringコマンドレットを用いて変換します。
ジョブフローの作成
続いてスクリプトジョブ「AddUser」に引数を渡して実行させるジョブフローを作成します。
| Name = "kompira-user" | | Surname = "コンピラ" | | GivenName = "太郎" | | DisplayName ="コンピラ太郎" | | UserPrincipalName = "kompira-user@kompira.jp" | | Password = "SecretPassword12345" | | __node__ = ./NodeOfActiveDirectory | [./AddUser: Name, Surname, GivenName, DisplayName, UserPrincipalName, Password] => { if $ERROR == "" | then: print("ユーザー $Name を登録しました") else: print("登録エラー") } => print("--------------------") -> print("ステータス:", $STATUS) -> print("メッセージ:", $RESULT) -> print("エラーメッセージ:", $ERROR)
ここで注意点としては、スクリプトジョブ「AddUser」は登録に失敗した場合でも戻り値に0を返すということです。このため失敗の判定はエラーメッセージ$ERROR変数に値が格納されているかで行います。
登録に成功した場合には、以下のように表示されます。
この場合、Active Directoryサーバーで登録されたアカウントのプロパティを見ると次のようになります。
同じ条件で2回ジョブフローを実行すると重複登録のエラーになりますが、その際の画面は次のようになります。
Active Directoryのユーザーには、所属部門や電話番号、メールアドレスなど様々な属性情報を登録する事が出来ます。また初回ログイン時にパスワード変更を強制するなどもできます。「New-ADUser」コマンドレットも多くの属性をサポートしています。詳細はTechNetの解説記事などを参照してください。
ユーザー登録に成功したら、該当ユーザーに登録内容の通知メールを送るように、ジョブフローを拡張することもできます。各組織での運用状況に応じて設定項目を調整してください。
スタートガイド
Kompiraジョブフローの基礎
ジョブフローの簡単な例
Kompiraの機能
-
- フィールド修飾子でフィールドの入力内容に制約を設ける
- Kompiraでの文字列のパターンマッチング
- Kompira上でWikiページを作成する
- スケジューラを使って定期的にジョブを実行する
- ジョブフローを実行するフォームを作成する
- テーブル内の情報を選択して処理を実行する
- ジョブフローに権限設定をする
- ジョブフロー画面の各種設定
- Pythonで記述された処理をKompiraから呼び出す
- Kompiraオブジェクトのプロパティ,メソッド,フィールドを扱う
- Windowsでリモートスクリプトを実行する(その1)
- Windowsでリモートスクリプトを実行する(その2)
- Kompira上のデータをバックアップする(その1)
- Kompira上のデータをバックアップする(その2)
- Kompira上のデータをバックアップする(その3)
外部との連携
-
- Prometheusからの通知をKompiraで受信する
- Kompira cloud Pigeonを利用した通知電話の利用
- ネットワーク機器へのコマンド投入
- KompiraからWindowsGUIアプリケーションを操作する (1/2)
- メールを送信する
- メール受信をトリガーにしてジョブフローを実行する
- アラートメールをフィルタリングして転送する
- チャネルを利用して外部システムからデータを受信する
- Webページから内容を取得する
- Redmineへ新規チケットを登録する
- Redmineでのチケット作成をKompiraに通知する
- Kompira REST APIを利用して外部からジョブフローを実行する
- Kompira REST APIを利用して外部からオブジェクト情報を取得する
- KompiraからSlackに通知する
- Slackでの投稿をKompiraに通知する
- KompiraからTwilioで電話をかける
- Zabbixからの通知をKompiraで受信する
- syslogをKompiraで受信する
- snmptrapをKompiraで受信する
- KompiraでExcelファイルの読み書きをする
- KompiraでGoogle SpreadSheetの読み書きをする
- Active Directoryから情報を取得する
- Active Directoryにユーザーを登録する