本日は開発者向けのパスワード生成アクティビティを紹介します。
これがあればよくみる確認コードの自動送信プログラムも5分あれば作れます。
(確認コードの仕様を悩む場合はその限り(5分)ではありません(笑))
「Generate Random Password」
このカスタムアクティビティはプロパティをみて少々困惑します。
ヒント情報の下段に「Maximum allowed value is 1000 characters」と表示されるのですが、
これが上段のRequired XX(必須〇〇の整数値)とどう関係しているのか不明なためです。
とりあえず、この下段のヒントは見なかったことにしてインストールされたアクティビィティのパスとプロパティ画面を↓
プロパティで設定可能なものは上から順に以下です
①利用可能な特殊文字
②パスワードの最大文字数
➂パスワードの最低文字数
④パスワードに”数値”を最低何文字含めるか
➄パスワードに”小文字”を最低何文字含めるか
⑥パスワードに”特殊文字”を最低何文字含めるか
➆パスワードに”大文字”を最低何文字含めるか
①以外(②~➆)はすべてInt32(整数値)を指定します。
※0を指定したとしても、パスワードの最低文字数を満たすためにランダムで”数値・小文字・特殊文字・大文字”のいずれかが補完されます。
①の特殊文字は未指定の場合、以下が割り当てられるようです↓
それでは、実験を開始しましょう
「,zS6~AGq9aX」 計11文字(数値:2 小文字:3 特殊文字:2 大文字:4)
「k-b6(A##|*c)0S/4M」 計17文字(数値:3 小文字:3 特殊文字:8 大文字:3)
↑少々わかりづらいとおもうので、文字数を減らします。
以下はパスワードの最低文字数を4桁、個々の最低文字数も1文字として試した例
ちょうど生成されたパスワードも4文字だったためわかりやすいのですが、
「|iK9」 計4文字(特殊文字:1 小文字:1 大文字:1 数値:1)
となっています。
なお、個々の最低文字数の積み上げがパスワードの最低文字数を超えている場合、
プロセスを実行すると
落ちるのでご注意ください。
携帯番号に届く確認コードとかはこんな風にやればOK↓
大文字を3文字以上↓
大体仕様はわかったので今日はここまで
以上 パスワード生成アクティビティでしたー