Archives

2025

  1. system-administration

    クロスプラットフォームで動作するintunewinファイルの作成・解凍ツールを作った

    Microsoft Intuneでアプリケーションを配布する際に必要な.intunewinファイルですが、これまでMicrosoft公式ツールはWindows専用で、中身を確認する手段もありませんでした。 今回、Go言語でクロスプラットフォーム対応のintunewinファイル作成・解凍ツールを開発しましたので、その経緯と実装の詳細を紹介します。

  2. system-administration

    Microsoft Entra Global Secure Accessを試してみたので仕組みをまとめてみる

    Microsoft Entra Global Secure Accessは、インターネットへのアクセスを保護するMicrosoft Entra Internet Accessと、社内リソースへの安全なアクセスを提供するMicrosoft Entra Private Accessを統合したSSEソリューションです。 この記事では、Microsoft Entra Internet AccessとMicrosoft Entra Private Accessがどのような仕組みで動作し、何ができるのかについて紹介します。

2024

  1. system-administration

    Installomatorのパラメータの紹介

    主に管理されているmacOSデバイスに、最新バーションのアプリケーションを配布する方法として、Installomatorというスクリプトがあります。 今回はInstallomatorをより深く理解するために、Installomatorで使用できるパラメータたちを紹介します。

  2. system-administration

    Installomatorでサポートされていないアプリケーションをインストールする

    これまで、管理下にあるmacOSに最新バーションのアプリケーションをインストールするスクリプトである、Installomatorに関していくつか記事を投稿してきました。 今回はいままで紹介してきた内容を応用して、Installomatorでサポートされていないアプリケーションをインストールする方法を紹介します。

2023

2022

  1. system-administration

    Azure Active DirectoryのアプリケーションをTerraformで管理する

    Azure Active Directory(Azure AD)には「エンタープライズアプリケーション」と「アプリ登録」と呼ばれる管理項目があります。 特に、SAMLやOIDCを利用するアプリケーションを登録するなど、運用する際に使用されることが多いでしょう。 今回はこれらをInfrastructure as Code(IaC)のデファクトスタンダードとなりつつあるTerraformで管理する方法を紹介します。

  2. system-administration

    IdPを介してMacにログインできるXCredsを検証してみた

    IdPを介してMacにログインできるツールとしては、Jamf社が開発しているJamf Connectが有名です。 しかし、Jamf Connectは有償であり、追加でJamf Connect用のJumpStartの費用がかかり、最小スロットが25ライセンスからであるため、導入のハードルが高い場合があります。 今回は、IdPを介してMacにログインできるXCredsを検証してみました。

  3. system-administration

    macOSのソフトウェアアップデートをユーザーに通知する「S.U.P.E.R.M.A.N.」の紹介

    組織によっては、macOSのソフトウェアアップデートをエンドユーザーにお知らせしてアップデートを行っているかもしれません。 また、独自にスクリプトを作成する場合、画面共有中など画面がビジーな状態などのハンドリングなどを考えたいという要望を実現する場合、高度な知識が必要となります。 今回はこのような課題を解決できるかもしれない、S.U.P.E.R.M.A.N.を紹介します。

2021

  1. development

    Next.jsでStatic GenerationしたサイトをAWSでホスティングする

    Next.jsでStatic GenerationしたWebサイトをVercelにデプロイすると、スムーズにホスティングできます。 AWS上にホスティングする際は、いくつか方法がありますが、比較検討したかったため、Next.jsでSGしたWebサイトをホスティングする方法の考慮すべき点と実現方法をまとめました。

  2. development

    GitHub ActionsのRunner OSの情報を取得できるアクションを作った

    GitHub Actionsのubuntu-latestが18.04から20.04にアップグレードされる旨が、2020年の10月に告知され、徐々に展開されてきました。 このRunnerのOSの差異によりWorkflowが失敗するようになったため、その問題を解決に役立つGitHub Actionsのアクションを作成しました。 今回はこの備忘も兼ねてアクションの作り方を紹介します。

  3. system-administration

    macOS Big SurでSelf Serviceアプリケーションがクラッシュしてしまう問題の暫定対応の自動化

    macOS Big Sur、および執筆時点のSelf Serviceの最新バージョンである10.26.0において、Self Serviceアプリケーションがクラッシュして起動できない事象が発生しています。 Self Serviceアプリケーションがクラッシュしたら特定のファイルを都度消すことで動作します。 しかし、都度消すのは面倒ですので、今回はこの作業から解放されるべく対応を自動化する方法を紹介します。

  4. system-administration

    KeynoteのテンプレートをUIを介さずにテーマとして登録する

    Keynoteにはテーマの共有や再配布が可能となるテンプレート機能があります。 通常、テンプレートはUIを介してテーマとして登録しますが、「複数個テンプレートをテーマとして登録したい」、「管理化に置かれているデバイスに配布したい」などの要件があった場合は、公式にはツールなどが提供されていません。 今回は、KeynoteのテンプレートをUIを介さずに登録するツールを作成したので、その使い方を紹介します。

