日々ブログ

日々のくらしの中で思ったこと

【プログラミング】SSO(シングルサインオン)について改めて考えてみた

webサービスを開発していると一度は聞くことになる「シングルサインオン(SSO)」ですけど、もてはやされてる割には導入するメリット薄くないかな?と思ってます。
これを導入するためにわざわざ大金をかけるなんてどうなんだろうというのが正直なところなので今回はシングルサインオンについて書いてみたいと思います。

シングルサインオンとは

シングルサインオンは、一つのwebサービスにログインしたら他のサービスを利用する際に改めてログインしなくて済むような仕組みです。
内部的には、認証したという情報をブラウザに記憶させていて、それらを複数のサービスで使えるようにするといった感じです。
yahoo IDを持っていたら、メール・オークション・フリマとか色々使える!といった感じのことです。
シングルサインオンが無いと、メールとオークションそれぞれでIDを作ることになり、若干不便ですからね~。

シングルサインオンについて意思統一するのが難しい

シングルサインオンですが、上でも記述した通り「一つのサービスにログインしたら他のサービスでのログインが不要になる」だけなので、本来非常にシンプルな試みなのですが、開発する上でこんなことが起きます。

ja.wikipedia.org

  • シングルサインオンしたらGoogle にログインしたらうちのサービスも使えるんじゃないの?
  • 複数間のサービスのIDを一元管理できるんじゃないの?
  • セキュリティレベルが上がるんじゃないの?
  • 簡単に作れて安くできるんじゃないの?

大体こんな感じですかね。
シングルサインオン」について検索すると大体上記のような内容が出てきますが、 何かシングルサインオンから外れてる気がします。
「Id連携」、「Id管理サービス(IDaaS)」などと混同してるんじゃないかと。

シングルサインオンが恩恵を受けるのは巨大なwebサービスを持っているところだけ

yahooとか楽天といった複数のサービスを提供している巨大な企業ならわかるんですが、サービスが一つとか二つしか無い会社ってわざわざ導入を検討する必要があるんですかね。
対応しなくても、1回や2回ログイン試行が増えるだけです。
お客様にアカウント登録をしてもらうのが申し訳ないといった理由もあるのでしょうが、アカウント登録を渋る程度の便利さしか提供できていないわけで、そうなると登録をしてもらったところでいずれ使ってもらえなくなります。

プロジェクト間の意思疎通が難しくなり開発速度が落ちる

シングルサインオンを実現するに当たって、プログラミングという意味では、様々なOSSやらサービスが提供されているのでそれほど時間はかかりません。
一方で、どのサービスと連携するか?で揉めてしまってプロジェクトが停滞することが多いように思います。
全サービスに対応すればいいじゃない?というのが分かりやすいのですが、全サービスに対応できることを確認するテスト工数が肥大化します。
また、あの会社にはうちのお客様の情報を提供したくないからシングルサインオンの連携はだめ!といった要望が突然出てきて、最悪作り直す羽目に。

セキュリティが一定水準に保たれる

セキュリティが担保されるかは、シングルサインオンに関わらず、造り手によって決まるというのが正直なところですが、正直情報流出のリスクは上がるんじゃないかというのが個人的な考えですね~。 一見、すでに稼働しているサービスと連携していて、そのサービスが問題なく動いているので、すがりたくなりそうですが、アカウント情報が流出するのなんて一瞬ですからね。 しかも、アカウント情報を連携しているからこそ、見ず知らずのサービスがアカウント情報を漏洩したのに自社のサービスにまでしわ寄せが来る!といったことが容易に想像できます。 実際、パスワードを流出させてるのって、facebookとかtwitterとかが多いですからね~。 セキュリティを高めたいならこじんまりと自社サービスだけで完結するほうが、管理もしやすいというのが正直なところですね~。

haveibeenpwned.com

そもそもそれほど便利か

