2023年09月30日
ラグビーワールドカップ2023 〜Coffee Time〜
こんにちは!
ナビゲータのEVEです。
ワールドカップサッカー、WBCときて、今度は、ラグビーです。現在、フランスで、各国の選手が死闘を繰り広げています。死闘は言いすぎですか?
ただ、死闘といってもいいぐらい、選手だけでなく、ファンも真剣です。この予選ですが、約1カ月間続くそうです。ながって思いましたが、タックルの様子を見ていると、サッカーや野球などと違い、1試合1試合の間隔をあけないと、かなり辛いのでしょう?
[日本代表の戦績]
現在、日本代表は、3試合行い、2勝1敗といった状況です。
日本 vs チリ:42-12(勝利)
日本 vs イングランド:12-34(敗北)
日本 vs サモア:28-22(勝利)
イングランド戦は、ちょっと不運な判定から、ペナルティゴールを奪われ、日本は1名少ない人数で戦うことになりました。その結果が、12-34です。この判定がなければ、結果は同じだったかもしれませんが、もっと、いい試合になったような気がします。
[サッカー観戦や野球観戦との違い]
正直言って、ルールがいまいち分かっていません。サッカーもルールに関してはあやしいところがあるのですが、そのサッカーよりもラグビーは分かりません。一応判定があるたびに、その判定の解説がテロップで出るのですが、そのルールが多岐にわたる上に、その判定が2度紹介されることがまれなようで、なかなかルールが頭に入っていきません。そんなところが、野球観戦やサッカー観戦との違いでしょうか?
五郎丸元選手の解説によると、基本ラグビーは陣地取をしているそうです。陣地取をしているんだな〜ぐらいの間隔で見ていると、気楽に見ることができます(笑)。
[ラグビーワールドカップ2023の見どころ]
ゴールキックなんか見ていてドキドキしますね?真正面から見ると大きな長方形に相当するゴールなのですが、角度が少しでもずれると、ゴールする面積が狭くなります。そのような状況の中、日本の、ゴールキッカー松田選手のゴールの成功率は、90%以上です。ゴールキックを失敗したのは、私が知る限り今回の大会では、サモア戦の1回だけです。
そして、スクラムやタックルは他のスポーツにはない、格闘技をほうふつさせるものがあります。そんな、男と男のぶつかり合いも、ラグビーの見どころでしょう?
ちょっと、目先を変えれば、オセアニアから出場した国々の、試合前の舞と言ったらいいのでしょうか?それも、見ものですよ。楽しむところ満載です!
[今後の予定]
今後の予定は、グループD 2位の日本はあとアルゼンチン戦を残すのみです。そして、グループD 1位イギリスが全勝で、後はサモア戦を残すのみとなっています。2位まで決勝進出の権利があるそうなので、次のアルゼンチン戦には是非勝って自力で決勝に進出してほしいです。なお、アルゼンチンとの過去の戦績について、調べると、以下のような状況のようです。
1993年 5月15日: 日本 27−30 アルゼンチン
1993年 5月22日: 日本 20 - 45 アルゼンチン
1998年 9月15日: 日本 44 - 29 アルゼンチン
1999年 10月16日: 日本 12 - 33 アルゼンチン
2005年 4月23日: 日本 36 - 68 アルゼンチン
2016年 11月5日: 日本 20 - 54 アルゼンチン
これまでの戦績は、1勝5敗となっており、世界ランクは、アルゼンチンは8位、日本は10位です。直近試合はない上、世界ランク8位と10位の戦いです。面白いものとなるでしょう?
[あとがき]
ここ数年、日本がいろいろなスポーツの分野で強くなり、面白くなってきました。いろいろなところでストレスが発散できて、いいですね!
では、また!
■日本対アルゼンチンのラグビー対戦成績!2023年W杯注目選手は?(まるごとニュージーランド)
https://marugotonz.com/japan-argentina-rugby-results/
2023年09月27日
フレーム分割する場合のセキュリティについて考える 〜セキュリティ研究室〜
こんにちは!
ナビゲータのEVEです。
現在、中小企業診断士の勉強が軌道にのらないため、そちらを優先的にやっています。そんな中小企業診断士の勉強ですが、今週中には軌道にのせる予定で、プログラム開発は、その軌道にのった後、ということは来週から再開します。
[画面分割]
現在中止中のプログラム開発ですが、1つ決めたことがあります。それは、管理者画面については、EVEシステムもPrototype EVE同様3画面のフレーム分割で製造することにしました。ただ、従来、Prototype EVEでは、FRAMEタグを利用していたのですが、現在は非推奨です。セキュリティ的に問題があるというのです。そこで、後継のタグとして推奨されているのが、IFRAMEタグ・・・。ただ、IFRAMEタグを利用すれば、すぐにセキュリティが得られるかというとそういう分けではなく、実装すべき機能があります。
[IFRAMEのセキュリティ]
それでは、どんなセキュリティがあるのでしょうか?どんなセキュリティがあるのか、ChatGPTに聞いてみました。
iframeのセキュリティを向上させるためには、以下の方法やベストプラクティスを考慮することが重要です。
❶X-Frame-Options ヘッダーの使用
サーバーサイドで X-Frame-Options ヘッダーを設定することで、特定のドメインからのiframe埋め込みを制限できます。DENY オプションは、すべてのドメインからのiframeを拒否し、SAMEORIGIN オプションは同一オリジンのみを許可します。
X-Frame-Options: SAMEORIGIN(DENY)
❷Content Security Policy (CSP)
CSPを使用して、どのドメインからのコンテンツを読み込むことが許可されているかを指定できます。これにより、不正な埋め込みやスクリプトの実行を防ぐことができます。
Content-Security-Policy: frame-ancestors 'self' example.com
❸iframeの属性を検討:
sandbox 属性を使用して、iframe内で実行できる操作を制限できます。また、allow-scripts や allow-same-origin などの属性を使用して、特定の動作を許可または制限できます。
❹セキュアな通信
iframe内のコンテンツを提供する際、HTTPSを使用して通信を暗号化しましょう。これにより、データの盗聴や改ざんを防ぎます。
❺クリックジャッキング対策
クリックジャッキング攻撃を防ぐために、iframeに不透明な要素を重ねて表示させ、ユーザーが誤ってクリックできないようにすることを検討してください。
❻フレーム内コンテンツの信頼性確保
iframe内で表示するコンテンツは信頼性のあるソースから提供されるべきです。信頼性のないコンテンツをiframeに埋め込むことはセキュリティリスクとなります。
❼セキュリティアップデート
使用しているブラウジングコンポーネントやフレームワークについて、最新のセキュリティアップデートを確認し、適用することが重要です。
これらの方法を組み合わせて、iframeのセキュリティを強化できます。セキュリティに関する最新のベストプラクティスやセキュリティアップデートを追跡し、常に最良のセキュリティプラクティスを採用することが重要です。
[実装の検討]
❶から順をおって見てみましょう!
❶は、情報処理安全確保支援士の試験では、クリックジャッキング攻撃の問題でよく見る防御方法です。実は、情報処理安全確保支援士のテキストには、以下の内容で書かれています。
DENYオプション:すべてのドメインからのiframeを拒否
SAMEORIGIN オプション:同一オリジンのみを許可
ALLOW-FROM uri:ページは指定されたオリジンuriのフレーム内でのみ表示
私が以前勉強したときは、ALLOW-FROMがあったのですが、現在これは廃止され、新しいバージョンのブラウザはサポートもしていないそうです。そのため、ChatGPTは、ALLOW-FROMはないと断言しています。現在からセキュリティを勉強する人は、DENYとSAMEORIGINを知っていれば問題ないでしょう!
そんな、X-Frame-Optionsについて、情報処理安全確保支援士のテキストでは、具体的な設定方法は記述していません。では、どのように設定したらいいのか、ChatGPTに聞いたところ、以下のような回答がありました。設定箇所は、HTMLソースではなく、apache.conf、httpd.confまたは.htaccessに設定します。
記述方式は、下記の通りとなります。
<VirtualHost *:80>
# 他の設定...
Header always append X-Frame-Options SAMEORIGIN(DENY)
</VirtualHost>
ここまで分かれば、すぐにでも設定できそうです。ただ、気を付ける点は、Apacheを再起動しないと設定が有効になりません。本番機などに設定する場合、お客様のことを考え再起動を後回しにしてしまうということが考えられます。再起動を忘れないでください。
続きまして、❷のContent Security Policy (CSP)なのですが、どのように設定したらいいでしょうか?実は、この設定方法初めて見ます。
ChatGPTに聞いたところ、設定箇所は、X-Frame-Options同様に、apache.conf、httpd.confまたは.htaccessに設定します。
記述方式は、下記の通りとなります。
<VirtualHost *:80>
# 他の設定...
Header always set Content-Security-Policy "frame-ancestors 'self' example.com"
</VirtualHost>
この設定も、記述したからすぐに有効になるのではなく、Apacheを再起動しないと有効になりません。本番機に設定する方は気を付けてください。
つづきまして、❸なのですが、これは、htmlのソースに記述します。これも実は初めて見る記述です。記述は、上記の通りなのですが、これ以外にもスペースで区切ることによりいろいろな設定ができるようです。以下に一覧で記述します。
■allow-scripts
allow-scripts を設定すると、iframe内でスクリプトが実行できるようになります。これにより、JavaScriptコードがiframe内で実行できます。
ただし、外部のJavaScriptリソース(外部スクリプトファイル)の読み込みは無効になり、iframe内でのJavaScriptは同じオリジン内のリソースに制限されます。
この設定を使用する場合、注意が必要で、信頼できないサイトからのiframeを許可しないようにすることが重要です。外部のスクリプトがiframe内で実行できると、セキュリティリスクが高まります。
■allow-same-origin
allow-same-origin を設定すると、iframe内のコンテンツは同じオリジン(同じドメインとプロトコル)からのみアクセスできます。他のオリジンからのアクセスはブロックされます。
この設定は、iframe内のコンテンツが親ウィンドウと同じオリジンであることを確実にするために使用されます。これにより、同一オリジンポリシー(Same-Origin Policy)によるセキュリティ制約が強化され、外部からのアクセスや攻撃を防ぎます。
ただし、同一オリジン内であっても、allow-same-origin を設定することで、iframe内のコンテンツは親ウィンドウ内のコンテキストと同じように操作できます。注意が必要です。
これらの属性を組み合わせて使用することで、iframe内のコンテンツのスクリプト実行を制御し、同一オリジンポリシーに従ったセキュリティを強化できます。ただし、これらの属性を使用する際には、セキュリティ上のリスクに対する十分な注意が必要です。
■allow-forms
埋め込まれた文書からのフォーム送信を有効にします。
■allow-modals
埋め込まれた文書からモーダルウィンドウを開くことを可能にします。
■allow-orientation-lock
埋め込まれた文書が、スクリーンの方向をロック可能にします。
■allow-pointer-lock
埋め込まれた文書が Pointer Lock API を使用可能にします。
■allow-popups
埋め込まれた文書からのポップアップを有効にします。
■allow-popups-to-escape-sandbox
sandbox 属性が付与された文書が、新しいウィンドウを開いた時、サンドボックスが継承されないようにします。
■allow-presentation
埋め込まれた文書がプレゼンテーションセッションを開始できるようにします。
■allow-top-navigation
埋め込まれた文書から別のブラウジング・コンテキストを指しているリンクを有効にします。
■allow-top-navigation-by-user-activation
埋め込まれた文書が最上位のブラウジング・コンテキストに移動できるようにします。ただし、ユーザーの操作によって開始されたものに限ります。
■allow-downloads-without-user-activation
ユーザーによる操作のないダウンロードを許可
以上です。
セキュリティだけのことを、考えた場合、allow-same-originの設定は必須で、それ以外は任意に設定することになりそうです。
なお、allow-scripts、allow-same-originはChatGPTから、allow-downloads-without-user-activationは、Qiita引用させて戴せていますが、それ以外については、W3 Watch Referenceからの引用となります。
❹のセキュアな通信については、2つの考え方があります。
@セキュア属性を指定する
A通信時にhttpsを強制する
@については、情報処理安全確保支援士のテキストに記述がありますが、具体的な設定方法がありません。また、ChatGPTに聞いてみましょう。
設定の方法は、クライアントとサーバーサイト両方またはいずれかで設定します。クライアントは、JavaScriptを使用する方法で、サーバーは、サーバーサイトプログラムを利用する方法です。当サイトでは、PHPを利用していますので、サーバーサイトプログラムについては、PHPについてChatGPTに聞いてみました。
以下は、JavaScriptでセキュア属性を付けた場合のプログラムです。
<!DOCTYPE html>
<html>
<head>
<title>JavaScriptでCookieを設定</title>
</head>
<body>
<script>
// Cookieを設定するJavaScriptコード
document.cookie = "mycookie=myvalue; secure";
</script>
</body>
</html>
以上のやり方は、ページ読みこみ時にセキュア属性が設定されます。なお、これ以外の方法もありますが、このブログでは割愛させて頂きます。
続きましては、PHPでセキュア属性を実現する方法です。
<?php
// セキュアなCookieを設定する
setcookie("mycookie", "myvalue", 0, "/", "", true, true);
?>
なお、以上の設定は、http通信とhttps通信が混在しているサイトで有効です。そのため、以上の設定をする場合、クッキーIDと値をクライアント、サーバーサイトで設定する必要があります。
調べて初めて分かりましたが、暗号化されているとはいえ、クッキーIDと値が固定になる、または、知られるのはセキュリティ的に問題があると考えます。できれば、HSTS (HTTP Strict Transport Security) を利用したほうがいいようです。
続きまして、HTTPSを強制する方法です。この方法は、Apache、サーバーサイトアプリケーション(当サイトではPHP)両方で設定する必要があるようです。以下は、Apacheのapache.confまたはhttpd.confへ記述した場合の例となります。
<VirtualHost *:80>
# 他の設定...
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>
続きまして、サーバーサイトプロログラム、PHPへの記述です。多分フレームワークから製造した場合、各プログラムで必ず読み込まなければいけないプログラムはありませんか?もしありましたら、同プログラムに記述し実行してください。
<?php
// 現在のプロトコルがHTTPSでない場合、HTTPSにリダイレクト
if ($_SERVER['HTTPS'] !== 'on') {
$redirect_url = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
header("Location: $redirect_url");
exit();
}
?>
❺のクリックジャッキングへの対策ですが、ここに書かれている内容そのものがクリックジャッキングです。ようは、やられる前にやれということでしょうか?これについては、設定方法が思い浮かばないので、宿題とさせていただきます。
❻については、❶〜❹の設定することにより、信頼できるサイト、または信頼できるコンテンツが指定することができるので、あえて改めて何かする必要はないと思われます。
❼は、定期的に気をつけた方がいいですね?どんなソフトを使っているのか把握し、そして、同ソフトの更新の有無を定期的に確認するという作業が必要になります。
[あとがき]
実は、調べる前、X-Frame-Options ヘッダーの使用ぐらいしか考えていなかったのですが、現在いろいろな方法があるのですね?情報処理安全確保支援士のテキストでは、X-Frame-Optionsヘッダーしか紹介されていません。これから、いろいろ新機能などを導入していきますが、まず最初にChatGPT様にお伺いを立ててからシステム開発するべきだということを強く感じました。
以上の設定をすべて実行すれば、最高なセキュリティが得られるかもしれないと思った方がいるかもしれません。設定は、可能なようなのですが、注意が必要です。ChatGPTは以下のような注意を促しています。
上記の❶から❹のセキュリティ設定を実施することは、ウェブサイトのセキュリティを向上させるために一般的な手順です。これらの設定はウェブアプリケーションやウェブサイトのセキュリティを強化し、特にクロスサイトスクリプティング(XSS)攻撃やクリックジャッキング攻撃などのセキュリティリスクに対処するのに役立ちます。
ただし、これらのセキュリティ設定を適切に実装する際に注意すべき点がいくつかあります。
@設定のテスト
セキュリティ設定を変更する前に、これらの変更がサイトの正常な動作に影響を及ぼさないかどうかをテストしてください。特に、CSP(Content Security Policy)の設定は、誤った設定がウェブサイトの機能に問題を引き起こす可能性があるため、注意が必要です。
ACORS (Cross-Origin Resource Sharing)
❶と❷の設定によって、特定のドメインからのコンテンツ読み込みを制限することができます。ただし、必要な外部ドメインからのコンテンツを正しく許可するために、CORSポリシーを適切に設定する必要があります。
BHTTPSの適切な設定
❹でセキュアな通信を強制する際には、ウェブサイト全体がHTTPSで提供されていることを確認してください。また、SSL/TLS証明書の適切な設定も行う必要があります。
Cブラウザ互換性
各ブラウザがこれらのセキュリティヘッダーをサポートする方法や動作が異なることがあるため、互換性を確認してください。特に古いブラウザやバージョンが問題となる場合、適切なポリフィルやフォールバックオプションを検討することが重要です。
以上の注意点を考慮し、適切なテストと監視を行いながら、これらのセキュリティ設定を実装することで、ウェブサイトのセキュリティを強化できます。セキュリティは継続的なプロセスであるため、定期的な評価とアップデートが不可欠です。
新たに、CORSが出てきました。これを導入する目的を、詳しく解説すると以下の通りとなります。以下は、ChatGPTからの回答です。
CORS(Cross-Origin Resource Sharing)は、ウェブアプリケーションにおいて、異なるオリジン(ドメイン、プロトコル、ポート番号の組み合わせ)からのリクエストに対するセキュリティ制御を提供する仕組みです。CORSを実装することで、以下のことが実現されます:
❶セキュリティ制御
CORSは、クロスオリジンのリクエストを制御するためのセキュリティメカニズムです。同一オリジンのリクエストと比較して、クロスオリジンリクエストにはセキュリティ上のリスクが伴う可能性があります。CORSにより、不正なドメインからのリクエストを防ぎ、クロスオリジンのセキュリティを向上させることができます。
❷同一オリジンポリシーの緩和
ウェブセキュリティの観点から、通常、異なるオリジンからのリクエストはブラウザによって制限されます。しかし、CORSを使用することで、特定のオリジンからのリクエストを許可し、同一オリジンポリシーを緩和できます。
❸クロスオリジンリクエストの許可
クロスオリジンのリクエストを正当なものとして許可する場合、サーバーからのレスポンスヘッダーにCORSヘッダーを含めることで、ブラウザによってクロスオリジンリクエストが許可されます。これにより、異なるオリジンのウェブサイトからデータやリソースを取得することができます。
❹特定のオリジンの制限
CORSを使用して、特定のオリジンからのリクエストを許可または制限できます。これにより、信頼性のあるオリジンのみがアクセスを許可され、他のオリジンからのアクセスを拒否することができます。
❺クロスオリジンスクリプトの実行制限
クロスオリジンスクリプトの実行を制限できます。CORSポリシーに違反する場合、ブラウザはスクリプトの実行をブロックします。
CORSは、ウェブアプリケーションのセキュリティを向上させ、クロスオリジンのリソース共有をコントロールするための重要なツールです。適切に構成されたCORSポリシーは、不正なリソースアクセスやクロスサイトスクリプティング(XSS)攻撃からウェブアプリケーションを守るのに役立ちます。
どうも、これも設定しないといけないようです。
具体的には、どうやって設定するのでしょうか?引き続きChatGPTに聞いてみました。設定場所は、apache.conf、httpd.confまたは.htaccessに設定します。なお、.htaccessへ設定する場合は、<IfModule mod_headers.c>は不要です。
<IfModule mod_headers.c>
# クロスオリジンのリクエストを許可する
Header set Access-Control-Allow-Origin "*"
# 必要に応じて他のCORSヘッダーを設定する
Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"
Header set Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
Header set Access-Control-Allow-Credentials true
</IfModule>
今回、長々と調べましたが、理由は、時間の節約です。今日は非常に時間が取られましたが、後日はこのサイトに書かれている情報を見るだけでpro2grammer.comのセキュリティを確保することが可能になります。
現場にいる人もこのサイトを参考に、是非、ChatGPTを活用し、セキュリティの高いシステムを製造してください。
では、また!
■sandbox 属性(W3 Watch Reference)
https://reference.hyper-text.org/html5/attribute/sandbox/
■【HTML】iframeのsandbox属性について(Qiita)
https://qiita.com/mzmz__02/items/f1187e86c175de5aec0b
2023年09月26日
アキラとあきら 〜Coffee Time〜
こんにちは!
ナビゲータのEVEです。
マイナポイントの締切が、2023年9月30日と近づいています。皆さん、手続き、お済になりましたでしょうか?まっ、国の借金を減らす観点から言ったら、もらわない人が多い方がいいのかもしれませんが、ここで、国の借金が1、2万増えたからと言って大勢には影響はないでしょう?ただ、「ちりも積もれば山となる」ということわざもありますが・・・。
[PayPayカード]
今回私は、PayPayからマイナポイントを申し込みました。その時の登録としては、銀行口座を指定するところがあったので、直接銀行からの引き落としだと思っていました。しかし、つい最近分かったこと・・・。PayPayカードというクレジットカード経由で、マイナポイントを申し込んでいたようです。
ただ、ちょっと、疑問・・・。私は、現在、社会からドロップアウトしている状態となっています。一応株式で利益を挙げようとしていますが、ロシア・ウクライナ戦争が開始される数カ月前から、決算がいいにもかかわらず、ぐんぐん株価は下がり手持ちの株は、ロシア・ウクライナ戦争以前の半分の価値になっています。途中で売れば良かったのですが、決算が良かったため、いつかは上がるだろうと甘い考えでいたため、現在のような事態を迎えています。
以上の状況から単刀直入に言うと、現在の私は、無職の上に無収入という状況です。にもかかわらず、クレジットカードが作れるなんて・・・?やるじゃん、PayPay!まっ、マイナポイントとして申し込んだので、審査を甘くしてくれたのかもしれませんが、ちょっと、驚いてしまったので、思わずブログに書いてしまいました。
[アキラとあきら]
そんな驚きがあった完全休暇中、恒例のPrime Videoを見ました。それが、「アキラとあきら」です。2017年のドラマを2022年に映画化しています。
私は、映画のほうを見ました。
期待以上に面白かったです。この作品の原作が、あの半沢直樹などの銀行にまつわる小説を書いている、池井戸潤さんの作品となります。だから、面白くないはずはないだろうとは思いましたが、予想以上に面白かったです。
内容的には、階堂彬(演:横浜流星)と山崎瑛(演:竹内涼真)の2人の運命を強く感じさせる内容となっています。少年時代、同じ銀行への入社、入社での伝説の模擬研修のバトル、そして倒産しそうな会社の社長となった階堂彬を山崎瑛が救済するなどなど・・・。その運命がドラマチックに、ひきつける内容となっていました。
ネタバレになるのでこれ以上は書きませんが、多くの人が星5つ、または4つをつけて評価しています。もし、お時間がありましたら、見てください。感動できるはずです!
[あとがき]
調子が悪かった体ですが、休んだことによりというか、多くの時間を睡眠にあてたことにより復調した感じがします。ただ、まだ体力が戻っていませんね・・・。何をするのにも疲れてしまいます。だから、何か1つ作業をするごとに1時間位休んでしまう状況です。これから、体力も取り戻していきましょう!
では、また!
■アキラとあきら(2022年映画:Amazon Prime)
https://www.amazon.co.jp/gp/video/detail/B0B7BKJ653/ref=atv_dp_share_cu_r
■アキラとあきら(2017年ドラマ:Amazon Prime)
https://www.amazon.co.jp/gp/video/detail/B07X9CJZ7Z/ref=atv_dp_share_cu_r
2023年09月20日
Salt値 〜セキュリティ研究室〜
こんにちは!
ナビゲータのEVEです。
引き続きバッチ処理システムの解析、バグ修正、バージョンアップをしています。やっぱり、問題となるのは、連想配列の部分・・・。Prototype EVEでは、連想配列を多用していて、いろいろなところでエラーが出るうえに、関数をまたぐエラーの場合、ちょっと、解析に時間がかかってしまいます。
[Prototype EVEのセキュリティ的な問題]
バッチ処理システムだけでなく、それ以外のシステムも、Prototype EVEを利用することになりそうです。ただ、セキュリティ的に何点か問題があります。
まず、1つ目は、Salt値をシステム共通のものを利用している。
Salt値の仕組みは、システムを改修する予定です。
Prototype EVEでは、ユーザが初回ログインすることにより、パスワードのハッシュ値を求め、そのハッシュ値をシステムへ登録します。Salt値は、ユーザがログインするときに、パスワードのハッシュ値とSalt値を文字列連結した値から、ハッシュ値を求める時に利用しています。ただ、今後は、そうでない運用を考えており、3つのモードを用意しようと考えています。
1つ目は、パスワードをそのままデータベースに格納するモード。これは、管理者が初期ユーザID、パスワードを登録する際に利用します。
2つ目は、従来通りの運用・・・。
3つ目は、ユーザ個別にSalt値を設定し運用する方法です。
1つ目の運用はあるかどうか不明ですが、今後ビジネス的に利用するということを考えると、こんな運用しているところありませんか?管理者がユーザIDとパスワードを登録し、そのユーザIDとパスワードをユーザに知らせます。ユーザは、初回のログインにおいて、ユーザがパスワードを入力すると、従来の流れでハッシュ値を求め、データベースにハッシュ値が登録されるという流れになります。
2つ目は、いきなり、ユーザ個別のSalt値を導入して、ログインできなくなったというのは困るので、当初は従来の運用を残します。そして、ユーザ個別に、3つ目のSalt値を利用する運用に移行するという流れにしようと考えています。
[あとがき]
現在、いろいろシステムを作ることを考えていますが、同システム自分だけでなく、多くの人に利用してもらおうと考えています。その場合、やはり注意しなければならないのが、セキュリティ・・・。せっかくそのために知識を身に着けたので、身に着けたセキュリティに加え、自分で考えたセキュリティもシステム化していきたいと思います。
以前も話しましたが、Salt値もストレッチングもセキュリティの本に書かれる前からやっていました。そういう意味では、先駆者的なことを今までしてきています。今後も、そんなシステム開発をしていきたいと考えています。
では、また!
2023年09月19日
Prototype EVEの改修状況 〜バッチ処理 プログラム研究室〜
こんにちは!
ナビゲータのEVEです。
Prototype EVEへログインでき、やっと、本格的にEVEシステムの開発に入ろうとしています。
EVEシステムの最初のプログラムは、Yahooクローニングシステム(仮称)と考えているのですが、本日は、そのクローニングシステムを動かすシステム、Prototype EVEのバッチ処理システムをPHP8で動作するように改修中です。
その過程において、PHP5では動作するのだけれど、PHP8では動作しないロジックがありました。それは、連想配列・・・・
従来は、いきなり、変数にカッコを付けて、その中に連想配列の名称を入力してもエラーにはならなかったのですが、PHP8ではそれは許されていないようです。バージョンアップにともなうエラーは本日の時点ではこのぐらいでしょうか?
$item_array = array(); ←❶新規追加部分
$item_array['element'] = 1; ←❶をしないとここでエラーになります
[Prototype EVEのバッチ処理]
以前、バッチ処理はcrontabで使用する情報を画面から入力し、その情報に基づきcrontabを作成するだけでいいから、バッチ処理を自動化するなんて簡単だなんて言った記憶がありますが、前言撤回です。このPrototype EVEのバッチ処理システムは、2013年に作ったのですが、思った以上に面倒なことをしています。
従来は、このバッチ処理システムに、PHPで作成したバッチプログラムだけを登録することを想定し製造したのですが、今回、bashで動くバッチプログラム、ウイルスチェックプログラムも画面から入力しようとしているのですが、悪戦苦闘しています。思った以上に凝った作りになっているため、解析に時間がかかっています。
現在、EVEシステムのプログラム開発仕様に基づき、各ロジックを整形しながら、解析しています。ここでがんばれば、EVEシステムでそのまま利用できるかもしれない・・・・って考えています。
[XServerでビジネスを・・・]
XServerにシステムを作ろうとした一因は、何かしらのビジネスを始めようと思ったから・・・・。最初は、プログラミングの教育システムを作ろうとしたのですが、いろいろなブラウザを使用しているユーザーに使い勝手のいいプログラムを作る自信がなくなったため、諦めました。リソース不足です・・・。ただ、ビジネスはあきらめていません。現在、Prototype EVEの仕様を確認しながら、どんなことができるか考えている最中です。これから、いろいろシステムを作っていくのですが、先立つものが必要です。
お金を払ってもいいと思う、質のいいシステムを作りたいと思いますそのときは、EVEシステムがある程度完成している時でしょう?
[あとがき]
よく考えたら、ウイルスチェックバッチ処理もPHPのプログラムから実行したほうがいいかもしれませんね?PHPのプログラムから実行すれば、制御が簡単ですし、詳細なログも取ることが可能になります。ただ、PHPからシェルを起動するのは、第三者の悪用を考えるとできるだけ避けたいところです。
シェルからバッチ処理が実行されたら、自分のメールアドレスにメールを送信するなど対策はあるのですが、メールを受け取っても気づかない場合もあるし、悩ましいところです。
まっ、とりあえず、Prototype EVEのバッチ処理システムでbashを起動できるように仕様を変更はしたいと思います。
では、また!
2023年09月16日
Prototype EVE管理システムへのログイン成功 〜プログラム研究室〜
こんにちは!
ナビゲータのEVEです。
お休みを返上しブログを更新します。
っというのは、やっと、Prototype EVEの管理システムへログインできました。
[今日の問題]
発生しているエラーについて、原因特定に困っているものについては、昨日までにやっつけていたので、今日は、ロジックをひたすら追っかけました。
結局問題となった箇所は、Prototype EVEのフレームワークから、Prototype EVEへの返却値が以前と変わったことによる不整合・・・。EVEシステム、New Prototype EVEはオブジェクト指向のプログラムで、返却値は常に、tureまたはfalseとしています。しかし、Prototype EVEのフレームワークでは、正常時は、true、""だったらり、異常時は、エラーメッセージ、エラーステータス、falseだったりと、各プログラムでまちまちだったので、そのまちまちの部分を揃えるのに時間がかかりました。結局旧ソースを右画面に、新ソースを左画面に持ってきて、見比べながら修正し完了しました。
[ログイン後のエラー]
ログイン後、エラー頻発です。原因は、使用関数を格納しているファイルのインポートする部分・・・。
PHP5までは、フレーム分割された分割ごとに単独で認識していたようなのですが、PHP8では、フレーム全体でインポートの有無を確認しているようです。早速3分割されたログイン直後の画面のプログラムインポートを、requireからrequire_onceへ変更しました。
[今後の予定]
とりあえず、明日は、Prototype EVEの管理システム群をいっきにrequireからrequire_onceへ変更します。直近使用するバッチ管理システムを動かしてみて、使えるようだったら、Yahooクローニングシステムの製造に入ります。
現在、ログイン直後の画面から各システムへ変遷しようとクリックすると、とりあえず、エラーメッセージが表示される状態なので、どんな修正になるのか想像できません。まっ、今日のところは、一区切りついたことに喜びを感じながら終えたいと思います。
[あとがき]
片手間でやっていたということもありますが、時間がかかりました。最後は、がまんできず、かかりっきりでプログラム修正することにより、やり切りました。
基本プログラミングは好きなのですが、わけの分からなエラーメッセージで作業が止まる場合は、ストレスがたまります。
ただ、今まで、できなかったことはありません。1996年以前なら分かりませんが、今インターネットで調べれば、何かしらの答え、ヒントがありますから非常に助かります。
そんなインターネット時代に感謝です。
では、また!
2023年09月15日
ログインの挑戦 〜プログラム研究室〜
こんにちは!
ナビゲータのEVEです。
今日は、Prototype EVEへのログインの進捗がほしいということで、朝からプログラムをいじっていました。ただ、以下のメッセージのために前進できません。
#Uncaught Error: Call to a member function
インターネットで色々調べてみたところ、Callするプログラム内で致命的なエラーが発生しているか、Callするプログラムが定義されていないとのこと・・・。Callするプログラムがないということはないと思うのだが・・・?
[システム呼び出し間違い?]
基本Prototype EVEから呼び出すメソッドは、New Prototype EVEなのですが、勘違いにより、EVEシステムが呼び出されていたことが以前ありました。New Prototype EVEはEVEシステムのメソッドを継承しているのですが、テーブルロックやテーブルアンロックのように、New Prototype EVEに定義されているけれど、EVEシステムには定義されていないメソッドは複数あります。それかもしれないっと思い、プログラム1つ1つ確認してみましたが、違いました。残念・・・。
[セッション変数の定義]
Prototype EVEでは、New Prototype EVEで作成したDBインスタンスをセッション変数にセットしプログラム間で引き継いでいます。同一セッションでしたいなどのニーズがあるので、この方法採用したのですが、複雑になりすぎました。なんか、簡単にバグを見つける方法がないかな〜っていうことで、いろいろ考えたのですが、思いつかなかったため、まず最初にエラーとなっているプログラムファイルを単独で動作させて見て原因を探してみました。そうしたところ、エラーにならない・・・?そうだよね・・・。単体でデバックしてから結合しているんだから、単体ではエラーにならないよね・・・。
結局長いプログラムを順をおっていったところ、やっと分かりました。セッション変数を受渡しをしている各プログラムの共通の部分で、誤った使い方をしていました。共通と言っても同じロジックを各プログラムでもっていたので、1つ1つプログラムの当該箇所を検索し修正し先ほど完了しました。
普通共通関数などにしておくものなのですが、開発当初はこんなに多く使われていると想定していなかったため、各プログラムに同じロジックを作り込むことになってしまいました。それと、10行程度のロジックだしね・・・。ただ、保守性も考えたら、動くことを確認したら共通化することを検討したいと思います。
[テーブルロック、テーブルアンロック]
テーブルロックメソッドとテーブルアンロックメソッドは、単体で試験を終え今回初めて結合したのですが、以上のエラーがなくなっても、同ロジックでエラーになります。またか・・・、って感じなのですが、これは、ケアレスミス・・・。テーブルロック、テーブルアンロックに使用するのは、データベース接続変数なのですが、ステートメントで、テーブルロック、テーブルアンロックをしようとしていました(笑)。単体でエラーにならなかったのはなぜなんだろうか?
[あとがき]
以上の作業を本日実施し、ログイン画面でエラーにならないところまで確認できました。そんなに時間をかけるつもりはなかったのですが、朝から夕方までかかってしまいました。本日の予定がすべて飛んでいます。まっ、進捗欲しかったから仕方がないんだけれど・・・。ただ、まだログインまでできていないのは残念です。
ブログですが、日曜日までお休みを頂きます。次ブログ更新は、日曜日もしかしたら月曜日になるかもしれません。
では、また!
2023年09月12日
911 〜CoffeeTime〜
こんにちは!
ナビゲータのEVEです。
2023年9月8日にブログをアップロードしてから、頭痛がひどくなりしばらく何もせず、寝ては食事をしてという生活をしていました。9月7日までは何となく頭が痛く体がだるいと言った症状だったのですが、9月8日以降は本格的な風邪の症状です。頭痛、咳と喉の痛みがひどい状況でした。それから3日過ぎ、頭の激痛がなくなり、咳もほとんど出なくなりました。喉の痛みも何となく痛いかなっていうレベルになったのですが、現在椅子に座ってブログを一太郎にタイピングしているのですが、じっとりと汗をかいています。クーラーを付けているんですけれどね・・・?やっぱり、風邪のせいでしょうか?
具合がここまで悪くなったのは本当に久しぶりです。だから、本当に、健康って大事だなって感じています。
[9月11日]
昨日、9月11日という日は、今でも記憶に残っていますが、ワールドトレードセンターへハイジャックされた2機の旅客機が突っ込み大勢の人が死んだ日になります。もう、あれから、20年以上経ったことに、このブログをつけている現在驚いています。
私はその当時、SCMシステムを作っていました。客先から誰もいない事務所に1人で戻ってきたのは22時過ぎだったと記憶しています。そして、当日の事後処理を終え、くつろいでから帰ろうと休憩室でテレビを付けたときは、多分23時過ぎでした。
付けたテレビにいきなり、ビルディングに飛行機が突っ込んでいく映像が映し出されました。今日は、23時過ぎまで映画やっているのかなって思ったその映像は、後に911と言われるテロリストによる攻撃の映像でした。その映像を見た直後にやったこと・・・。それは、アメリカにいる友人とコンタクトを取ること・・・。その当時まだチャットと呼ばれるインターネットの連絡手段が残っており、そのチャットによりシアトルで翻訳の仕事をしているリサと連絡を試みました。
チャットとは、ポケベルを鳴らすように便利に呼び出せるモノではないので、連絡を取ることができる保証はなかったのですが、一声、声をかけたら話すことができました。声と言っても、ウェッブの画面から文字列を打ち込んでしゃべるのですが、その打ち込まれた文字列からかなり興奮していることを感じることができました。
リサは、テレビから流れる情報を基に現状を解説してくれたのですが、正直言ってよくわかりませんでした。ただ、混乱しているその状況は、その会話から分かりました。
[あとがき]
私の2001年9月11日は、以上のような感じでした。仕事自体もかなりこんつめてやっていたこともあり、この時の記憶は鮮明に覚えています。
後に、911のリポートを見たのですが、リサはテレビで流れている状況について正しく解説してくれたようです。そんなリサとも、彼女が結婚してから疎遠になり、現在は連絡を取っていません。
他人事ではあるのですが、非常に興奮し悲しかった事件でした。御巣鷹山の日航機墜落とかいろいろな事故とか事件がありましたが、この事件は他人事ではないような気がしています。なんか、当事者意識がありました。
多分この事件は一生忘れることはないでしょう?
では、また!
2023年09月08日
New Prototype EVEテーブル、テーブルアンロック 〜プログラム研究室〜
こんにちは!
ナビゲータのEVEです。
健康が重要と、2日間連続して書いたのに、今日頭痛と咳です・・・。
今朝寒かったですよね???台風が来ているのだから、天候が悪くなり気温が下がりそうだということが分かっていたのに、起きたら裸でした・・・。昨日中小企業診断士試験の結果が判明し今日から仕切り直しだと思っていたのに残念です。
[プログラム製造]
頭痛と咳が出ていても、プログラムは製造可能です。中小企業診断士の勉強とか何か覚えるとか理解しなければいけない問題を解いているときは致命的なのですが、プログラム製造はできてしまうのですよね・・・?ということで、今日はプログラム製造しては休み、休んでいる最中は映画を見るなどをしていました。
[PHP8テーブルロック、テーブルアンロック]
プログラム製造なのですが、先日に引き続きテーブルロック、テーブルアンロックのロジックをプログラミングしています。最初、EVEシステムに追加するという話をしていたのですが、検討の結果、New Prototype EVEに追加することにしました。
はじめて私のブログを見る方もいると思うので、Prototype EVE、New Prototype EVE、そしてEVEシステムの関係を書くと、Prototype EVEは、2004年から製造を開始したシステムで、つい最近2020年まで機能を追加していました。ただ、Prototype EVEは、PHP5上で製造したため、PHPの最新版Version8の機能は使えません。そのため、当初は、Prototype EVEシステムをバージョンアップすることにしたのですが、PHP5からPHP8へバージョンアップするには、データベース周りのロジックを大幅に変更しなければなりません。加えて、Prototype EVEは2004年から製造している古いシステムなので、調査をした結果、セキュリティ、ロジック等古く使えないということが判明したため、この段階でPrototype EVEを廃棄することにしました。以上の検討を経て、EVEシステムを新規で製造することにしたのですが、EVEシステムを製造するに際し、今まで便利に利用していたデバックシステム等が利用できないことに不便さを感じ、Prototype EVEのロジックを変更することなく、PHP8にバージョンアップすることにしました。そのために、EVEシステムとPrototype EVEシステムのミドルウェア、New Prototype EVEを製造しているという状況です。EVEシステムはオブジェクト指向で作ったシステムで、New Prototype EVEは、EVEシステムが親で、New Prototype EVEが子といった関係になります。
[New Prototype EVE=ミドルウェアの開発のメリット]
この開発手法のメリットは、新システム、EVEシステムでは、Protype EVEを全く意識することなく最新のロジックで記述できるということです。デメリットは、本来作る必要がない、New Prototype EVEを製造しなくてはいけないということなのですが、New Prototype EVEを製造する部分は、現在の見通しでは、データベース周りだけで済みそうです。EVEシステム、New Prototype EVEのデータベース関連プログラムの製造は終わりPrototype EVEへのログインを試みている状況です。
その最後の難関が、データベースロックとデータベースアンロック・・・。今まで、EVEシステムで使用しないから、Prototype EVEシステムでその機能を実現しようとしていましたが、よく考えたら、当初は、Prototype EVE上で新規関数を作るということは想定していませんでした。その当初の考え方に則ったら、New Prototype EVEに製造し、その製造したメソッドをPrototype EVEから呼び出すという流れが適切だと考え、現在対応中です・・・・。前回は、EVEシステムと言っていましたが・・・。検討不足でした。
[あとがき]
以上の検討不足は他の部分にもおよび現在まだログインテストまで、できていない状態です。もし可能なら、このブログアップロード後実施したいと思います。
季節の変わり目は本当に健康維持が難しい時期です。皆様も、お体にお気をつけください。
では、また!
2023年09月05日
テーブルロック 〜プログラム研究室〜
こんにちは!
ナビゲータのEVEです。
中小企業診断士試験当日から体の調子が悪いと昨日まで言い続けていましたが、原因が分かりました。状況証拠ですが、多分コロナです。状況証拠というのは、検査をしていないから・・・。治ってから病院にいくのは間抜けですし、まっ、多分そうだっただろうと言うことでこれで終わりにしたいと思います。
試験当日までの約3、4週間、睡眠時間4〜5時間で生活し、試験2日目の前日は、3時間ぐらいで試験会場に向かったため、多分寝不足だとばかり思っていたのですが・・・。
コロナに感染したのは多分中小企業診断士試験の1日目・・・。試験2日目には頭痛がする上に目がちかちかしていましたからね・・・。健康な生活を送っていないと病気だと言うことさえ気づかないと言うことなのでしょう?
新型コロナの病状を調べて見ると、潜伏期間が1〜14日間で、感染から5〜6日で発症するというのですから、感染した翌日に発症したということになります。現在家でほとんどの時間を過ごしているため中小企業診断士試験ぐらいしか感染した場所がおもいつきません。
体が弱っていたせいでしょうか?発症までの時間が短すぎます。もしかしたら、新型コロナではないかもしれませんが、はじめての症状だったためそんなことを考えてしまいました。
昨日のブログにも書きましたが、やはり、健康は大事です。
[プログラム開発]
テーブルアンロックについて調べて見ましたが、やはり、分かりませんでした。
そこでどうするのか検討したのですが、今までEVEシステムではテーブルロックは使用しない予定なので、Prototype EVE上で実現しようかと考えていましたが、EVEシステムのデータベース関連クラスにテーブルロックと、テーブルアンロックのメソッドを追加することにしました。ChatGPTとかBingからの解答ではできないはずがないのです。
そのため、実処理を行う、EVEシステムに追加し、その関数をPrototype EVEから呼びだすことにしました。
本日テーブルロックメソッドを製造しました。明日試験をしようかなって考えています。
[テーブルロックの仕様]
PHP8、MySQL、PDOの組合せでは、以下のモードが利用可能だと、ChatGPTは言っています。
MySQLの LOCK TABLES ステートメントには、テーブルをロックするためのさまざまなモードがあります。一般的なモードには以下のものがあります。
❶READ
テーブルを読み取り専用でロックします。他のクライアントは読み取りロックを取得できますが、書き込みロックを取得することはできません。これは複数のクライアントが同時にテーブルを読み取ることを許可しますが、書き込み操作をブロックします。
❷WRITE
テーブルを書き込み専用でロックします。他のクライアントは読み取りも書き込みもできません。これはテーブルに対する排他的なロックです。
❸LOW_PRIORITY_WRITE
低優先度の書き込みロックを取得します。他のクライアントが読み取りロックを取得している場合、低優先度の書き込みロックを取得しようとするクライアントは待機します。一般的な書き込みロックよりも低い優先度です。
❹HIGH_PRIORITY_WRITE
高優先度の書き込みロックを取得します。他のクライアントが読み取りロックまたは低優先度の書き込みロックを取得している場合でも、高優先度の書き込みロックを取得しようとするクライアントは他のクライアントをブロックします。
これらのモードを使用して、テーブルに対する適切なロックを取得できます。選択肢は、特定のユースケースやアプリケーションの要件に応じて異なる場合があります。ロックモードを選択する際には、同時実行性やパフォーマンスへの影響を検討することが重要です。
なお、ChatGPTがいうには、トランザクションと併用はできないようです。使用するにしても特殊な状況でしか利用できず、今回のプロジェクトならPrototype EVEで利用するぐらいしかないと思われます。
[あとがき]
Prototype EVEの改修時以外しか利用できないとは思いましたが、テーブルロック、テーブルアンロックの機能を十二分に利用できるようにメソッドは作成します。どこで何があるか分かりませんからね・・・。今日作ったテーブルロックメソッドも、想定以上に長くなってしまいました。
多分公開してもテーブルロックのロジックは利用されないと思われるので、公開しませんが、ご要望がありましたら、公開します。
では、また!
2023年09月04日
Prototype EVEへのログイン 〜プログラミング研究室〜
こんにちは!
ナビゲータのEVEです。
やっと、プログラムを製造できるまで体が復調しました。体というか、頭と言ったらいいでしょうか?最初寝不足かもしれないと話していたのは、そのせいです。ただ、この1週間の観察から風邪だと判断しました。今日のような雨模様の日などをエアコンを使わず、汗を流しながら、デスクに向かっています。
そのかいもあって、やっと復活です。まだ、100%ではないのですが、プログラムを見ても頭痛がするなんてことはなくなりました。20日間以上ですか・・・。この症状・・・。
改めて、健康って大事だなって感じています。
[Prototype EVEの修正状況]
PHP5からPHP8へデータベースへのアクセス方法を変更し、システムへのログインを試みていますが、warningとfatal errorの嵐です。データベースのロジックを変えただけだと思っても、その判定方法とかいろいろ変えているので、以前のロジックが再現できていないようで、悪戦苦闘しています。本日の、PHP5とPHP8との違いによりエラーになった個所は以下の通りです。
//SQL文の作成
❶$sql = "select * from a_table";
//クエリーの取得
❷$row = mysql_query( $p_sql );
//検索結果の判定
❸$r = mysql_error();
//エラーが発生しているかどうか判定
❹if ( $r != "" ) {
//エラーが発生している場合
return "エラーが発生しています。";
}
//検索結果をサーバーサイト変数へ設定します
❺$_SESSION['sb'] = $row['b'];
以上のロジックにおいて、検索結果が0件の場合、PHP5では❺においてエラーになりませんが、❷〜❹のロジックをPHP8に書き換えたうえで実行するとPHP8では❺がエラーになります。まっ、このようなケースの場合、普通エラーにすべきだし、プログラミングにおいて配慮が足りないな〜って感じがします。以上のエラーロジックを本日修正し完了しました。
そして、以前使っていた、session_unregisterがPHP8では利用できなくなりました。そのロジックがあるとエラーが発生します。そのため、unsetに修正しました。変数を削除するという意味では同じかな?ただ、session_unregisterと違いunsetはセッション変数だということを明示的に書かないと通常の変数の値が削除されるので、その辺は注意が必要です。
[あとがき]
以上の修正が終わり、やっと、ログイン後の画面が表示されたのですが、1箇所warningがあります。そう、データベースのunlockの部分・・・。どのサイトでも利用可能といっているので、使い方が悪いのだと思います。unlock以外は、warningとfatal errorがなくなったので、明日は本腰を入れて調査します。進捗は現在2日遅れです。まだ、取り返すことができそうです。
では、また!
2023年09月01日
情報処理安全確保支援士試験午前U 〜セキュリティ研究室〜
こんにちは!
ナビゲータのEVEです。
2024年度版 ALL IN ONE パーフェクトマスター 情報処理安全確保支援士 [ TAC株式会社(情報処理講座) ] 価格:3,080円 |
昨日、情報処理安全確保支援士の講習を終えたのですが、その講習には技術的な話があまり書いてありません。概念的な話題が主として書いてありました。その講習を受けながら、思い出したのが、中小企業診断士の経営情報システムの問題・・・。
例えですが、中小企業診断士の経営情報システムの問題は、例年、ITパスポートのような問題が出題されていたのですが、今年からいきなり情報処理安全確保支援士の試験で出題されるような問題になりました。試験当時のブログでも書きましたが、最初の数問は冷や汗です。例えではありますが、その当時の認識では、中小企業診断士で出題される問題は、ITパスポートレベルの問題なので、勉強せずとも合格点はとれるだろうっと思っていたところに、いきなり情報処理安全確保支援士で受けるような難しいと思えるような問題が出題されるのですから・・・。
受験後のブログでも書きましたが、IPAの試験をまた受験しようと思っています。次に受験するのはネットワークスペシャリストかなって思っています。ネットワークってセキュリティとは切っても切れない関係にあり、情報処理安全確保支援士の試験にも頻出されています。
[情報処理安全確保支援士 午前U]
情報処理安全確保支援士の試験は、午前T、午前U、午後T、午後Uと4分野に分かれ出題されていましたが、その中でも午前Uの問題は比較的簡単です。午前T(ITストラテジスト試験、システムアーキテクト試験、ネットワークスペシャリスト、ITサービスマネジメント、情報処理安全確保支援士共通試験)の方が難しいぐらいです。ただ、セキュリティに特化した問題があり、慣れが必要かもしれません。そのような問題を、平成21年〜令和4年春まで解いていたのですが、令和4年秋から解いていなかったので、ネットワークスペシャリストの試験を受験する前に、トライしてみることにしました。
[令和4年秋 試験結果]
結果は72点でした。微妙です・・・。まっ、過去問を解いていても、80点以下を取ることはあるのですが、普通は80点以上です・・・。80点以上が普通というのは、もう、過去形かもしれません・・・。ポカして間違った問題もあるのですが、知らなくて、消去法で解いた問題もあるので、まっ、この点数が、現在の私の実力なのでしょう?
[今後の予定]
とりあえず、以下の情報処理安全確保支援士の問題は解きたいと思います。
午前U 令和5年春
午前T 令和4年秋、令和5年春
午後T 令和5年春
午後U 令和5年春
令和4年の午後T、Uは時間があったらやりたいと思います。午後Tは隙間時間で出来るのですが、午後Uはガッツリと時間が取られるので・・・。
数日後になりますが、間違った問題について解説等したいと思います。
私が過去にどんな感じで問題を解いているのかは、YouTubeで公開していますので、もし、よろしければご覧下さい。慣れてくると、YouTubeの動画でみるのと同じぐらいの感じで解くことができます。
まっ、慣れって言うことですかね?
では、また!!!
■ゼロからはじめるシステム開発(YouTube)
https://www.youtube.com/channel/UCnmeBUw8wGo34tttvxf0J-Q