MS CRM 2011 ワークフローの入力パラメーターの値をスクランブルする簡単な方法はありますか?
サードパーティ システムでいくつかのアクションを実行するための一連のカスタム ステップを含むワークフローがあります。これには、そのシステムに URL と資格情報を渡す必要があります。
そして、入力パラメータをスクランブルする可能性はあるのでしょうか? では、このログイン情報をすべてのユーザーに公開しなくても安全でしょうか?
MS CRM 2011 ワークフローの入力パラメーターの値をスクランブルする簡単な方法はありますか?
サードパーティ システムでいくつかのアクションを実行するための一連のカスタム ステップを含むワークフローがあります。これには、そのシステムに URL と資格情報を渡す必要があります。
そして、入力パラメータをスクランブルする可能性はあるのでしょうか? では、このログイン情報をすべてのユーザーに公開しなくても安全でしょうか?
エンコード手法を実装し、ワークフロー アクティビティ内でデコード部分を実行できます。
これは、ユーザーの資格情報を非表示にする最も簡単な方法です。
Guido Preiteが提案したとおりにしました。simple を使用して認証文字列をスクランブルおよびデスクランブルする 2 つの単純な関数を作成しましたXOR
。
private static string Encode(string text)
{
byte[] result = Encoding.ASCII.GetBytes(text);
int[] values = new int[result.Length];
for (int i = 0; i < text.Length; i++)
{
result[i] = (byte)(Convert.ToInt32(text[i]) ^ 42);
}
return Convert.ToBase64String(result);
}
private static string Decode(string text)
{
byte[] result = Convert.FromBase64String(text);
for (int i = 0; i < result.Length; i++)
{
result[i] = (byte)(result[i] ^ 42);
}
return Encoding.ASCII.GetString(result);
}
スクランブル文字列の鍵は42
.