林田力

ノンフィクション著者 『東急不動産だまし売り裁判 こうして勝った』 マンションだまし売り被害を消費者契約法で解決。何者のだましの堤防も崩す/Amazon Kindle出版/林田医療裁判/中野相続裁判/二子玉川再開発問題/SDGs/No Drug/書評/マンガ

ノンフィクション著者。『東急不動産だまし売り裁判 こうして勝った』マンションだまし売り被害を消費者契約法で解決。何者もだまし売りのない世界へ。だまし売りNoでSDGs。消費者の堤防/Amazon Kindle出版/林田医療裁判/中野相続裁判/二子玉川再開発問題/書評/マンガ/YouTube
http://www.hayariki.net/
林田力Amazon
https://www.amazon.co.jp/%E6%9E%97%E7%94%B0-%E5%8A%9B/e/B00493GN28
林田力Twitter
https://twitter.com/hayachikara



IT

AWS Service Catalog

AWS Service Catalog はクラウドリソースのプロビジョニング用のサービス。エンドユーザーがIT serviceを自分で管理し、デプロイできるようにする。インフラ管理者が組織内での利用を許可するAWS serviceをカタログ化し、これにより組織内で利用可能なサービスを制限することでガバナンスを強化する。
サービスには仮想マシンイメージ、サーバ、ソフトウェア、DBから包括的な多層アプリケーションアーキテクチャまで様々なものが含まれる。利用できるIT serviceとそのバージョンや、提供されたサービスでの設定内容を制御できる。個人やグループ別にアクセス許可を付与する対象を管理できる。
IT管理者がエンドユーザー向けのクラウドリソースを全てプロビジョニングする必要はない。エンドユーザーは、日々の業務を遂行するために使用しなければならない承認済みIIT serviceを探して、自分でデプロイする。組織によって設定された制約に従い、必要な承認済みのサービスのみをデプロイする。

Service Catalogの利用手順は以下。
組織内で利用可能なAWSサービスの環境を構築するためのCloudFormation templateを作成する。
ポートフォリオという論理的なリソースを作成する。
製品という論理的なリソースを作成し、関連するCloudFormation templateを紐づけ、グルーピングする。
このポートフォリオの単位で組織内のエンドユーザーに使用許可を与え、利用可能なAWSサービスを制限できる。エンドユーザーはポートフォリオに含まれる製品から必要なものを選択し、製品経由でCloudFormationテンプレートを実行し、必要なAWSインフラを構築できる。
Service Catalogの起動制約には、エンドユーザーが製品を起動する時にAWS Service Catalog が引き受ける AWS IAM roleを指定する。起動の制約はポートフォリオ内の製品に関連付けられる。起動制約がない場合、エンドユーザーは各自の IAM 認証情報を使用して製品を起動し、管理する。
Service Catalog はStack Set Instance操作をサポートする。利用者はAWS Service Catalog管理者が指定した制約内で、Stack Set の個々のInstanceを制御できる。
Service Catalog の AppRegistry は、AWSでリソースコレクションを整理し、アプリケーションメタデータを管理するリポジトリを提供する。管理者は Service Catalog consoleを使用して、アプリケーション、アプリケーションメタデータ、リソースの関連付けを管理できる。

さいたま市のDX

埼玉県さいたま市はDXに積極的な姿勢を出している。さいたま市は2020年10月22日、さいたま市デジタルトランスフォーメーション推進本部の設置を発表した。そこでは以下の4つのワーキンググループ設置を予定する。
① 窓口オンライン化WG(電子申請、手数料納付のキャッシュレス化等)
② テレワークWG(在宅勤務、モバイルワーク、サテライトオフィス等)
③ データ活用WG(シティスタット、EBPM等)
④ 業務効率化WG(AI、RPA、AI-OCRの導入等)
清水勇人市長は同日の記者会見で「法改正が必要なもの以外、年度内をめどにハンコを必要としない手続きにしたい」と表明した(「さいたま市がDX推進本部 業務効率化を推進」日本経済新聞2020年10月22日)。

清水市長は令和3年度施政方針でデジタルファーストを掲げる。「行政分野における制度・業務・手続等をデジタルを前提としたものに抜本的に見直す「デジタルファースト」な行政運営への転換を図り、行政手続の原則オンライン化、テレワークの推進などに取り組んでまいります」
さいたま市の2021年度の予算案はDX投資に重点配分する。前年度の2.2倍にあたる12億円を振り向けた(「さいたま市3年度予算案、最大6118億円 コロナ、デジタル化重点」産経新聞2021年1月29日)。
窓口手続きのオンライン化を拡充する。市税の納付にスマートフォンアプリを活用したキャッシュレス決済を導入する。市内の中小企業に対してもDXの推進による生産性向上の支援を強化する(「さいたま市20年度予算案8.7%増 コロナ対策やDX推進」日本経済新聞2021年1月29日)。

