パスワード リセット プラグイン

PAM360は主に、Windowsローカルアカウント、Windows Domainアカウント、Linuxルートアカウント等、共通して使用する幅広いリソースタイプに自動リモートパスワードリエットを実行する即時対応サポートを提供します。これに加え、パスワードリセットプラグイン機能では、実装クラスを追加およびレガシーリソースタイプ、社内アプリケーション等、PAM360の即時対応がサポートしていないリソースの自動パスワードリセットを実行します。

プラグインでは、レガシーアカウントのアクセスコントロールを利用し、使用時すぐにパスワードの自動リセットを有効にできます。このように、これらのアカウントのパスワードは、関連づけられたプラグインで毎回使用後にリセットされるワンタイムパスワードの役割を持ちます。

パスワード リセット プラグインはどのように機能しますか?

パスワードリセットプラグインは主に、管理者がPAM360で手動で追加が必要な実装クラスです。プラグインは、PAM360 Serverから呼び出され、リモートリソースに接続し、パスワードリセットを実行できます。パスワード リセット プラグインは、ユーザー定義のリソース タイプのリソースに対して個別に構成できます。

パスワードリセットプラグインが関連づけられたカスタムリソースタイプに属するリソースにパスワードリセットをトリガーする場合、PAM360は、そのプラグインのインターフェイスメソッドを呼び出します。プラグインが呼び出されると、まずリモート リソースに接続し、リソースのパスワードのリセットを試みます。リモートパスワードリセットがプラグインにより正常に完了すると、PAM360は、その後、リポジトリで新しいパスワードを更新します。これに加え、プラグインでは、リモートリソースのパスワードがPAM360のリポジトリにローカルに保存されているものと同期されます。

パスワードリセットプラグインを追加できるのは誰ですか?

パスワード リセット プラグインを追加できるのは、デフォルトの管理者役割、または操作カテゴリ[カスタム設定]の下の[パスワード リセット プラグインの管理]スコープでプロビジョニングされたカスタム役割を持つユーザーのみです。さらに、追加されたすべてのプラグインは、任意のプラグインの呼び出しに関連する潜在的なリスクを防ぐために、2 番目の管理者によって承認される必要もあります。

最近追加されたパスワード リセット リスナーの承認方法:

あなたが管理者で、別の管理者からパスワード リセット プラグインの追加の承認を要求された場合は、次のことを行う必要があります:

  1. [管理者] >> [カスタマイズ] >> [パスワード リセット プラグイン]の順に移動します。
  2. 承認する必要があるプラグインの横にある[承認ステータス]列の下のリンクをクリックします。

プラグインの作成、編集、削除、承認イベントはすべて、将来の参照のために監査されます。

パスワードリセットプラグインはどのように追加しますか?

手順の概要

  1. 実装クラスを作成
  2. コンパイル
  3. 実装のヒント
  4. PAM360インストールでの構成

1.実装クラスを作成

リモートパスワードリセットインターフェイスを実装して、javaクラスを書き込みます:

public interface RemotePasswordReset
  {
    public boolean changeRemotePassword(Properties resetPropsprop) throws Exception;
    public String getErrorMessage() throws Exception;
    public boolean verifyRemotePassword(Properties verifyProps) throws Exception;
    public boolean isDeviceAvailable(Properties verifyProps) throws Exception;
  }

実装の説明:

// This class provides the methods to implement password reset plugin. You need to implement the interface 
public interface RemotePasswordReset 
{
/**
* Used to display the error message while doing the password reset and verification operations. The output gets reflected in audit trails.
* @return Error message, if password reset is successful, return null. Otherwise, return a proper error message.
*/
public boolean changeRemotePassword(Properties resetProps) throws Exception;

/** Actual function that will be called whenever "change remote password" functionality is triggered 
*@param resetProps will contain all the details regarding the account for which password reset is triggered.
* @return Final output that will be sent to PAM360 server.
* {@value true} Success case - Allows the operation to proceed.   
* {@value false} Failure case - Denies the operation to proceed. 
**/
               
public String getErrorMessage() throws Exception;  

/*** Used to display the error message while doing the remote password reset and verification operations. The output gets reflected in audit trails.  
* Return a proper error message.  
*/ 

public boolean verifyRemotePassword(Properties verifyProps) throws Exception;  

/** This function will be called whenever "verify remote password" functionality is triggered. 
*@param verifyProps will contain all the details regarding the account for which "verify remote password" was triggered.
*@return Final output that will be sent to PAM360 server. 
*{@value true} Success case - Allows the operation to proceed.   
*{@value false} Failure case - Denies the operation to proceed.
**/

public boolean isDeviceAvailable(Properties verifyProps) throws Exception; }

