パスワードを忘れた? アカウント作成

Livingdeadさんのトモダチの日記みんなの日記も見てね。 みんなの日記はここから一覧を見ることができます。

15570698 journal
ストレージ

Livingdeadの日記: SanDiskポータブルSSDのハードウェア暗号化を使ってみた 2

日記 by Livingdead

業務でも個人でもSanDiskのポータブルSSD製品を使っている。
機種によってはハードウェア暗号化機能を持っているものもあるので、試しに有効にしてみた。
いままでは同様の目的を達成するためにBitLockerを使っていた。

1)アンロックには専用のWindows/Mac用ソフトが必要
2)ロック状態では上記ソフトが入った仮想CD-ROMが見える
3)ロック状態ではパーティションテーブルも見えないので未初期化状態
4)だからといって初期化しようとするとアクセスは拒否される
5)なので不用意に初期化&フォーマットしなおし、ということは無い。

個人的には5の特徴が安全で良いと思った。

なお、業務上の規定で「OSの暗号化を活用すること」とされているので、ポータブルSSD自体のハードウェア暗号化に加えてBitLockerもかけて使っている。

SanDisk外付けSSDのハードウェア暗号化

15560530 journal
Windows

Livingdeadの日記: CCleanerとレガシー版Edge 3

日記 by Livingdead

久々にCCleaner使ってみたら、レガシー版Edgeのファイルも残ってるっぽい表示だった。
レガシー版EdgeってWindows 10 21H1で完全に削除されたものだと思ってたけど、残渣が残ってたのか。

CCleanerとレガシー版Edge

それにしてもここに書くの8年ぶりかよ。
メモ代わりに使うスペースとして思い出したので。

11641506 journal
日記

Livingdeadの日記: Google Apps ScriptからTwitter APIのREST APIを叩く

日記 by Livingdead

以前からボット的振る舞いのためにGoogle Apps ScriptからTwitter APIを叩くことはやっていたが、繰り返し同じことを書くのが面倒なのでライブラリにした。
TwitterUrlFetch
デモ

11637408 journal
日記

Livingdeadの日記: Google Apps ScriptでGoogleドライブのファイルを選択するダイアログを開く 2

日記 by Livingdead

Google Apps ScriptでGoogleドライブのファイルを選択するダイアログを開くには結構面倒な手続きが必要なので、さくっと使えるライブラリにしてみた。
https://script.google.com/macros/s/AKfycbxPkya2A-FxdEdI8qiRvkpVUhXMhUQFWc6zWDafw0ecj4QN_qly/exec

11637151 journal
日記

Livingdeadの日記: Google Apps ScriptでOAuth2対応のウェブサービスを作ってみた 4

日記 by Livingdead

Google Apps ScriptにはContentServiceもあるしクエリパラメータを取得することもできるので簡易的なウェブサービスを作ることができるのだが、OAuth2での認証を受け付けるウェブサービスを作ることができるか分からなかったので実験してみた。「https://www.googleapis.com/auth/drive」スコープに対して取得したアクセストークンをAuthorizationヘッダに設定すれば、それを振り出したユーザーの権限でウェブサービスにアクセスできることがわかった。

https://script.google.com/macros/s/AKfycbwOTvCijZfxQzCdzrL1DVt3EyYw33ozdogONFYZqwL5/dev

10344585 journal
日記

Livingdeadの日記: 久々になにか書いてみようと思ったが何も思いつかない。

日記 by Livingdead

まぁ、いいや。
ごめん、駄文で。

330696 journal

Livingdeadの日記: jQuery Mobileでチェックボックスの右に謎のマージン

日記 by Livingdead

右側に謎のマージン

<fieldset data-type="horizontal" data-role="controlgroup">
    <input type="text" placeholder="nickname" />
    <input type="checkbox" id="checkboxNickName" name="checkboxNickName"/>
    <label for="checkboxNickName">
        remember
    </label>
</fieldset>

jQuery Mobile 1.0 Alpha 4.1でテキストボックスとチェックボックスを並べると画面の右に謎のマージンが。これはどういう要素や属性によって作られているのだろうかと調べてみようとしたけど、DOMを操作された結果なので追っかけるのが面倒でやめた。ChromeでもOperaでも同じ。

322876 journal

Livingdeadの日記: 久々にDeleGateを使ってみる

日記 by Livingdead

USBテザリングでネットに繋がっているWindows7 PCに何台かのクライアントがぶら下がっていると、プロキシを立ててキャッシュを有効に使えないかという気になってきた。なにせ数百KBpsの帯域だから少しでも有効に使いたい。でもプロキシ立てて逆効果ってこともあるからなぁ、と思いつつも久々にWindowsマシンでDeleGateを使ってみた。