2020

  1. system-administration

    Appleシリコンを搭載したMacデバイスのロックの挙動について

    Appleシリコンは、Apple社がMac向けにARMアーキテクチャを使用して設計されたシステムオンチップおよびシステム・イン・パッケージプロセッサです。 日本時間2020年11月11日にApple M1プロセッサを搭載したMacデバイスが発売され、徐々にIntel版のMacデバイスのラインナップがなくなっていく予定です。 今回は、そのAppleシリコンを搭載したMacデバイスのロックの挙動がIntel版とは異なっていたため、その記録を残そうと思います。

  2. operation

    YouTubeとZoomを使用してオンライン勉強会を開催する

    COVID-19の影響もあり、IT勉強会が軒並みオンライン開催されることが多くなってきました。 そんな中、私も2020年8月に、IdPについて数人のゲストを交えて語り合う「IdP よもやま会 -2020 夏-」をオンラインで開催しました。 今回は、その方法を備忘を兼ねてオンライン配信の方法を紹介します。

  3. system-administration

    erase-installを使ってmacOSの初期化、OS再インストール、OSアップグレードを行う

    macOSのデバイスを組織の従業員に貸与する場合、デバイスのトラブルや退職などのタイミングでデバイスを管理者で受け入れ、そのデバイスの購入時期が一定期間以内の場合、廃棄せずに初期化を行い、新たな従業員へデバイスを貸与することがあります。 その際デバイスの管理者は、なるべく組織で許容しているOSおよびバーションにアップグレードしたいことがあります。 また、COVID-19の影響によりリモートで対応することも多い中、何か問題が起きた際にOSの再インストールや、OSのアップデートをエンドユーザーに行ってもらう必要があるかもしれません。 今回はこれら課題を解決する方法を紹介します。

  4. development

    Session Managerでプライベートネットワークにセキュアにアクセスする環境を構築

    AWS Systems ManagerにSession Managerという機能があります。 Session Managerを使用することで、専用の踏み台サーバーの用意や、SSHおよびRDPポートを開けずに、ブラウザやCLIからプライベートネットワークにアクセスできます。 また、セッションログを出力でき、実際に操作した人やその内容の監査が可能です。 今回は、Session Managerを用いて、プライベートネットワークにセキュアにアクセスするための環境を構築する方法を紹介します。

  5. system-administration

    PPPCで付与できないmacOSのプライバシー保護機能にアクセス権を付与する

    COVID-19の影響により、テレワーク/リモートワーク化が加速し、Web会議サービスを使用することが増えてきました。 エンドユーザーが意図せずにこれらのアクセスを拒否してしまい、目当てのアプリケーションを使用するのに混乱したり、手間どったりすることがあります。 組織において管理下にあるデバイスであれば、プロファイルやスクリプトなどで強制的にアクセス権を付与したいと考えますが、システムの制約上、エンドユーザーのみが操作可能です。 今回は、Jamf Proを使用してこの制約の中で対応する方法を紹介します。

  6. development

    Rails 5アップグレードへの道

    Railsのメジャーバージョンアップは毎回大幅なアップデートが含まれているため、アップグレード作業がたいへんになることがあります。 今回はとあるアプリケーションをRails 4.2.xからRails 5.0.0.1へアップグレードしたので、その記録を備忘として残しておきます。

  7. system-administration

    Jamf Pro ServerにSSOを設定

    業務でSaaSを当たり前に使うようになってきた現在、使用するサービスごとにパスワードを覚えるのはたいへんです。 また、パスワード使い回しによる不正アクセスのリスクにさらされる可能性があります。 今回はこの問題を解決できるSSO(Single Sign On)をJamf Pro Serverに設定する方法を解説します。

  8. system-administration

    Jamf Pro Serverの初期設定

    Jamf ProはmacOS、iOS、iPadOSおよびtvOSのデバイスを管理するためのプロダクトです。 今回は初回ですので、Jamf Proとは何なのかをざっくりとさらい、Jamf Pro Serverにログインするところまでを解説します。