/** This function will be called before "verify remote password" function to check the accessibility of the device for which verify password was triggered.
*@param verifyProps will contain all the details regarding the account for which verify remote password was triggered. 
*@return Final output that will be sent to PAM360 server.   
*{@value true} Success case - Allows the operation to proceed.   
*{@value false} Failure case - Denies the operation to proceed.
**/ 


2.コンパイル


<PAM360_HOME>\lib folder.
AdventNetPassTrix.jar;
json_simple-1.1.jar;

For Example,
javac -d . -cp AdventNetPassTrix.jar;json_simple-1.1.jar; JiraServerResetImplementation.java - (For Windows)
javac -d . -cp AdventNetPassTrix.jar:json_simple-1.1.jar; JiraServerResetImplementation.java - (For Linux)


3.実装のヒント

クラスは、リソースのプロパティ(PAM360のリソースとプロパティ)が引数として取得されるように、実装できます。以下に一覧表示されているキーのリストから任意のプロパティの値を取得できます。

resetProps.get("RESOURCEID");

リソース ID の Long オブジェクトを返します。

resetProps.get("ACCOUNTID");

アカウント ID の Long オブジェクトを返します。

resetProps.get("OLDPASSWORD");

アカウントの古いパスワードの String オブジェクトを返します。

resetProps.get("NEWPASSWORD");

設定されたアカウントの新しいパスワードの String オブジェクトを返します。

resetProps.get("RESOURCENAME");

リソース名の String オブジェクトを返します。

resetProps.get("DNSNAME");

リソースの DNS 名の String オブジェクトを返します。

resetProps.get("ACCOUNTNAME");

アカウント名の String オブジェクトを返します。

resetProps.get("OSTYPE");

リソースの OS タイプの String オブジェクトを返します。

resetProps.get("NOTES");

アカウントの詳細の下にあるメモの String オブジェクトを返します。

resetProps.get("LOGINNAME");

パスワードのリセットを開始したユーザーのログイン名の String オブジェクトを返します。

resetProps.get("IPADDRESS");

リソースの IP アドレスの String オブジェクトを返します。

resetpresetPropsrops.get("RESOURCEDETAILS");

リソースの他のすべての詳細を含む ResourceDetails オブジェクトを返します。


4.PAM360インストールでの構成

  1. 最初の手順では、パスワードリセットプラグインをPAM360に追加します。[管理] >> [カスタマイズ] >> [パスワード リセット プラグイン]に移動します。
  2. ここで、[パスワードリセットプラグイン]タブをクリックします。
  3. 表示されるダイアログ ボックスで、プラグインに適切な名前を付け、実装クラスの名前を指定します (例: ''com.manageengine.helpdesk.JIRASecretResetPlugin'')。
  4. プラグインの詳細を追加した後、承認要求の送信先となる管理者をドロップダウン リストから選択し、[保存] をクリックします。
  5. 注記:上の手順で[保存]をクリックすると、選択した管理者に要求に関するメールが送信されます。これに加え、あなた以外のすべての管理者には、要求についての通知が届き、そのいずれかが、通知をクリックするか、[管理者] >> [カスタマイズ] >> [パスワードリセットプラグイン]の順に移動し、また、プラグインの横の[承認ステータス]列で承認して、その承認を行うことができます。

  6. プラグインが承認されたら、プラグインを使用してそのようなリソースのパスワードをリセットするリソース タイプを追加できます。これを行うには、[リソース] タブに移動し、上部にある [リソース タイプ] ボタンをクリックします。あるいは、[管理]>>[カスタマイズ]>>[リソースタイプ]に移動して、新しいリソースタイプを追加することもできます。
  7. [リソース タイプ] ページで [追加] をクリックし、表示されるダイアログ ボックスの [詳細] タブに切り替えます。
  8. 適切な名前を付け、カスタム リソース タイプのアイコン (オプション) を設定します。次に、[パスワード リセット プラグイン] ラジオ ボタンを選択します。
  9. 承認されたすべてのプラグインは、[次のようなリセット方法] ドロップダウン メニューから利用できます。必要なプラグインを選択し、[保存]をクリックします。
  10. このプラグインは、このカスタム タイプのリソースを作成し、リソースの特権アカウントのリモート パスワード リセットを構成し、リセット アクションをトリガーするたびに呼び出されるようになります。

詳細については、Jira Service Desk のユーザー アカウントのパスワードをリセットするために作成されたサンプル実装クラスを参照してください。このコードをパスワード リセット プラグインに実装し、Jira Service Desk のパスワードをリセットできます。