ユーザー目線で考えたときに、別にそこまで便利じゃなくね?って言うのが正直なところです。
そもそもスマホがパスワードを覚えてくれるので、数秒程度時間がかかるといったくらいです。
それに、ログインしっぱなしのサービスとかも多いですからね~。
むしろ、一つのサービスにログインしただけなのに、他のサービスにも情報が言ってるんじゃないか?って個人的にはちょっと不安になります。
実際、ネット銀行とかのサービスはシングルサインオンに対応していないところが現状は多いですし、それのおかげで他のアカウントの情報が盗まれても「お金」は守られてる!って感じがします。

仕様をまとめやすい社内システムならありかも

上のようなことを考えると社内システムをまとめあげるならいいかな~と。
乱立した社内システムごとにIDを覚えないといけないとかいう状況だったら、効果も歴然だし、 仕様もとりまとめやすいし、セキュリティの心配も社内ネットワークなら関係無いですしね~。
実際うちの会社も乱立しててIDとパスワードを複数覚えないといけないから大変。 半年に1回くらいしか使わないシステムのパスワードとか覚えていないなんてしばしば。

【暮らしのお話】ポケモンスリープがのんびりしてて好き

最近、ポケモンスリープにはまってます。 ハマっているというほどやり込む要素はないんだけど、 続けられてます。
まあ、寝るだけなんですけど。
ダイエットとかも並行して続けられていて、最近健康志向なのもあって今回ブログにしたいと思います。

ひたすら大きくなって行くカビゴンを眺める

このゲームはアプリを起動したまま寝れば寝るほどカビゴンが大きくなります。
カビゴンが大きくなると、より珍しいポケモンカビゴンの下に集まってきて、どういう原理かカビゴンのそばで寝始めます。
何ともスキの無い平和な設定!
自分の睡眠が深く長いほどカビゴンが大きくなるので、健康かつやりこめて一石二鳥なので好きです。
ドラクエウォークといい、健康×エンタメって何かお得な感じがしていいですよね~。

カビゴンが好き

よくよく考えるとカビゴンが好きなんですよね~。
子供の頃から。
食って寝るだけの生き物とかシンプルだけど地上の覇者感あるし。
何より、寝ているカビゴンを起こしたら、起こした奴が悪いみたいな印象ないですか?
安眠妨害を受けることが無いとか 、もはやカビゴンになりたい。


眠るだけなので続けやすい

他にもきっとやり込む要素はあるのだと思うんですけど、ひたすらカビゴンと一緒に寝てます。
起きてる時間は他のゲームやってたりすることが多いですからね~。

モニタリングの精度はよくわからない

精度はよくわかりません。
個人的には、深い睡眠判定が出やすい印象です。
スマートウォッチでも同時に計測してますけど、そちらは2時間程度なので。
寝ている間の出来ごとなのでどちらが正解かはわからないですけど、レム睡眠とか睡眠サイクルを考えるとスマートウォッチなのかな~。

下の図は、とある日の睡眠データで、ほとんどぐっすりゾーンにいるらしい。
逆に7時前には一体何があったんやろうか。

何とものんびりな時間

まあこんな感じで、束の間ののんびりな時間を楽しめるので、リリースから続けられてます。
さすがに寝るだけのゲームなので、イベントやらレイドバトルは無いだろうし、マイペースに楽しめそう。
長く楽しめるゲームとして、今後も続けていきたいと思います~。

ブログを書きながらさっそくグッズ化されてて驚いた。
今度買ってみよう~


【プログラミング】Node.jsでのプロセス管理はps-treeが便利

nodejsを使っていてプロセス管理が必要になったので、その際の備忘録を書いておきたいと思います。
残念ながら、ブラウザからプロセス管理はセキュリティの制約上できませんが、できると色々まずい気もしますし。

必要になった経緯

Electronを用いたデスクトップツールを作成時している際に必要になりました。
ボタンを押したらコマンドラインから別のプログラムを実行する必要があったんだけど、親プロセスが起動したあと、子プロセスが実際にはプログラムを実行しているらしく。問題は、親プロセスは子プロセスを起動したすぐに自然に消滅してしまって、素直にやると子プロセスが裏で生き残り続けてしまう状態になってました。
結果、子プロセスがメモリ食ったり、ハードウェア資源を占有し続けてしまい、上手く動かないじょうたいになってました。

