- [外観] - [挙動]
- Launcher を自動的に隠す → ON
[Ubuntu 12.04] Dash を自動的に隠す
[Firefox] Do Not Track によるプライバシー保護
- [オプション] - [プライバシー] - [トラッキング]
- トラッキングの拒否を Web サイトに通知するt
意思を示すものであるし、現時点では効力を発揮しないのが実情だが、プライバシーの意識の高まりから、今後実装が進むと思われる。
Tracking Preference Expression - W3C
Do Not Track Test Page - Microsoft
[Firefox 12] 新機能 (サイレントアップデート) を設定
http://mozilla.jp/firefox/12.0/releasenotes/
サイレントアップデートと、地味にソースに行番号追加w
サイレントアップデートは、オプションで更新の動作を変更する必要があるのかな? (デフォルトでは従来通りの動作に設定されていた)
- 設定タブを開く
[ツール] - [オプション] - [詳細] - [更新] - Firefox の更新を、"自動的に更新をインストールする" に変更。
[SkyDrive] 容量を増やす
[ASP.NET] 認証ページに例外を追加して CSS やスクリプトファイルを反映させる
[アプリケーション直下にログインページを置いて認証させている例]
この場合は、特定のフォルダやファイルに対して認証を外す必要がある。
[Styles フォルダ以下は認証しない]
location 要素は、system.web 要素の外に記述する。適切なアクセス制限をかけたいものだ。
[C#] 正規表現で半角英数以外を弾く
using System.Text.RegularExpressions; // あいうえおabcde がチェック対象。 if (!(Regex.Match("あいうえおabcde", "^[a-zA-Z0-9]+$")).Success) { // 半角英数以外の文字が含まれています。 }ちなみに、主要なチェックは以下の通り。
数値 : ^[0-9]+$
郵便番号 : ^[0-9]{3}[-][0-9]{4}$
電話番号 : ^[0-9]{2,5}-[0-9]{1,4}-[0-9]{4}$
全角かな : ^[ぁ-ん!ー]+$
全角カナ : ^[ァ-ヴ!ー]+$
半角カナ : ^[ア-゙]+$
[Plantronics M100] Bluetooth ヘッドセットはスマートフォンには必需品
これがおすすめらしいとのことで試してみた。
音がいいとか聞き取りやすいとかはよくわからないが、必要最低限の機能は満たしていると思うので不満は出ない。屋外で使用しても相手先にしっかり声が届いているようだし。
それ以外の部分で、個人的に気になったところをいくつか。
[良かったところ]
- 意外と電池が持つ
iPhone ではアプリと連動して電池容量が表示されるようだ。
ようだ、というのは私は iPhone ではないのでわからないからそのメリットを享受できない。 - 悪くないフィット感
寝転がりながらでも、うつむきながらでもズレることはない。当たり前かもしれないが。
- ボタンが押しづらい
真ん中が通話終了などのボタンを兼ねているのだが、これがうっかり押しやすい。デザインは確かにいいと思うが、もう少しなんとかならなかったものかね。 - 電源ボタンが固い
電源の ON, OFF は横にスライドするのだが、これが固い。
また、動かす時に真ん中のボタンを押してしまうことがある。使いづらい。
[MSDN] この記事は翻訳者によって翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。
原文テキストの表示がうっとうしすぎるんだが(笑)。
これを変更するには、右上の歯車のアイコンをクリックして設定を変えればよい。
スクリプトなし、を選択すると高速で読み込まれる。
記事の文章にポインターを重ねるといいつつ、マウスのホイールでスクロールをさせる場合は記事にポインターが当たりっぱなしになるわけで。
この機能を実装するときに、だれも何も言わなかったのだろうかと思う。
[Salesforce] API からログインする際のパスワード
Salesforce に API からログインする際には、パスワードの末尾にセキュリティトークンを付与する必要がある。
トークンの発行は、[設定] - [私の個人情報] - [私のセキュリティトークンのリセット] から行う。設定してあるメールアドレスに、トークンを記載したメールが送信されるはずだ。
[C#] DataTable の作成
基本的な流れとしては、
- インスタンス化。
- テーブル列定義。
- テーブル行にデータ追加。
- DataTable 自体に追加。
// DataTable 作成。 var dt = new DataTable(); // 行定義 // このセクションを無視すると、列 ' ' はテーブル に属していません。というエラーが出る。 dt.Columns.Add("Name", typeof(string)); // 文字列 dt.Columns.Add("Score", typeof(int)); // 数値 dt.Columns.Add("Entry", typeof(DateTime)); // 日付 // 行追加 var dr = dt.NewRow(); dr["Name"] = "ほげ太郎"; dr["Score"] = "100"; dr["Entry"] = DateTime.Now; dt.Rows.Add(dr); var dr2 = dt.NewRow(); dr2["Name"] = "ほげ次郎"; dr2["Score"] = "40"; dr2["Entry"] = DateTime.MinValue; dt.Rows.Add(dr2); // GridView にバインド GridView1.DataSource = dt; GridView1.DataBind();行の定義で定義した型を順守する。
数値型や日付型なら有効な日付を入力しないとエラーで落ちる。
' DataTable 作成。 Dim dt = New DataTable() ' 行定義 dt.Columns.Add("Name", GetType(String)) dt.Columns.Add("Score", GetType(Integer)) dt.Columns.Add("Entry", GetType(DateTime)) ' 行追加 Dim dr = dt.NewRow() dr("Name") = "ほげ太郎" dr("Score") = "100" dr("Entry") = DateTime.Now dt.Rows.Add(dr)
- VBではこんな感じ。
[SSO] SAML でハマりがちなこと
- 日付はすべて標準時。
SAML に埋め込む日付はすべて標準時でなければいけない。 - 認証の有効期限
すべての発効日は、NotOnOrAfter や InResponseTo の間である必要がある。 - 証明書のパスワード
証明書を XML 署名する際に、パスワードは正しものをセットしなければいけない。ただ、証明書自体の有効期限は切れていても認証可能のようである。 - XML 署名の方式
.NETのサンプルソースを使った場合だけだろうが、Google Appsでは RSAKeyValue (RSA 公開鍵) で署名するのだが、Salesforce では KeyInfoX509Data (X.509 形式) で証明する。Salesforce では BASE64 形式でエンコードしたものを POST しなければならなかったため、これはその差異ということだろうか……。
[ASP.NET] 自動的に名前が付けられたデータベースをアタッチできませんでした
アプリケーションでサーバーエラーが発生しました。
自動的に名前が付けられたデータベースをアタッチできませんでした。
同じ名前のデータベースが既に存在するか、指定されたファイルを開けないか、UNC 共有に配置されています。
ログインフォームがあるサンプルプロジェクト等の作成で、App_Data 配下にある mdf ファイルを IIS で公開設定。参照するとエラーになる。
IIS で公開するときには、Web.config ファイルの接続文字列を変更しなければならない。
フォーム認証によるユーザーの認証 - ASP.NET デベロッパー センター
http://msdn.microsoft.com/ja-jp/asp.net/ff650902
[IIS] アクセス許可がないため構成ファイルを読み取ることができません
仮想ディレクトリに設定したフォルダにアクセス権限がない場合にこのようなエラーが出る。このような場合には、IIS_IUSRS を設定する必要がある。
該当のフォルダを右クリックして、[セキュリティ] - [編集] - [追加]
IIS_IUSRS を入力すると、「コンピュータ名 \IIS_IUSRS」 が追加される。
IIS 7.0 でホストされている Web サイトを参照するとエラー メッセージ:「HTTP エラー 500.19-内部サーバー エラー」 - Microsoft
[Windows7] 拡大鏡ツールを終了させるショートカットキー
個人的には全く必要性を感じないツールだが、うっかり起動してしまった時に終了させるショートカットキーである。
Windows キー + Esc
[SSO] テキストボックスの名前は SAMLResponse でなければならない
TxtSAMLResponse とかダメ。samlresponseでもダメ。
名前、固定なのね……。
[ASP.NET] ログインコントロール内部のテキストボックスにデフォルトフォーカスを設定する
ログインフォームを作成するための Login コントロールというものがあるのだが、
この内部に設定してあるテキストボックスに初期フォーカスを与えようとしたが意外とめんどくさかった。
.Focus() や、.SetFocus() などではできなかったために、 .FindControl() でテキストボックスを取得してからフォーカスを与えてあげた。他にいい方法があるのか調べるのも面倒だったので、とりあえずこの方法で実装。絶対もっと簡単な方法があるはずだ……。
// 型を厳密に指定するなら TextBox var txt = LoginUser.FindControl("UserName"); if (txt != null) txt.Focus();
ちなみに、こんな方法もある。
[ASP.NET]Webフォーム上のフォーカスを制御するには?[2.0、3.0、3.5、C#、VB] - @IT
[GOM PLAYER] mkv ファイルで FLAC の音が出ない...
Core FLAC Audio Decoder を入れろ!
……だめだった。
カスタマイズをしてもだめだった。
ffdshowを入れろ!
……音が出た!
ffdshow のページはわかりづらすぎるのだが、ダウンロードページの「システム要件」のところから環境に合わせたものをダウンロードすれば OK である。
GOM PLAYER の公式サイトによると、この方法でも出ない環境があるのでその場合は個別対応するとか書いてある。すごいな……。
[X509Certificate2] 指定されたネットワーク パスワードが間違っています
X509Certificate2 クラスから証明書を読み込ませる際に、ファイルのパスの他にパスワードも入力するのだが、
パスワードが正しくないと 「指定されたネットワーク パスワードが間違っています。」 となりエラーで落ちる。
パスだけではなく、パスワードも正しいものを入力しなければならない。
パスワードだが、.pfx ファイルをダブルクリックするとインポートウィザードが起動するので、そこで確認できる。
とはいえ、忘れてしまったのでは全く意味がないのだが……。
X509Certificate2 クラス
http://msdn.microsoft.com/ja-jp/library/system.security.cryptography.x509certificates.x509certificate2(v=vs.80).aspx
[pvk2pfx.exe] Windows7 x64 で使用する
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\pvk2pfx.exe通常は、以下の場所。
C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\Bin\pvk2pfx.exe
[C#] ファイル名に使用できない文字が含まれていないか調べる
string s ="?%*.txt"; if (s.IndexOfAny(System.IO.Path.GetInvalidFileNameChars()) >= 0) { // NG }Path.GetInvalidFileNameChars メソッドは、ファイル名に使用できない文字を char[] で返してくれる。 これを利用することでファイル名に使用できない文字をチェックすることができる。 http://msdn.microsoft.com/ja-jp/library/system.io.path.getinvalidfilenamechars(v=vs.80).aspx
[C#] 無効な文字を変換してから base64 形式へエンコード
// 無効文字を変換 s = System.Security.SecurityElement.Escape("<\>&"); // "utf-8" 等でも OK 。 Encoding enc = Encoding.GetEncoding(50220); byte[] byt = enc.GetBytes(s); string base64 = Convert.ToBase64String(byt);
文字列のエスケープに関しては、.NET Framework 4.0 より SecurityElement.Escape というメソッドが追加された。今さらという印象があるが……。
http://msdn.microsoft.com/ja-jp/library/system.security.securityelement.escape.aspx - msdn
base64 への変換に関しては、無効な文字列が存在していると落ちてしまうため、
このように一度エスケープ処理をかませてから変換したほうがよいだろう。
ちなみに、GetEncoding の引数はコードで指定しているが、文字列でも良い。
コードに関しては以下のページが参考になる。
http://www.atmarkit.co.jp/fdotnet/dotnettips/013enumenc/enumenc.html -@IT
ASP.NET SAML Component による Salesforce への SSO 実装テスト
だが、実際に試してみると少々ハマるポイントがあったのでメモを残しておく。
【手順書】
http://www.samlcomponent.net/?tag=singlesignon
【手順】
- コンポーネントをダウンロードする。サンプルはマイドキュメントにコピーされる。
自分は saml2Salesforce を試した。 - Visual Studio 2010 で開くのだが、2010 (
.NET Framework 4.0) だとセキュリティの関係上うまく動かなかった。
オーバーライド中に、継承セキュリティ ルールの違反が発生しました。オーバーライドするメソッドのセキュリティ アクセシビリティは、オーバーライドされるメソッドのセキュリティ アクセシビリティと一致している必要があります。
CASが廃止。.NET 4のセキュリティはどうなるのか? - @it
とりあえず、.NET Framework 3.5 で試してみた。
.NET Framework のバージョンを変更するには、参照設定を変更しなければならないが、
C:\Program Files (x86)\Atp\UltimateSaml v5.0.1211\Bin 配下に
それぞれのバージョンの dll がある。 - .NET Framework 3.5 であれば、問題なくサンプルは動作するはず。
- SalesforceUserId
これは Salesforce のログイン ID にする。 - CertificateIssuer
サンプルに付属する証明書を使うなら、XYZ Company でOKだ。
- ほかの箇所は変更しなくてよい。
- 証明書は SP_X509Certificate_ForSalesforce.cer を Salesforce にアップロードして使用する。期限は切れているがテスト用途なので問題なく動作する。
- ポート番号は、プロジェクトのプロパティの中にある Web タブで設定し直せる。デフォルトは33181番を使用している。
[windows7] 管理者権限でアプリケーションを実行するショートカットキー
- 右クリック → 管理者として実行。
- 「Ctrl + Shift」 を押下しながら実行。
- Windows キー押下 (Ctrl + Esc でも可)。
- 「cmd」 とタイプ。
- コマンドプロンプト (cmd.exe) が検索されるので、「Ctrl + Shift + Enter」 を押下する。
[Google App] ASP.NETからのSSO実装テスト
C#用のサンプルを探していたのだが、少し古いながらもあった。
まぁ、ドキュメントが付属しているのでその通りにやればすぐにテスト実装できるのだが、備忘録としてまとめる。
手順としては、以下の通り。
- サンプルソースビルド
C#2.0用のソースなので、Visual Studio2005が入っていない限りはアップグレードさせることになるだろう。アップグレードしても問題は発生しなかった。 - IIS設定
「Google.Apps.SingleSignOn.Web」の方を登録する。 - 証明書作成
「makecert.exe」および「pvk2pfx.exe」を使うのが便利。コマンドラインから生成するが、実行ファイルの場所が環境によって異なるかもしれない。
なお、作成した鍵に対してASP.NETアプリケーションが読み込める権限も与えなければいけない。 - Google AppsでのSSO設定
Google Appsの管理者にてログインし、管理画面を開く。
→高度なツール→シングルサインオン(SSO)設定
→シングルサインオンページに、
http://localhost/GoogleAppsSso/Prompt.aspx を設定する。
この設定が正しく反映されると、
ローカルページへのリダイレクトが行われるようになる。 - Google Appsへの証明書登録
3で作成した証明書をアップロードする。 - http://mail.google.com/a/<ドメイン名> にアクセス。
ローカルホストへリダイレクトされるはずなので、そこで認証情報を入力。 - 認証情報が正しければログインできる。上記サンプルだとGmailにログインできているはずだ。
ただ、Google Appsのアカウントが無償版だと設定できなかったかな。
【参考】
http://code.google.com/intl/ja-JP/apis/apps/sso/saml_reference_implementation.html
http://code.google.com/intl/ja-JP/googleapps/domain/sso/saml_reference_implementation_web.html
[IIS7.5] ハンドラー"PageHandlerFactory-Integrated"のモジュール リストにあるモジュール"ManagedPipelineHandler"が正しくありません
C:\Windows\Microsoft.NET\Framework64\ 配下にある、バージョンに移動。
コマンドプロンプトから、「aspnet_regiis.exe -i」を実行するとインストールが開始される。
[makecert.exe] 証明書作成ツールを使う
Google AppのSAMLを試そうとしたときに、リファレンスにはツールの場所は、
"C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\Bin\makecert.exe"
と、なっていたのだが、Windows7(64ビット)では、どうもその位置には実行ファイルが存在しない。
検索してみると、
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64"
に、存在していた。
このツールだが、コマンドプロンプトから実行する。
keyを出力したい所に移動して、makecert.exeを実行する。
オプション等はここが参考になる。
[IIS7] ASP.NETのインストール
Chrome18でMacTypeを適用させる
自分もその一人。
これでまたきれいな文字に戻るぞ!と、意気込んだものの、Chromeではやっぱり適用されずに orz になってしまった。
どうやらもう一手順必要なようだ(環境にもよるのかもしれない)。
ちなみに、自分の環境は「Windows7 Ultimate 32bit」である。
【解決方法】
MacTypeベータ版モジュールに入れ替える。
【手順】
※いつまでこの手順が使えるか不明。この手順で正しいかも不明。自分はできた。
- このサイトに行く。中国語は英語より馴染みがないが、「MacTray 内部测试版」というボタンをクリック。
- 「下载」が「ダウンロード」である。
- 10個ほどモジュールがあるので、それをMacType(portable版かな?)のフォルダに上書き。
※App\MacTypeの配下かもしれない。 - MacTypeとChromeを再起動させてみる。