"C:\Program Files\DeleGate\dg9_9_7.exe" -P3128 ADMIN=livingdead@example.com EXPIRE=15d CRON="10 3 * * * -expire 1" MAXIMA=delegated:30

SPDYをプロキシ経由で使うと逆効果な気がしたので(あくまで気がするだけ)、クライアントPC上のChromeの chrome://net-internals/ で確認しながら以下のドメインをプロキシの対象外とした。

Proxy server: localhost:3128
Bypass list:
  *.google.com
  *.google.co.jp
  *.google-analytics.com
  *.googleusercontent.com
  *.gstatic.com

効果は有るような無いような。
【追記】結局DeleGateじゃなくてPolipoにしました。

322710 journal

Livingdeadの日記: DNSプロキシエージェントは、0バイトのメモリを割り当てることができませんでした

日記 by Livingdead

Windows7サーバでICSを有効にすると、SharedAccess_NATが「DNSプロキシエージェントは、0バイトのメモリを割り当てることができませんでした」とイベントログに吐く。Windows7サーバをDNSサーバとして使おうとするクライアントPCからはDNSを解決できない。

クライアントPCにてパケットキャプチャを実行し何が起こっているのかを覗くと、クライアントPCからの一つのDNSクエリに対してWindows7サーバから二つのDNSアンサーが返ってきていて、一つ目のUDPパケットにはQuery Refused、二つ目のUDPパケットには正しく名前解決された答えが入っている。どうやら一つ目のQuery RefusedがあるからクライアントPCはDNSによる名前解決ができないと思っているようだ。まぁこれは正しい動作で、両方受け入れてしまうようではセキュリティ上の問題だ。

「DNSプロキシエージェントは、0バイトのメモリを割り当てることができませんでした」でググルとICSを切れという対処法が見つかったが、そもそもそのICSを使いたいのだ。結局、ICSを実行しているサーバからVMware Playerをアンインストールした結果、一つ目のQuery Refusedが返って来なくなった。VMwareではホストとゲストのを繋ぐために仮想NICが使われるが、そのせいだったのだろうか。

【追記】
まだ同じエラーが時々イベントログに記録される。しかしクライアントPCからは正常にWindows7サーバのICSを介してインターネットを利用できているのでよしとする。VMware Playerに濡れ衣を着せていたらごめん。でもアンインストールして初めて期待通りに動くようになったので。

320581 journal

Livingdeadの日記: フラッシュコンテンツの中からリクエストされるURLがShift-JISをそのままURLエンコーディングした物って 3

日記 by Livingdead

フラッシュコンテンツがFirefoxとChromeでは閲覧できるのにInternet Explorer 8では閲覧できないという相談を受けた。LiveHTTPHeadersやMicrosoft Network Monitorなどで覗いてみると、どうやらフラッシュコンテンツの中からリクエストされるURLがShift-JISをそのままURLエンコーディングしたものになっているようだ。作成者にIRIという概念はないのか?はたまた設置先としてIISしか想定していなかったのか?

コンテンツの中身を触ることはできないので、サーバ側のPHPスクリプトを改変することで対応する方法があれば教えて欲しいとのこと。mb_check_encodingではうまく判定してくれなかったので、mb_convert_stringを使うことにした。Shift-JISと仮定してUTF-8に変換、再度Shift-JISにラウンドトリップして元に戻ればShift-JISだったんだろうというざっくりした判定。

#!/usr/bin/php
<?php
$utf8_string = urldecode("%E5%AE%89%E5%85%A8/%E5%8C%96%E5%AD%A6%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%AE%E5%AE%89%E5%85%A8");
$s = $utf8_string;
$su = mb_convert_encoding($s, "UTF-8", "Shift-JIS");
$sus = mb_convert_encoding($su, "Shift-JIS", "UTF-8");
if ($s == $sus) {
  echo "Shift-JIS\n";
} else {
  echo "UTF-8\n";
}
$sjis_string = urldecode("%88%C0%91%53/%89%BB%8A%77%83%76%83%8D%83%5A%83%58%82%CC%88%C0%91%53");
$s = $sjis_string;
$su = mb_convert_encoding($s, "UTF-8", "Shift-JIS");
$sus = mb_convert_encoding($su, "Shift-JIS", "UTF-8");
if ($s == $sus) {
  echo "Shift-JIS\n";
} else {
  echo "UTF-8\n";
}
?>

判定できているようだ。教育用に許諾を得て借りてきたeラーニングコンテンツを部局内のウェブアプリケーション内に組み込むテストというお仕事。

typodupeerror

あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall

読み込み中...