インストール方法

npm からインストールできます。

npm install ps-tree

www.npmjs.com

使い方

Node.jsでのインポートなのでrequireを使います。

psTree = require('ps-tree')

昨今は、Node.jsでもimport を使うことが推奨されるので、その場合は必要なものだけimportしましょう

 import * as psTree from 'ps-tree'

とにかく使ってみる

使用すると、下記のような感じで結果が返ってきます。
PPIDは親プロセスでPIDが子プロセスですね。 コマンドは、プロセスを生成したコマンドで、nodeから実行したのでしっかりと「node」と返ってきています。
特定のコマンドから生成したプロセスのみとかでフィルタリングできるので便利ですね。

死滅管理まではしてくれないので自分でkillする

javascript でプロセスをキルするのは、Node.jsに組み込まれているProcess を使うのが便利です。

process.kill(`プロセスID`)

単純に組み合わせてみると以下のような感じでしょうか。
配列で得られるのですべてキルします。

const psTree= require('ps-tree');
const childProcess=require('child_process');


const sampleProcess = childProcess.exec("node -e 'while (true);'");


console.log(`${sampleProcess.pid} is parent process`);

psTree(sampleProcess.pid,(err,children)=>{
    console.log(children)
    
    children.forEach(child => {
        // process.kill の引数は数字のみ
        
        process.kill(Number(child.PID))
        console.log(`${child.PID} is killed`);
    });
})

【暮らしのお話】今年もふるさと納税完了しました

2023年も半分過ぎて、もはや年末が見えてきましたね。
去年の反省もあって今年は早めにふるさと納税を完了しました。
というのも制度改正があって10月からあって、 少しだけお得度が下がりそうな気配がしてるんですよね。
最近オトクな制度が削られたり相続税増税だったり、国民に少し厳しすぎないだろうか。
コロナ対策で使用したお金を回収したいんでしょうかね。。。

xinformation.hatenadiary.com

10月から返礼品の金額計算がより厳密になる

10月から返礼品の金額計算がより厳密になります。
前にも似たような改正があったと思うのですが、 前回抜けた穴を防ぎに来たんじゃないかなと思ってます。
しかも、ふるさと納税の申請が最も多い年末を目前にしての改正とか狙ってきてますよね。
現状、ふるさと納税を行うとポイントなどが返ってきたのですが、 こうしたポイントもしっかりと返礼品の原価にカウントします!くらいの改正だったかと。
厳密には制度を運用するための人件費などの経費だったかな。
これって結構厳しくて、サイトによっては5%とか10%くらい還元したのが、原価に含められることになります。
そうすると、寄付金をそのままにしようと思うと返礼品を今までより少なくするしか無いんですよね。
お米10kgもらえてたとして9kgとか8kgとかになるわけで。
お得なことには変わらないんだけど、今ならよりお得!ということで早めにしました。

www.jimin.jp

お得度の高い食料

去年に引き続き食料を頼みました。
お得度も高いですし、日本全国の味覚も楽しめるので個人的には食料を頼むがおすすめ。 電化製品などもいいんですけど、他の通販サイトとかで購入したほうがお得だったりしてあとから後悔した経験もあるので。 それ以来、ふるさと納税といえば食料!という感じで頼んでます。

やっぱりお米

たくさんあっても困らないですからね。
今年は定期便にしておきました。
20kgあれば来年まで持ちそう。


スーパーではなかなか見ない分厚い牛タン

お米のお供として牛タンも頼みました。
しかも分厚い。
スーパーや地元の焼肉屋では、薄切りの牛タンしか味わえないですからね。
こうした、味覚を楽しめるふるさと納税は素晴らしすぎる。


【暮らしのお話】ブログ始めて3年目に入りました