2019

  1. development

    SFSafariViewControllerでリンク先に遷移できないバグにハマった

    iOSやiPadOSではアプリケーション上でWebページを表示する際には、UIWebViewとWKWebViewが使われてきました。 iOS 9からSFSafariViewControllerが登場し、Webページを表示する方法が増えました。 今回は、SFSafariViewControllerを使用した際にリンク先に遷移しないバグにハマったので備忘として記録します。

  2. development

    Google Apps Scriptのモダンな開発環境は理想だった

    ちょうど1年前、「Google Apps Scriptのモダンな開発環境を求めて」という記事を書きました。 これにより、モダンな開発環境によってDeveloper Experienceが高いGASプロジェクト開発ができたかというと、残念ながらそうではありません。 実際に運用していくうちに、いつくか課題が見えてきました。 今回はそれらの課題と向き合いどのように対応したかを紹介します。

  3. development

    SAML認証が検証可能な開発環境用のIdPを構築

    Service ProviderとしてWebアプリケーションをSAML対応する場合、検証用のIdenity Providerが欲しくなります。 Microsoft Azure Active DirectoryなどはIdPを無料で使用できますが、開発者全員が使用するには融通が効かないまたはオーバースペックになりかねません。 今回は、開発環境用のIdPを構築して、SPのSAML認証を検証する方法を紹介します。

  4. development

    Spring Security SAMLでSpring BootアプリをSAML対応

    Spring SecurityはSpring Bootアプリケーションの認証と認可を設定可能なフレームワークです。 標準のSpring SecurityにはOAuth2がサポートされていますがSAMLはサポートされていません。 しかし、公式がSpring SecurityのSAML Extensionを提供しており比較的容易にSAMLをサポートできます。 今回はSpring SecurityでSAML対応する方法を紹介します。

  5. system-administration

    クラウドPBXを選定してみる

    組織において電話を使用したいという要望はIT化した現在でも健在です。最近ではマネージドなクラウド版のPBXが誕生してきました。 今回はクラウドPBXを選定するためにどんなことをしたかを備忘のためにまとめました。

  6. system-administration

    Apple Business Manager/Apple School Managerの設定

    Apple Business Manager/Apple School Managerは、企業や教育現場などの組織で様々なApple社のデバイスなどの管理が可能となるWebサービスです。 今回はこのApple Business Manager/Apple School Managerの設定方法や使い方、プラクティスなどを解説していきます。

  7. system-administration

    組織におけるApple IDの運用

    Apple IDは、Apple社のサービスを利用するのに必要なアカウントおよびユーザーを一意に特定するためのIDです。 以前別の記事でも言及しましたが、2019年7月現在では少々状況が変化しています。 今回は、Apple IDにフォーカスして2019年7月時点の教育や企業、法人などの組織における運用方法等を紹介します。

2018

  1. development

    Google Apps Scriptのモダンな開発環境を求めて

    Google Apps Script (GAS) はGoogle SpreadsheetやGmailなどのGoogleアプリの拡張または、 単体でサーバーのプロビジョニングや管理なしでスクリプト実行が可能な JavaScriptライクな言語または軽量アプリケーションです。 今回はGoogle Apps Scriptのモダンな開発方法を調査・検討を行ったため、その記録を備忘として残します。

  2. development

    1つの画面で効率よくiOSアプリ開発を行う方法

    iOSアプリケーションを開発しているとシミュレータでデバックすることが多くあります。 しかし、通常では画面が大きくない場合、開発しているエディタとシミュレータをスイッチする必要があります。 今回は、隠し機能を使用し、1つの画面で効率よくiOSアプリ開発を行う方法を紹介します。 また、合わせてその他の隠し機能も一部紹介します。

  3. business-improvement

    UserScriptで業務改善

    昨今、自社でのツールの開発は維持コストがかるため、マネージドなクラウドWebサービスを使用することが多くなってきています。 しかし、そのWebサイトを使用してしると、「こうできたらもっと便利なのに」等と思うことも多々あります。 今回はそのようなWebサイト上の問題を自分たちで改善、修正が行えるUserScriptを紹介します。

  4. system-administration

    Confluenceユーザーマクロのすゝめ

    IT企業にはおなじみの Atlassian社のConfluence。 有料プラグインも豊富ですが、人数に比例して課金されるため、使用しない人数分のライセンス費用も払わないといけないとなりどんどん導入が難しくなってくることもあります。 今回はちょっとしたプラグインであれば、お金をかけずに拡張できるユーザーマクロを紹介します。

2017