「さいたま市デジタルトランスフォーメーション(DX)推進本部」は2021年4月5日に令和3年度第1回会議を開催した。ここで、さいたま市DXコンセプトとして「さいたまデジタル八策」を定めた。
(1) さいたま市の全ての手続きをデジタルへ
(2) デジタルで支える新たなさいたま市民生活へ
(3) 市民のデジタルへの道を拓くさいたま市へ
(4) 市民の信頼の下、データが変えていくさいたま市へ
(5) 災害にも強いデジタルを安心して使えるさいたま市へ
(6) 様々な人と、ともにデジタル化を進めるさいたま市へ
(7) デジタルで市民や世界とつながるさいたま市へ
(8) デジタル時代の新たなさいたま市役所へ

さいたま市浦和美園地区(一般社団法人美園タウンマネジメント)のデータ利活用型「スマートシティさいたまモデル」構築事業は総務省の平成29年度データ利活用型スマートシティに採択。まちのデータ(健康・モビリティ・購買)の収集・管理・活用を可能とする情報共通基盤Platformを構築し、各種生活支援サービスをワンストップで提供する。ライフスタイルやライフステージに応じた生活環境の実現(子育て世帯のゆとりの時間の創出等)と社会コストの最適化を図る。
また、サービス提供者が、事業規模を問わず本システムに参画できるオープンなシステムとし、新たなビジネス・コラボレーションの創出、地域経済活性化を図る。健康、見守り、熱中症対策、インバウンド、市の総合サービス等をテレビ等で情報発信する「まちのかわら版」を実施。

AWS WAF; Web Application Firewall

Web Application FirewallはWeb Applicationの通信をフィルター、監視、ブロックする機能。アプリケーションの可用性やセキュリティ侵害、リソースの過剰消費に影響を及ぼす可能性のある一般的な攻撃パターンをブロックする。

アプリケーションレベルで通信の中身を解析し、特定の条件にマッチする通信を検知・遮断する点が一般のFirewallやIPSと異なる。SQLインジェクションやクロスサイトスクリプティングなども対象とする。

AWS WAFはAWSのWAFサービス。Amazon CloudFront distribution, Amazon API Gateway REST API, Application Load Balancer, AWS AppSync GraphQL APIに転送されるHTTP(S)リクエストをモニタリングする。

AWS WAFはリクエスト本文の JSON コンテンツを解釈できる。JSONコンテンツの特定のキーまたは値をAWS WAF ruleで検査する。AWS WAFは、AWS WAF APIかAWS Management Consoleから設定する。

AWS WAFでは、ラベルを生成し、それらのラベルに基づいて WAF ruleをカスタマイズできる。ルールに関連付けられているアクションに関係なく、WAF ruleがリクエストに一致した時に、ウェブリクエストに説明ラベルを追加するように WAF を設定できる。

後続の WAF ruleでこれらのラベルの存在を確認し、他の WAF ruleと組み合わせて、ラベルを含むウェブリクエストに対してアクションを実行することができる。ラベルを作成すると、対応する CloudWatch メトリクスも生成され、可視性を向上させるためにラベルが WAF ログに追加される。

AWS WAF Bot Controlはボットトラフィックの可視化し、制御するManaged rule group。スクレーパー、スキャナー、クローラーなどの普及しているボットを簡単に監視、ブロック、レート制限できる。また、ステータスモニターや検索エンジンなどの一般的なボットを許可することもできる。Bot Control Managed rule groupを、WAFの他のManaged ruleや独自のCustom WAF ruleと一緒に追加し、アプリケーションを保護できる。

AWS Systems Manager Run Command

AWS Systems Manager Run Command はEC2 Instanceをリモートから管理する。Run CommandはAWS Console, AWS Command Line Interface, AWS Tools for Windows PowerShell, AWS SDKから使用できる。

インバウンドポートを開く必要はなく、アウトバウンドHTTPS上で完全に動作する。アウトバウンドHTTPSはデフォルトでセキュリティグループに対して開かれている。SSHやリモートPowerShellを使用する必要がなくなり、管理タスクを簡素化できる。

Run Commandでコマンドを実行する場合はパスワードなど機密情報を含めてはならない。Account内の全てのSystems Manager API Activityは、Amazon S3 BucketのAWS CloudTrail Logに記録される。つまり、そのS3 Bucketへのアクセス権を持つユーザーは、これらの秘密のプレーンテキスト値を表示できる。

AWS Systems Manager ConsoleからInstanceのログ出力を表示すると、Run Command 呼び出しのステップ毎に出力ログとエラーログが個別に表示されます。各ビューで [ダウンロード] を選択すると、Consoleから出力ログやエラーログをダウンロードできる。