ました気づけばブログ始めて3年目になりました。
去年は甲斐甲斐しく、開設日の5月15日に合わせて投稿したりしたんですが、今年はそういったエネルギーもブログには向くことは平然と過ぎました。
2ヶ月も経ってしまいました。
4月から作成してるにも関わらず、だらたらと書いてしまっている。。。
ちょっとだけ寂しいですね。
去年はいろんなことに手をだそうとした結果、エネルギーが発散してしまってどれも中途半端な感じが出てしまったかな。
まあ何事も発散と収束の繰り返しだと思って、3年目も続けて行きたいとおもいます。

ブログ2年目にやったこと

ブログ2年目は、ひたすら量をこなしていた感じですね。
その甲斐あってか、ちょくちょく読まれる記事も出てきてます。
ありがたいことです!。
最近はすっかりサボりがちですが、これからもちょくちょく更新していきたいと思います。

副業やるとか言って頓挫

副業始めるのってエネルギーが要りますよね。
自分は何が得意なのか?本業との時間の配分は?そもそもどうやって始めようか?など、考えることがたくさんあります。
正直、就活のとき並みに仕事について考えました。
結局、副業はやりませんでしたけど、色々と学んだのはいい経験だったかな~。

adsenseを通す

秋頃でしたが、google adsenseに通りました。
ブログをやっている人にとっては一つの登竜門ですね。
adsenseでは、あまり収益は上がらないわけなのですが、由緒正しいブログを作成できているかどうかの指標にはなるんじゃないかなと思ってます。
別に通過しなくても問題無いわけですが、プライバシーポリシーの配置だったりサイトの構成とかに気をつけるようになったりと意識が変わるので良い勉強になりました。

楽天アフィリエイトが少しずつ機能する

少しずつですが、楽天アフィリエイトの方が機能し始めました。
会社でもらえる給料とはまた違う嬉しさがあります。
まあ額はほんの少しなのですが、 はてなブログの月額費用だったりブログ作成のための機材の購入とかに当てたりしてます。

ブログ3年目にやりたいこと

かれこれ3年目になったので、今までやってきたジャンルとは違う内容についても書いていきたいな~と思ってます。

何か新しい趣味

今までやってこなかった趣味にも時間を当てたいですね。
私のブログの話題って、プログラミングとか投資の話とかが多いので、若干書いてて広がりが無くて面白みが無いな~と。

天体観測とか楽しそう

長年うっすら思ってるのが天体観測ですね。
流星群もまともに見たこと無いんですよね。
あとは、たまにニュースとかでやってる今夜〇〇という現象が見られますとか、特定の地域だけで見られますとかそういう現象を追いかけるのってロマンがあっていい感じがする。
そもそも、そうした現象の何がすごいのかが分かっていない状況なわけですが、そういうのを語れるようになるのも人間としての深みが増す気がする。
調べてみると、ふるさと納税とかでも天体望遠鏡とかあるので、寄付してもいいかなと思いつつ今年の分はもう寄付してるので、始めるのは来年とかになりそう。


スマホで撮影できるのがいい感じ


コロナ明けたし外に出たい

長いコロナもようやく無き者になりつつあるのでそろそろ外に出たいな~と思いつつ、 未だにみんなが外に出ててどこも混雑してるので、しばらく家で大人しくしてたりします。
値上げの風潮もあって、今のうちに楽しもう~という勢いを感じますよね。
学校で習った教科書的な回答としては、インフレになると値段が高くなるので消費が小さくなるとは何だったのだろうか。
たまごとか値上げしてもめちゃくちゃ売れてるし。
常々思っているのが、玉子を原材料にしているはずの玉子どうふの値段が上がらないのは何故なんだろうか。
たまごが今まで安すぎただけで、適正価格に「なった」のではと思ったり。
しばらく、値段は戻らなさそうですね。
何はともあれ今は人が多くて尻込みしていますが、そのうちお出かけした様子などをブログにどんどん上げていきたいなと思ってます。

【暮らしのお話】100万円修行がようやく終わりました

