uipath technical infomation for everyone

Passwordを保存する②

パスワードを保存する方法としてGet Secure credentialアクティビティを利用する方法を紹介します。

 

Get Secure CredentialアクティビティはWinodws資格情報にユーザー情報を格納し、その値をロボットから取得します。このユーザー情報は設定したログインユーザーからしか参照できないため、別のユーザーでログインしてもユーザー情報を取得することができません。

 

手順

まずは、事前準備としてWindows資格情報にユーザー名・パスワードを設定します。

 

1スタートボタンを押し、検索BOXに「コントロール」と入力し、表示されたコントロールパネルをクリックし、コントロールパネルを起動します。

 

2「資格情報マネージャー」をクリックします。

 

3「Windows資格情報」をクリックし、「汎用資格情報の追加」をクリックします。

 

4資格情報を入力します。

 

入力項目は以下を参照してください。

項目 解説
インターネットまたはネットワークのアドレス: Get Secure Credentialアクティビティで指定する文字列を指定します。ここでは「CredentialTest」と入力します。
ユーザー名: 取得したいユーザー名を入力します。
パスワード: 取得したいパスワードを入力します。

 

5ユーザー名を受け取る変数を用意します。

ここではユーザー名を受け取る変数を「strUserName(String型)」としています。

 

6次にGet Secure credentialアクティビティからはパスワードを暗号化されたSecureな文字列として受け取るため、パスワードを受け取るSecureString型の変数を用意します。

ここでは「sstrPassword」という変数名を指定しています。

 
「Browse for Types …」をクリックします。

 

「Type Name:」に「securestring」と入力し、「SecureString」を選択し、「OK」をクリックします。

 

7Get Secure Credentialアクティビティを配置します。

8Get Secure Credentialアクティビティのプロパティを設定します。

 

プロパティ 解説
Input/Target 「4.」で設定した「インターネットまたはネットワークのアドレス:」で設定した文字列を指定します。ここでは「CredentialTest」と入力します。
Result Resultは「4.」で設定した「インターネットまたはネットワークのアドレス:」が存在するかBoolean型で受け取ることができます。チェックが必要な場合には指定してください。
Output/password パスワードを受け取る変数を指定します。ここでは「sstrPassword」を指定しています。
Output/Username ユーザー名を受け取る変数を指定します。ここでは「strUserName」を指定しています。

 

9あとは受け取ったユーザー名をType intoアクティビティなどを利用して入力します。またパスワードはSecureString型のためそのままでは参照できません。参照するには以下のようにString型に変換するかType Scure Textアクティビティを使用します。

 

書式

new System.Net.NetworkCredential(string.Empty, sstrPassword).Password

SecureString型をType intoで使用する例)

 
Type Secure Textを使用する例)