CSVと二重引用符

RFC4180によると、二重引用符を含む場合は二重引用符で括らなければならず、二重引用符で括る場合、項目内の二重引用符はエスケープしなければならないとあります。
https://www.ietf.org/rfc/rfc4180.txt

6. Fields containing line breaks (CRLF), double quotes, and commas
should be enclosed in double-quotes. For example:

"aaa","b CRLF
bb","ccc" CRLF
zzz,yyy,xxx

7. If double-quotes are used to enclose fields, then a double-quote
appearing inside a field must be escaped by preceding it with
another double quote. For example:

"aaa","b""bb","ccc"

Amazon Comprehendで #鬼滅の刃 十二鬼月

Amazon Comprehendで『鬼滅の刃』十二鬼月のセリフを感情分析した。
返す言葉もない。産屋敷、巧妙に姿を隠している
{
"Sentiment": {
"Sentiment": "NEGATIVE",
"SentimentScore": {
"Positive": 0.06865107268095016,
"Negative": 0.9070879817008972,
"Neutral": 0.02417997643351555,
"Mixed": 0.00008098904072539881
}
}
}

俺は探知探索が不得意だからなあ。いかがしたものか
{
"Sentiment": {
"Sentiment": "NEGATIVE",
"SentimentScore": {
"Positive": 0.0007019888143986464,
"Negative": 0.8110324740409851,
"Neutral": 0.18781842291355133,
"Mixed": 0.000447125785285607
}
}
}

ヒイイッ・・・お許しくださいませ。どうかどうか
{
"Sentiment": {
"Sentiment": "NEUTRAL",
"SentimentScore": {
"Positive": 0.023476356640458107,
"Negative": 0.01578143611550331,
"Neutral": 0.9605924487113953,
"Mixed": 0.00014972857024986297
}
}
}

貴方様の望みに一歩近づくための情報を私は掴みました。ほんの今しがた
{
"Sentiment": {
"Sentiment": "NEGATIVE",
"SentimentScore": {
"Positive": 0.03260984644293785,
"Negative": 0.5348228812217712,
"Neutral": 0.4322631359100342,
"Mixed": 0.00030410115141421556
}
}
}


そんなことを俺達に言われても。
{
"Sentiment": {
"Sentiment": "NEUTRAL",
"SentimentScore": {
"Positive": 0.04827931150794029,
"Negative": 0.04862836003303528,
"Neutral": 0.9030734896659851,
"Mixed": 0.000018875258319894783
}
}
}

いいえ思っていません。私はあなた様の為に命をかけて戦います。
{
"Sentiment": {
"Sentiment": "NEGATIVE",
"SentimentScore": {
"Positive": 0.008449392393231392,
"Negative": 0.5236619710922241,
"Neutral": 0.467828631401062,
"Mixed": 0.00005997609696350992
}
}
}

Digital Transformationの具体的内容

DX; Digital Transformationの具体的内容は論者によってさまざまである。日興アセットマネジメントのデジタル・トランスフォーメーション株式ファンドはゼロ・コンタクト・ビジネス(非接触型ビジネス)にフォーカスしている。非接触型ビジネスを行う企業の株式に投資する。非接触型ビジネスの例として、「リモートワークやオンラインショッピング、オンライン診療」を挙げる。
https://www.nikkoam.com/fund/detail/654700
城西大学(埼玉県坂戸市)は2021年4月から数理・データサイエンスセンターを開設し、AIなどデータサイエンスの研究を行う。このような研究分野は需要のある大学になるだろう。

SQL Server と Azure SQL

SQL Server 用に構築されたアプリケーションは、Azure Synapse 専用 SQL プールとシームレスに連携します。 ただし、SQL Server で一般的に使用されている機能と言語要素が Azure Synapse で使用できなかったり、異なる動作をしたりする場合があります。
https://docs.microsoft.com/ja-jp/azure/synapse-analytics/sql-data-warehouse/sql-data-warehouse-partner-compatibility-issues

SQL Server と Azure SQL Managed Instance での T-SQL の相違点
https://github.com/MicrosoftDocs/azure-docs.ja-jp/blob/master/articles/azure-sql/managed-instance/transact-sql-tsql-differences-sql-server.md
互換性証明書
https://docs.microsoft.com/ja-jp/sql/database-engine/install-windows/compatibility-certification?view=sql-server-ver15
ALTER DATABASE (Transact-SQL) 互換性レベル
https://docs.microsoft.com/ja-jp/sql/t-sql/statements/alter-database-transact-sql-compatibility-level?view=sql-server-ver15

AWS Glue DataBrew