自分も100万円修行がようやく終わりました。
まあもはやブームもさりつつありますが、こっそりと年始から始めていました。
今更感満載ですが、修行の達成感とともに内容をまとめたいと思います。

100万円修行とは

100万円修行は、三井住友カードが実施しているクレジットカードのキャンペーンの達成条件から来る言葉ですね。
年間100万円分カードを利用すると、年会費が「永年無料」になったりポイントが手に入ったりします。
ゴールドカードが永年無料で手に入るということや月10万円コツコツ使えば達成できるという様から「100万円修行」という言葉が話題になったわけですね。
私の場合は、月払いの公共料金やら楽天カードで支払っていた金額を置き換えることで達成できました。

楽天経済圏でいいんじゃないか

正直言って、2023年7月18日時点で楽天経済圏でも大丈夫です。
この「でも」というのが大事で楽天経済圏一強の時代ではなくなってきています。
楽天の携帯電話事業の損失拡大によって、経済圏が弱まってきてますからね~。
この5月には楽天ブックスがまたもや改悪してますし。
どんどん旨味が無くなっているのがわかります。
企業体力が落ちているんでしょうね~。
携帯電話事業もゆくゆくは黒字化していくんでしょうが、黒字化したところで経済圏が元に戻るかは分かりませんし。
というわけで、昨今新たな経済圏を構築しつつある三井住友経済圏を味見しようというモチベーションで始めました。

www.rakuten-card.co.jp

始めてから分かったこと

話題に連れられて始めたわけですが、始めてからようやくわかったことがいくつかったのでまとめたいと思います。

初年度の年会費がかかる

100万円を使うと翌年以降の年会費が永年無料になるわけですが、 「翌年以降」というのに気づきませんでした。。
つまり、初年度の年会費はかかります。
しっかり初年度の年会費5500円が請求されていて、 あれ?無料じゃないの?ってなりました。
5500円というのは、クレジットカードとしては結構高額な部類ですよね。
個人的には、こうした経費には拒否反応が出てしまうので無料にしてほしかったですね。
額の大きさはともかく、クレジットカードの申込み手続きに時間を割いたあげくお金を取られてしまうという形がなんとも。

一応ポイントで回収できる

キャンペーンなどを利用すれば、一応回収はできます。 100万円分使用すれば、1万円分のポイントバックがあったり、申込後の初回利用時はポイントバックの特典があるので、初年度の5500円分は回収できます。 むしろ、回収しないとお得感が無いので、積極的に活用しましょう。

アプリは意外と使いやすい

金融系のアプリって使いにくいイメージが強かったのですが、意外と使いやすかったです。
利用金額がぱっとでますし、自分がキャンペーンの達成条件をクリアできているかどうかも一目瞭然です。
生体認証に対応している端末であればログインも簡単です。
中には、毎回パスワードを打ち込んでワンタイムパスワードを要求してくるアプリもありますからね。
こういうキャンペーンって特典条件をクリアできているかどうかって気になりませんか。
他のキャンペーンの話になりますが、後から例外条件みたいなのをくどくどと言われて特典をもらえなかった経験を何度かしてるので、結構きになるところだったりします。
その点で言えば、三井住友のアプリは親切設計なので安心です。
金額は若干生々しいですが、条件は達成されているようなので安心です。

ナンバーレスの使い勝手

ナンバーレスカードはカードにクレジットカード番号が書かれていないものを指します。
実際に番号が無いわけでなくて、アプリから番号を確認することができます。
正直使い勝手はあまり変わらないですが、デザインがちょっといい感じなくらいですかね。
落としたときに悪用されにくい!みたいな利点を押す人がいますが、タッチ決済はできてしまうので、防犯的なメリットはあまり無いように思います。
なので、そんなに前面に押し出すほどの特徴なのかな?とか思ったり。

通常のポイント還元率は0.5%と低め

通常のポイント還元率は0.5%です。
楽天カードは1%なので比べると少々低めですね。
100万円使えば1.5%なので、その条件が達成できないなら楽天カード一択でいい感じですね。
あとは、このゴールドカードはマクドナルドだったりローソンなどのコンビニだと還元率が5%まで上がるので、実店舗はゴールドカードでそれ以外楽天カードくらいの使い分けが良いのかなと。
あとは、楽天カードamazonで使用するとポイント還元率が落ちますが、このゴールドカードはポイントモールを経由すれば、還元率が最大4%上がります。
ただ、適用される商品が毎月変わるのでぶっちゃけ使いにくいので、欲しい商品がたまたまポイント追加されたらラッキーくらいに考えて私は使ってます。

pointupmall.com

SBI証券との相性が良い

三井住友系列なのでSBI証券との相性が良いですね~。
貯めたポイントはSBI証券から投資信託などに利用できます。
というより、楽天ほど経済圏が樹立していないので、現状SBI証券で使う以外の用途が無いです。
一回投資信託などの金融商品に変えてしまえば、通常の操作で換金できるので、問題無いです。
証券会社を開設したりするのが面倒な人にとっては、買い物で得たポイントをそのまま買い物に使える楽天やdポイントのほうがまだまだ使い勝手はいいんでしょうね~。
私の場合はSBI証券保有していたので、投資信託にそのまま移しています。

今からならOlive一択でイイ

正直、今からだとOliveで良さそうですね。
Oliveは同じく三井住友グループが提供しているサービスで、クレジットカード・銀行口座・デビット・ポイントをまとめることができるサービスです。
Oliveもゴールドカードと同様に100万円のキャンペーンを実施していて、同じくらいお得です。
Oliveのサービスが開始する前の年始から100万円修行を始めたので、一周遅れの状況なわけですが。
ちなみに、ゴールドカードで修行を達成していればOliveの修行は免除されるので、全くの無駄というわけではないのが救いです。
そのうちOliveも使い始めようと思ってます。

www.smbc.co.jp

【暮らしのお話】アーマード・コア6が欲しいけど高い

アーマード・コア6が発売されますね。 知る人ぞ知るアーマード・コアシリーズですが、正しくPS3以来待望の!って感じです。

カスタマイズできるメカに乗ってミッションをこなす

基本的には、ミッションをこなしていくゲームです。
ただ使用するメカの性能は自分のカスタマイズ次第というのが面白く、操縦スキルだけでなくてカスタマイズも工夫するのが楽しいです。
カスタマイズ次第では、難しいミッションでも簡単にクリアできるようになるので。

www.armoredcore.net

PSP版で最強のソードと最強のライフルを持った最速の紙装甲とかいう中二病みたいなカスタマイズして遊んでた

私が一番遊んだのは、PSPで出ていたラストレイブンですね。
たしか、PS2からの移植作だったはず。
武器を装備したり移動を早くするためのブースターを付けたり、自由度が高くカスタマイズできるので、色んなカスタマイズをして遊ぶのが楽しいです。
やたら硬いけど、重量が重すぎてほとんど飛べないとか、ぴょんぴょん空を飛べるんだけど、すぐにオーバーヒートして飛べなくなるとか。
最終的に自分は、最強のライフルとソードと最速のブースターを持った紙装甲の期待で特攻してました。


限定版はプラモ付き

限定版はプラモデルがついているようですね~。 わりとオーソドックスなカスタマイズがされているメカのプラモデルのようで、純粋に格好イイです。
聞いたところによると、人形のロボットは日本では人気だけど、海外ではあまり人気がなくて戦車型のほうが人気なんだとか。
海外の限定版は戦車型やったりするやろうか。


EBITEN版はもっと高い

EZBITEN版はさらに高くて、 定価57,200円ですね。
内容としては、ガレージがついただけなんですが、値段は倍... 少々高すぎやしませんかね~。 たしかに、ガレージはプライ画面でもよく見るシーンなので納得できなくは無いですが、

という個人の思いは裏腹に結構売れているようですね。 amazonだとすでに売れていて、しかも定価より高い。 転売でなければいいんですけどね~。

ebten.jp