AWS Glue DataBrewはAWSのビジュアルデータ準備ツール。データプロファイル、データクレンジング、データリネージュ機能がある。データのクリーニングと正規化を迅速にする。コードを記述することなく、データをクリーンアップし正規化する。GlueとBrewで韻を踏んでいるのだろうか。
AWS Glueはコーディング前提のサービスであり、既存ETLからのシフトにはハードルがある。これに対してGlue DataBrewはビジュアル操作を強調しており、既存のデータプロファイリングやクレンジングの市場に影響を与えそうである。
Glue DataBrewはデータセット内のデータを視覚的に探索、把握、統合、クリーンアップ、正規化するためのプロジェクトを作成する。複数のデータセットをマージしたり結合したりできる。データの系統を視覚的にマッピングして、データが通過した様々なデータソースと変換ステップをビジュアルで確認する。
コンソールからは値の分布やヒストグラム、箱ひげ図などでデータの異常を特定できる。データ全体のなかで重複している値や欠けているデータの量、データの分散量(カーディナリティ)、分散の様子、ユニーク値にはどんな値があるかがビジュアルに表示される。
AWS Glue DataBrewではプロファイルジョブを実行して 列レベルのカーディナリティ(値の種類の絶対数)、数値的相関、一意の値、標準偏差などのデータ品質統計を自動生成できる。この際に分析するデータセットのサイズを設定することができる。非常に大きいデータセットの場合に一部のデータに対してプロファイルを実行して、結果を素早く取得することができる。
カーディナリティは項目の値の絶対数である。性別ならば2である。社員番号ならば社員数だけある。カーディナリティが低いとは、カラムの値の種類がレコード数に比べて少ないことを意味する。項目内の要素の重複が多くなる。

Webブラウザの「既定のアプリ」

Webブラウザの「既定のアプリ」がInternet Explorerになっていました。
メール本文のURLをクリックすると、Internet Explorerが開くようになっていました。
しかし、Internet Explorerは古いブラウザなので、自動的にEdgeという新しいブラウザで表示されるようになっていました。
このため、自分ではInternet Explorerを開いたつもりがなくても開かれます。Edgeを閉じた後もInternet Explorerは閉じていないため、残ります。これだけを見ると勝手にInternet Explorerが表示されたと感じるかもしれませんが、それは誤りです。
対策はWebブラウザの「既定のアプリ」をEdgeに変えました。これによってメール本文のURLをクリックすると最初からEdgeが開くようになります。

侵入検知システムIDS

侵入検知システムIDS; Intrusion Detection Systemはネットワークやサーバを監視し、不正または異常な通信を検知し、管理者に通知するシステム。ホスト型IDSとネットワーク型IDSがある。前者は各ホストにソフトウェアを導入して分析する。後者はネットワークトラフィックを収集して分析する。多数のホストがある場合はネットワーク型IDSが拡張性の観点で優れている。

AWSでネットワーク型IDSを実装する場合、IDS用のVPCを作成し、全てのトラフィックをこのVPCにルーティングするように設定する。その上で新しいVPCにIDSプラットフォームを構築する。

Amazon GuardDuty はAWSのネットワーク型IDSのサービスである。GuardDutyはAWS CloudTrailイベントログ、Amazon VPCフローログ、DNSログなどの複数のAWS データソースからイベントを分析する。運用しているAWSで実際に起こったイベントが分析対象である。実際のログを分析して脅威が存在するかをチェックする。

Auto Scaling

Auto Scalingはリソースの使用状況をモニタリングし、その使用状況に応じてEC2 Instanceを自動で増減するサービス。負荷の状況に応じて自動でスケールアウト・スケールインすることができる。スケーラブルで費用対効果が高い。
Auto Scalingを実行するために設定するスケーリングプランには、CloudWatchのメトリクスやスケジュールの指定などを定義する。CloudWatchのメトリクスを参照する場合、CloudWatchが一定間隔で収集したデータを参照してスケールアウト・スケールインする。デフォルトの収集間隔は5分。詳細モニタリングのオプションを有効にすることで1分間隔とすることができる。
EC2 InstanceはAuto Scalingグループで指定したサブネットで動作する。AZが複数ある場合はAZ間でEC2 Instanceの均衡を保つように起動する。EC2 Instanceの増加時はEC2 Instanceが一番少ないAZで起動する。EC2 Instanceの起動に失敗した場合は、起動が成功するまで別のAZで起動を試みる。
AZが複数ある場合のスケールインはデフォルトではEC2 Instance数が最も多いAZ内からランダムにAZを選択する。AZのInstance数が同じ場合は、最も古い起動設定を使用したEC2 InstanceがあるAZを選択する。最も古い起動設定を使用したEC2 Instanceが複数ある場合は、次に課金が発生するまでの時間が最も短いEC2 Instanceを選択する。次に課金が発生するまでの時間が最も短いEC2 Instance複数ある場合は、この中からランダムにEC2 Instanceを選択する。
お問い合わせ