ラベル Microsoft の投稿を表示しています。 すべての投稿を表示
ラベル Microsoft の投稿を表示しています。 すべての投稿を表示

Microsoft Entra Connect Cloud同期のお勧め属性マッピング

ハイブリッドID構成の設定で必須設定じゃないかな~というやつを備忘録的に投稿しておきます。個人的な推奨値なので実際に設定する際は十分な理解と検証を心掛けてください。そのまま利用して不具合が発生しても責任はとれません。
Microsoft Entra Connect によって同期される属性 - Microsoft Entra ID | Microsoft Learn


属性名:UsageLocation

規定値:IgnoreFlowIfNullOrEmpty([msExchUsageLocation])
推奨値:IIF(IsNullOrEmpty([msExchUsageLocation]), IIF(IsNullOrEmpty([c]), "JP", [c]), [msExchUsageLocation])

ライセンス割り当てに必須な属性。
ハイブリッド構成で始めると引っかかる罠ですね。
規定値では[msExchUsageLocation]を利用するようですけど使っていなければ[c]を採用するようにし、2つとも値が無ければ”JP"を設定するようにしています。
”JP"を決め打ちでもよいと思いますけど、国外駐在社員がいる場合はその国に合わせた方がよいのかな~と
どのくらい厳密に運用すべきかわからないですね~機能差もありそうですし・・・


属性名:PreferredLanguage

規定値:Trim([preferredLanguage])
推奨値:Trim(IIF(IsNullOrEmpty([preferredLanguage]), "ja-JP", [preferredLanguage]))

Microsoft Teams管理センターがなぜか日本語にならないという問題を解決する設定。
ADアカウントの属性にも属性があるので設定すればよいじゃないという気はしますが・・・
属性の初期値は未定義のようなので通常は使わない属性なんでしょうね。でもなぜかTeams管理センターでは必要という謎属性。LearnドキュメントによればSharePoint OnlineとTeams,Dynamics CRMで利用されるようですね。オンプレでは何が利用するんだろう?

Outlook On the Webに挑戦してみた。


Microsoft365界隈ではWindows版Outlookを使わず、ブラウザ版のみを使っている人がいる。
私はというと、所属組織のメールシステムを去年Exchange Onlineに統一するまでは、Exchange Serverを社内向け、SMTP/POP3 Serverを社外送受信と使い分けていたため、Windows版Outlook+Thunderbirdなどを使っていた関係で、いまだにWindows版を利用している。
Exchange Onlineの利便性をフルに活用する為にはブラウザ版が適しているのは知っているので上のツイートをきっかけにブラウザ版だけで過ごしてみようとチャレンジしてみた感想をお伝えしたい。

Microsoft EdgeサイドバーのOutlookが使いやすい

クリック一つでメールやスケジュールなどを利用できる点についてはWindows版が優れている。常に起動しておけばよいからだ。メモリーを消費するという声が聞こえるけど、TeamsやEdge、Chromeに比べればかわいいものだ。
ブラウザ版でも常に開いておけばよいという思うが、ウインドウを閉じてしまうと閉じてしまう。タブで切り替えながら使ってはいるけどやっぱり閉じてしまうのでクリック一つで開くことはできない。
その中で便利と感じたのが先月一般リリースされたサイドバーのOutlook。どのウィンドウでもクリック一つで受信トレイが表示できる。タブの切り替えなどにも影響しないのでとても便利だ。受信トレイを使った送受信ならこれで十分だし、ブラウザ版を開きたければその中にある”全画面で開く”をクリックすればすべての機能が使える点がとても良い。

通知が来ない

ブラウザ版にも通知という機能はあるが、ブラウザを開いていなければ通知が表示されない。私の環境が悪いのかブラウザ版を開いていなければ通知は受けられなかった。
Windows版を常に起動し通知を受けていた人間からすると通知が来ないというのは非常に不安な状態。まるで携帯電話を家に忘れてきたときの様だ。
一番困ったのは会議予定の事前通知がなくなった事。予定の15分前に通知が来るのでトイレに行ったり資料を確認したりしていたのが出来なくなった。時間になっても通知がないので微妙に遅刻。安定して通知を受けることは重要だ。

アドレス帳の組織階層がない

情シスという立場上、社員情報や組織図を確認する機会が多く、Windows版の組織は重宝していたのでちょっと困った。これに関してはブラウザ版のみは耐えられそうにない。

ウイジェットは役立たず

外が見えない部屋で外の天気が分かるというのは非常に良いことだ。
ここにOutlookのカレンダーが表示されているがあまり使った記憶がない。
表示されているんだから通知はここからしてくれよ!!って思ったりする

スマートフォンは優秀

着信通知に関してはiPhoneのOutlookアプリはパソコンより早く優秀。
常に持ち歩いているしアプリの起動とか意識不要な点も優秀
ただ、長文はつらいし、添付もつらい。何より他人の予定表を見るとかグループウェア利用としては機能不足、あくまで個人に特化している

共有メールはWindows版の圧勝

ブラウザ版は他のメールボックスを開く操作をしないと表示されないんだよね。
意識せずに使える点はとても重要

検索はブラウザ版

Windows版はキャッシュ期間の設定にもよるけど、6か月に設定した場合、7か月からオンラインアーカイブへ移動する2年までのメッセージが表示されなくなる。
検索しても一発では表示されないので探す手間が多い。
ブラウザ版はオンラインアーカイブも含めた検索結果が得られるのでとても便利。


こんな感じで一長一短あるな~という感じですね。近い将来UIが統一されると聞いているのでWindows版の機能不足や操作の慣れという問題は解決されると思うけど、グループウェアとしての使い方を重視するとWindows版がおすすめって感じがします。

それよりも今回気が付いたのがEdgeのサイドバーは優秀という事、おそらくEdgeの拡張機能のOutlookを統合したものだと思うのだけど、常に開けるという状態と、タブ切替の影響を受けない、並べて表示がふつうにできるなど、個人的に非常に使い勝手がハマってよかった。Webを見ながらメールを書いたりブラウザとの連携はよく使うシーンなので便利だ!!と感じました。


通知に関してはWindows標準のメールアプリを使えば受けることが出来るので登録すれば解決できるけど、なんか今設定すると負けな感じがしたので踏みとどまっている。以前は予定表のみ同期を設定していたのだけど、「情シス以外の普通の使い方」という体験の為に今は使っていないんですよね。



Microsoftさんよ~~~

近々リリース予定のワークフローで権限書き換えを行うSharePoint リストの準備で、マニュアルを作ってるんだけど、クリップアートの提供がなくなったじゃん?
アバターと建物のクリップアートが使いたいんだけど・・・ないじゃん?
Bing検索だとろくなのないじゃん?
クリップアートはよく使ってたけど、まぁ、Bing検索でクリップアート探せばいいじゃん?って簡単に思ってたんだけど、クリップアート集かフリー素材が必要な感じ・・・ライセンス的に気を付ける必要があるので、結構ダメージでかかった。


ってのは置いといて、先週末に打ち合わせでリストの名前が変わりました。
ということで、関連するリストとかワークフローの名称も変えてたんですよ。
そしたら通常のワークフローは動作するんだけど、権限を書き換える処理があるワークフローがエラーになるんだよね。


え?リリース間近なのに原因不明の不具合発見!!ってかリスト名しか変えてないのに動かなくなるって一番やばいじゃん!!
今までチェックしてた時はちゃんと動いてたのに・・・なんで??


ってワークフローの見直しとか、権限の確認とかいろいろやってたんだけど、条件的には問題ないんだよな~~
権限以外は問題なく動作してるし・・・あせるわ~~~


まぁ、こういう時は一からワークフローを書き直してみるのが一番で、全く同じのを作ってみたらわかりました。原因が・・・


このリストね、アイテムごとに条件によってSharePoint グループの権限レベルを変更する処理を行っていまして、そのグループ名も変更してたんです。
普通ね、こういう変更をしてもSIDとか内部IDで管理されるので、名称変更しても影響がないと思うよね。
少なくとも私はそう思ってたの。
SharePoint DesignerのGUIで設定してるし・・・


だけど、SharePoint Designerの権限設定には古いSharePoint グループ名が表示されていたの。
でもSharePoint ってActive Directoryユーザーやグループの名称変更しても、ユーザープロファイルの同期までは古い名前のままで動いていたりするので、特に気にしてなかったんだけど、SharePoint グループはちょっと違うみたい?いや、アイテムに設定された固有のアクセス権は名称が変わっているので、SharePoint Designerの問題だと思うんだけど、ワークフロー内で扱うユーザー名やグループ名って表示名とかで定義されているのかなぁ~~なんて思ってます。


よくよく考えると、そんな気がしてきた・・・。Visual Studioでワークフローを作成したらSIDとかで指定するはずないもんね。
いくら専用の編集ツールとはいえ、外部ツールなんだよね。だから、内部IDじゃなく表示名を使うのは当然だよね~~
気を付けんといけんね~


今回はSharePoint 2010の気付きでした。



サポート期間が長いのは?

結局のところ、サポート期間が長いのはWindowsじゃないかと思う。
WindowsXPの延長サポートが終了するからと、大騒ぎしたのはちょうど去年の話。確かWindowsXPは2003年発売でしたよね。


小学生でも10年間サポートを続けていた事は計算できますね。


それに比べて・・・先日の発表はねぇ~~どうしたものか・・・
あまりにも反応がなさ過ぎて笑えますね。


Android 4.3って多くのユーザーが使用しているバージョンですよ。
ケイタイなんて2~3年で買い替えているから問題ない?


まぁ、そうかもしれないけど、すでに購入できない製品が10年のサポート期間を終了しただけであれだけ騒いでいたのにね!!


ところで、私が使っているスマートフォンL-05Dは2012年発売で1年後に4.0から4.1にバージョンアップ。それ以降はハードウェア制御の不具合修正2回があっただけですよ。
実質のサポートは1年ってことですね。


すでに、ウイルス対策アプリを常駐させても無駄なくらいセキュリティーホールは発見されているし、公表されていると思うよ。


Windowsみたいに企業の情報漏えいに直接つながることは少ないけど、個人情報でいえば宝庫だし、数も多い。しかもリテラシーは最低だからOSの脆弱性って大問題なんだけどね?え?アプリから堂々と情報取得できるから問題ない?
そうかもしれないね。


カメラアプリなのに、電話帳アクセスを要求したりするもんね。何も考えず許可しているし・・・



Windowsのサポート期間は基本10年なんだけど、Windows3.1時代のプログラムがWindows8.1で普通に動くって知ってた?64bit版のWindowsでは仕組み上16bitアプリは動作しないけど、32bit版のWindowsなら普通に動作するんだな。MS-DOS時代のプログラムだって動作するものはある。
そう考えると、Windowsってものすごくサポートが長いんだよね。


Windowsって不具合が多いとか文句を言われるけど、10年間はそれなりに無償対処してくれるし、下位互換性の点でいえはダントツのトップレベルだよね。


そのOS上で動くアプリケーションはバクや脆弱性あるけど保証期間なしなんてのは沢山あるんだけど・・・




Windows8.1 Updateになるまで・・・

デスクトップ型パソコンで使っているWindows8.1はWindows3.1からのUpgrade版である。
よって正規にやるならば、MS-DOS6.2をインストールし、Windows3.1をインストールして、Windows 95, 98, 2000, XP, Vista, 7, 8, 8.1を順にアップグレードするか、Windows3.1からNT4.0 ,2000以下同じのルートをたどる必要がある。


実際は、アップグレード版の対象バージョンであれば大丈夫なので、いくつかのバージョンはスキップできる。
まぁ、これは単なる自慢なわけで、DOS/V歴は長い。あまり自慢するとCP/Mとかの時代の先輩方がやってきたりするので注意が必要だが、真空管時代の爺が現れるのはある意味面白そうだ。もちろん真空管といってもオーディオではなくENIAC時代の仙人のことだ。
とはいえ、初めてのパソコンはPC9801FAなので、私もパソコン歴はそんなに長くない。


メインPCをSurface Pro3に変更したので、Windows8Pro with MediaCenter のライセンスもそっちに移行する関係で、デスクトップPCのOS再インストールが必要なのだ。Media Centerライセンスの切り離し方法もわからないしね。


ということで、段ボール箱の中から二十数枚の3.5インチFDを探す・・・ことはしない。
Windows7のDVD-ROMを取り出して、Starter Editionのインストールから8へのアップグレードを行う。
おそらく、Windows8でも同じ方法がとれると思うのだけど、私が持っているダウンロード版のメディアだとできないので、7 Starter EditionからWindows8にアップグレードするのが最短ルート。


この作業が終われば、デスクトップPCは子供のおもちゃ。ペイントの為だけに存在するパソコンになる。
壊れればおしまいだ・・・


ということは、アップグレード版ライセンスもWindows8をバージョンアップすることはないのかもしれない。


そう思うと少し寂しい。


Windows10はSurfaceでアップグレードになるので、あと7年以内くらいに自作PCを手に入れないと、アップグレードの襷が途絶えてしまうのだ。何か、箱根駅伝の襷に似た感じだ。つなげる思いは重いのだ。



新しいパソコンはもちろん!!

Surface Pro 3で決まりですね。


かなり迷いましたけど、やりたいことを実現するにはこれが一番パフォーマンスがよいとの判断。



  • タッチディスプレイ

  • Corei3以上のプロセッサ

  • 64bit版Windows


ノートパソコンがメインになるのは就職後の1年間、東芝Libretto100以来です。
当時はモバイルを重視した選択ですが、今回はモバイルというより、タッチディスプレイ目的。


家族で利用するにあたり、タッチディスプレイを重視しました。
もちろん、デスクトップも検討したのですが、スペックを適度に落としたとしても、予算的には10万前後は必要で、ディスプレイがちょっと微妙な感じ。
店頭で触ってみたりしたのですが、思ったほどレスポンスがよくなく、ペンタブ対応となると予算オーバー。
なかなか良い構成にたどり着けませんでした。


そんな感じで、やっぱりSurfaceかな~とね。


ただ、問題はストレージ容量。
これだけは完全に妥協しました。
今まで使ってたHDDは1TB。すでに半分は写真やら動画やらで埋まっているため、すべてを動かすことは無理。
とりあえず、USB-SATA変換があるのでデータは外付けですね。
あと、スーパーマルチドライブ。
これらはすべて外付けになります。そして、今後の課題ですね。買ってないし・・・


で、どのモデルにしたかというと、Corei3 64GB。
一番安い奴です。


ほんとは法人向けのOfficeなしがよかったのですがね。
Office Professiional Plusのライセンスを持ってるし、publisherを印刷用ソフトとして使っているので、Home and Business Premiumは要らないというか・・・機能足らず。


これを機にPublisherを卒業するのもアリですが、私だけの問題でもないし~~



8dot3nameが無効!!

いい加減ね、8.3形式のファイル名じゃないと動かないソフトなんてゴミ箱にポイ!!ですよね。


と言いつつ、動かないと仕事にならないらしいので対応しましたよ。


これね、System Center 2012 Configuration Manager SP1のOS展開機能を使った時の問題なんですけど、Windows8用のADKから仕様が変わって8.3形式のファイル名が無効になってるんですよね。
だから、「Program Files」のショートネーム 「PROGRA^1」が保存されない。


8dot3name Short File Name settings not enabled via ADK Partition Disk step in SCCM OSD 2012 SP1


って事らしいので、このサイトに解決方法が書いてあったので、試してみたんですけどね。


始めはその他サイトでも提示されてたパーティションを作成した後に Formatで有効にしたんですけど、これ上手くいかないのです。たぶんwimを展開するときに無効化した状態で動作するっぽいです。


ということは、ブートイメージに含まれていないFSUTIL.EXEを入れないと・・・ってめんどくさいじゃん!!


もしかしたらOSイメージを展開したファイルを実行できないかなぁ~ できたら俺天才!!


って試してみたら、出来ましたよ!!


でもね、ここでハマるんですよ。タスクシーケンスに上のサイトのコマンドを入れるだけなんですけど、エラーになるんです。デバッグ用のコンソールでは動くので動かないはずはない。もしかして、何かの制限でダメなのか!!ってcmd.exe /cで試してみたりしたんですけど、うまくいかない。で、ログを読むんですけどね。SCCMのログってテキスト形式なんだけどnotepadで読めるような代物ではない!!という愚痴を言いながら該当コマンドあたりを見ると、return code 2とか正常終了した 0 じゃないんですよ。でも、そのコマンドを手打ちするとエラーもなく動くんですけどね。


ってことに半日気が付かず、タスクシーケンスはコマンドの戻り値が0を期待しているので、2とか返ってくりゃエラーになりますよね。


まぁ、無事問題は解決できたので、お行儀の悪いプログラムはきっと動くに違いない。



それにしても、今どき8.3形式なんて非推奨だし、いい加減治せよ~~~



Project Sienaで遊ぶ 第5回

お久しぶりです。Project Sienaで遊ぶ第5回目です。

今回は、先日バージョンアップでVisualsにHTML Labelが追加されたことで、まともなBlogビューアーに進化することが出来ましたので、その報告です。

手順的には第1回の続きになります。「Custom Gallery」に「Label」を追加し「Title」などブログの要素をお好みに合わせて追加していきます。






そして、ここで新機能「HTML Label」を追加し、HTML TEXTにBodyを指定します。HTML Labelは名前通り、HTMLを扱えますので、画像やリンクも表示されます。






では、プレビューを見てみましょう。
画像もリンクも表示されるようになりました。

見た目的には完成っぽいですね~





そのほかにも、機能が追加されており、今までできなかった表現も簡単に実現できるようになったようです。特にSNS連携はアピールポイントになるんでしょうね~


Project Sienaで遊ぶ 第4回

これで終わり。という話でしたが、よく考えたら、なんでこうなってるか?って説明がなかったですね。

どこが?というと、Custom Galleryの中にText Galleryがあるってとこ。

Microsoft のサンプルでもこの表現はありません。
これは、Movable TypeのREST (Data API)のレスポンス仕様が原因です。

Data APIでEntriesのListを要求すると2行の応答があります。

totalResultsとitems。
totalResultsは記事の総数、そしてitemsは記事の配列です。


だから、一つ目のCustom Galleryはitemsの行を選択するため。
そのなかの記事を表示するためのText Galleryという2重になったんです。

私としても、entriesのitemsの中身を一つ目のGalleryで選択したかったのですが、うまくいかなくて・・・こういう形になりました。


さて、次の展開は10件以上の取得とカテゴリーごとの表示を検討しているのですが、クエリーパラメータを動的に指定してREST要求を出せないとダメっぽいです。これがね、わからなくて、うまくいかないんですよねぇ~


Project Sienaで遊ぶ 第3回

とっても駆け足で適当な説明ですけど、ついてきてますか?
今日までの内容はProject Sienaを知った当日の話。記事は翌日に書きました。

本当はSharePointのお知らせリストでやりたかったのですが、リッチテキストの表示が上手くできなくて代替のコンテンツで試してみたんですね。(成功体験をするという目的で!)
情報システムや総務からのお知らせなど周知文を集めて表示すればユーザーがわざわざサイトにアクセスしなくても見れるかなぁ~と思ってるんです。こっちは時間のある時に頑張ってみようと思います。

では昨日の続きです。

日付表示を修正しましょう。
日付のアイテムを選択して右下の「Express View」を押すとメニューが出ますので、DataのText=を「DataValue(ThisItem!createDate)」に修正します。





次に、Buttomを選択して、下の「OnSelect」を押して「Launch(permalink)」と入力します。




これで完成です。
右クリックを押し、右上の「Preview」を押してみましょう。
ブログ記事が表示され、ボタンを押すとブラウザが起動し、そのブログ記事が開きましたか?





とりあえず、今日でたぶん終了です。これより先は私にとっても未開の領域。更なる展開があれば第4回があるかもしれませんね。あるといいのですが・・・


Project Sienaで遊ぶ 第2回

前回の作業でアプリとブログが結びつきました。
今回は、ブログ記事を表示するまで進みたいと思います。

前回追加した「Custom Gallery」に表示されている「Add a visual」をクリックし、「Galleries」から「Text Gallery」を選択しましょう。



次に左下の「Data」を選び「items」で表示されたメニューから「items」を選びます。上の入力欄には「ThisItem!items」となり、サンプル表示されていた記事が消えます。



ビックリマークが3つ出てきたので一番上のマークをクリックして、左下メニューから「Title」を選ぶとブログ記事のタイトルが表示されます。続けて、2番目は「createDate」、三番目は「excerpt」を選ぶとほぼ完成っぽくなりますね。

ここまで来たら、ちょっとサイズを調整して、「Button」を追加してみてください。
ここでのポイントは、下の図のように2つ目の記事の場所にボタンとかが表示されていること。もし追加したButton一つしか表示されていない場合はText Galleryに紐づくButtonではありませんので、作り直しましょう。



中途半端ですが、今日はここまでにしておきましょう。
次回は日付表示を年月日に変更する方法と、Buttonを押したらブラウザが開き、記事が読めるようになるところまで進みます。





Project Sienaで遊ぶ 第1回

昨日、Project Sienaという存在を知り、ちょっと面白いなぁ~ということで、ちょっとしたアプリを作ってみたいと思います。

まず、何を作ろうかな?ということで身近なとこで、自分のブログを読むアプリにしてみます。(やり易さ第一で・・・)

環境についてですが、Windows8とMovable Type 6があること。それだけです。
これはMovable TypeがREST APIに対応しているので参照先のデータとして扱いやすいってことですね。
オンラインデータとの連携ってかっこいいし。RSS Feedだといい感じにできなかったです。

さて、はじめはソフトを入手する必要がありますね。
ストアを開いて「Project Siena」を検索して・・・って出てきませんでした。
そういうもんなんですかね?ってことでこっちのサイトから入手してください。

では、Project Sienaを起動し、右上の「Add a Visual」から「Galleries」の「Custom Gallery」を選択します。





次に左下の「ITEMS」のメニューから「Add Data Source」を選択します。「REST」をクリックし、URLに「http://サーバー名/cgiのバス/mt-data-api.cgi/v1/sites/BlogID/entries」と入力し、「Import data」ボタンを押します。



しばらくすると、ブログのデータが取得できます。



次に左上の矢印を押し、「Add Data Source」を選んだ画面まで戻ると、「entries」が追加されていますので、それを選択します。

これでひと段落終了です。
実際のコンテンツは今回追加したGalleryの中に表示されるので、画面いっぱいに広げておくと今後の作業がしやすいでしょう。

注意:画像はあえて修正していませんので、取り扱いには注意してくださいね。


1000ユーザーの役職情報削除の補足

書き忘れたので補足。


PowerShellでActiveDirectoryを操作するとき、
ActiveDirectoryサーバー上で操作する必要はありません。


ActiveDirectoryに参加しているクライアントでOKです。
もちろん、編集など特別な権限が必要な操作は
その権限を持ったユーザーで操作する必要はありますが、
基本はリモート操作です。


あと、 ActiveDirectoryモジュールが必要なので、
リモートサーバー管理ツール(RSAT)をインストールする必要があります。
クライアントOSにあった適切なRSATをMicrosoft Downloadセンターから入手してくださいね。


RSATは参照目的でも便利なのでサーバー管理者は入れておくことをお勧めします。



1000ユーザーの役職情報を削除しなさい

ActiveDirectoryを管理していると、「1,000ユーザーの役職情報を削除しなさい」なんてオーダーが出る可能性はある。
理由は何でもいい。似たような状況に置かれたと考えてほしい。


Q.急いでいるんだけど、いつまでに完了できる?
A.ん~~1ユーザー30秒かからないとして500分程度。大体8時間
 ちょっと残業すれば今日中に終わると思います。


これ、あなたの答えですか?
先日までは私の答えもこれだったかもしれません。


でも、今の私なら、「それなら30分くらいもらえれば終わります」(余裕)
なぜなら私にはPowerShellという武器があるから。


まぁ、以前から便利なのは知ってたんですけどね、使う機会がなくてスクリプトとしては使っていなかったんですよ。やっても「Export-SPWeb」みたいな単発の命令ばっかりで~


じゃぁ、スクリプトっぽくいくよ~


Import-Module ActiveDirectory
$users = Get-ADUser -Filter *
ForEarch($user in $users)
{
Set-ADUser -Identity $user -Clear Title
}

あとはActiveDirectoryを編集できる権限で実行するだけ。
5分で書いて1分実行。
ついでに確認用のコマンドをちょっと打って


まぁ、20分は忙しそうなふりして遊びましょうか?


本当に動かすときは、編集対象に問題がないかとか、ちゃんと編集できた確認とか
やるべきことは色々あるけど、たった6行・・・
いや、最小限でいよく


Import-Module ActiveDirectory
Get-ADUser -Filter * | Set-ADUser -Clear Title

2行で終わるかも・・・
つぶしてもいい環境だったらこれでいいよね。


PowerShellの何がすごいかって、
今までの方法だと、サーバーに接続して・・・って言語すらまともに使えないのに~
って感じだったのが、それぞれのコマンドが勝手に必要な手順をこなしてくれるんですよね。
スクリプトやプログラム言語でActiveDirectoryからユーザー一覧を取得する。
これだけでも結構な行数のプログラムを書かなければならなかった?わけなんですが、
Get-ADuser -Filter *
この一行でActiveDirectoryサーバに接続して、取得して、出力するんですよ。


?


私が言いたいことは、8時間GUIで作業している管理者に
ちょっとした学習時間を確保することでその作業が30分程度に削減できるってことを知ってもらいたいだけ。



注意:このページのスクリプト、コマンドは動作確認を行っておりません。
あくまでイメージですので、動かないからと言って文句を言わないようにお願いします。



ADFSの名前は一つ!!


ADFSって何?って聞かれそうですが・・・

本来、社内ネットワークに設置される、コンピューターの認証基盤Active Directoryを社外のサーバーでも利用するための仕組みってとこですか?

Office365 とかクラウドサービスを社内のID、パスワードを全く一緒にして利用しようという仕組みです。これがなかったら、同じIDを設定していても、パスワードは別。ユーザーは同じIDを使っていながら、接続相手によって違うパスワードを入力する必要がある状態になります。(別のIDを使うなら大した問題ではありませんが・・・)

どうやってパスワードを使うかというと、認証時にADFS経由でActive Directory認証を行うんですよ。

ってことで、このADFSを使うということは、AD DSは当然ですが、ADFSサーバが停止するとOffice365が利用できないのです。

だから冗長構成を必ず取る必要があるんですね。そして、セキュリティーを高めるために、ADFS Proxyを設置して、これも冗長化。
とにかく、止めない。止まらない構成を構築する必要があるんです。なにせクラウドサービスは基本無停止だから。

でね、このADFSサーバー群なんですけど、もちろん個々のサーバーはそれぞれ別の名前があるんですけど、ADFSサービスとしては一つの名前で動作するんです。当たり前?いやいや、普通じゃないかもしれないけど、内部サーバーと外部公開サーバーは違う名前使うよね。え?一緒?
参照するDNSによって違うゾーンのサーバーを名前解決されるのって気持ち悪くない?ADFS Proxyは自分と同じ名前の内部ネットワークのADFSサーバーと通信するとき困るじゃん!!と思ってしまいましたが、全部同じ名前なんです。

社内のADFSも社外のADFS Proxyも同じ「https://adfs.contoso.com」でアクセスするんです。

もちろん社外のADFS Proxyがユーザーの代理アクセスする社内のADFSに対しても「https://adfs.contoso.com」でアクセスするんだよ。

これって面白いよね。

ちなみにADFS Proxyサーバはhostsファイルに社内のADFSのIPアドレスを記述している。

hostsファイルなんて、使わずにDNSで解決すべき!!なんて思っているのですが、「あぁ、こういう使い方もありなんだ~」と。

今日言いたいのは、「Active Directory Federation Servicesは、たくさんサーバーが必要だけど、FQDNは一つ!!」ってことです。


SCCM2012 SP1では日本語ブートイメージは使えない?

System Center 2012 Configuration Manager?Service Pack1 を適用すると、Windows8及びWindows Server 2012に対応する関係で、Windows AIKもWindows8ベースとなるWindows ADKに変更になっており、今後作成するブートイメージはWindows8ベースで作成することとなります。
まぁ、それ自体は問題ないのですが、唯一異なること、AIKは日本語版が存在していたこと。


要するにWindows ADKは英語版のイメージを日本語対応させ必要があるんですね。しなくても良いけど
ってことで、日本語パッケージを追加して、UIを日本語に設定する。
そりゃ、文字化けを解消するために自然にやる作業だと思います。


じゃ、どんな作業なの?というと、ADKコンソールから次のコマンドを入力します。


Copype amd64 c:\winpe_x64
Dism /Mount-Wim /WimFile:media\sources\boot.wim /index:1 /MountDir:mount
Dism /image:mount /Add-package /packagepath:"%WinPERoot%\amd64\WinPE_OCs\ja-jp\lp.cab"
Dism /image:mount /Add-package /packagepath:"%WinPERoot%\amd64\WinPE_OCs\WinPE-FontSupport-JA-JP.cab"
Dism /image:mount /Set-LayeredDriver:6
Dism /image:mount /Set-TimeZone:"Tokyo Standard Time"

ここまでは問題なし、日本語表示ができる状態ですね。
次にUIを変更します。


Dism /image:mount /set-AllIntl:ja-JP

または


Dism /image:mount /set-UILang:ja-JP

で日本語表示になります。
最後に、次のコマンドでイメージを作成


Dism /unmount-Wim /MountDir:mount /Commit

簡単な作業ですね。
日本語化されたブートイメージは?media\sources\boot.wim です。


これを適当なフォルダーにコピーしてSystem Center 2012 configuration Managerのブートイメージ追加を行うとエラーになります。
ファイルの権限が足らないと叱られる。


エラーの原因は「TsRes.dll」というファイル。


解決方法は分からないけど、回避方法は分かってます。


「日本語UIにしない」


Dism /image:mount /set-AllIntl:ja-JP
Dism /image:mount /set-UILang:ja-JP

これらの日本語表示にするコマンドを入力しなければ大丈夫。
表示は英語になりますが、日本語部分もちゃんと表示されます。


ユーザーにかかわらない部分だと、この位のトラブルはヘッチャラですが、クライアントの自動アップデートでソフトウェアセンターの表示が英語になったりと、若干問題のあるService Pack 1なのでした。



素敵なDirectAccess

個人的にはモバイル、在宅勤務用のVPNとしては最高の評価です。


導入するのに、Windows7または8のEnterpriseが必要なので若干敷居は高いかもしれませんが、Windows 2008 R2または2012の標準機能として提供されているので、SSL-VPN装置などを購入するより安価かも知れません。


そして、何より、接続するための準備がユーザー的に不要であること、接続作業が不要であることを評価しています。


まず、接続準備についてですが、


今までのVPNはダイヤルアップ接続だったり、専用クライアントのインストールなどの作業が必ず必要だったのですが、DirectAccessはグループポリシーにて配信されるため、ユーザーが気が付かない間に展開が完了することが可能です。さらに、プログラムのインストールがないので、その辺のトラブルもない。まさに、導入においてトラブルが非常に少ないのです。


次に、接続操作


DirectAccessはWindowsの起動直後から接続されているネットワークが社外なのか、社内なのかを監視しています。社外と判断すると自動的に接続を行うので、ログオン前に接続が完了した状態になります。当然、どこかのLANやインターネット接続という作業は必要ですが、まるでクラウドサービスを利用しているかのように、オンプレミスのサーバーにアクセスできるのです。


だから、クラウドとオンプレミスのハイブリッド構成との相性がとってもいいんですよ。
ハイブリッドにすると、どうしてもオンプレミスの制限にユーザーが混乱したり、不満を感じたりするのですが、事前にDirectAccessを展開しておけば、そのような混乱や不満が起こらないと思うんですよ。


?


ただね、「安全ではない社外ネットワークに接続し、社内サービスを利用する」って意識が欠落してしまうんじゃないかと心配したりしてます。ユーザーにはセキュリティー意識をもって節度のある行動をしてほしいと思うので・・・クラウドサービスも一緒なんですけどね。


結局のところ、社外ネットワークにパソコンを接続しても安全な状態を維持する仕組みやルールが必要なんですよね。DirectAccessはとっても素晴らしい機能ですが、社外にあるクライアントのセキュリティーを高く保つことができないのであれば、使うべきではない機能なんですよね。これはDirectAccessに限った話ではないですけど!!



SCCM2012でのMVLSライセンススプレッドシート

 相変わらずSCCM2012を検証中ですが、いろいろ変わってて、既定の設定も少なくなったので、自分ナイズしやすくなった半面、何かと参考になる情報が減ってしまいました。

レポートフォルダを作成できないので管理がチョットしにくくなったなど微妙な悪改もあったりして、同じことをできるようにするまでちょっと時間がかかりますね。

さて、System Center Configuration Manager 2007でMVLSライセンススプレッドシートファイルの取り込みではMVLSサイトからCSVファイルをダウンロードして、Excelを使ってXMLファイルに変換する必要があったので、文字情報と数字情報の指定なんかでエラーになったりすることがあったのですが、System Center 2012 Configuration Managerになってから、ダウンロードしたCSVファイルのまま取り込みができるようになっています。

始めっからこうしてくれればよかったのに~と思うのですが、これは良い改善ですね。

それにしても、早くローカライズされたドキュメントが出てほしいです。
英語と機械翻訳を読むのは疲れます。



System Center 2012ライセンス変わりすぎ~

変わったってのは英語の資料で知ってたけど、こんなに早くリリースされると思ってなかったので適当読みしてたけど、いざ正式リリースして構築しようとしたらビビった。

System Center Configuration Manager 2007のサーバーライセンスを購入した時はSQL Serverのライセンスをどうするかで悩んで、既存のSQL Serverを利用することにしたんだけど、今回からサーバーライセンスがサーバーMLに変更されて、管理サーバライセンスは含まれるようになったんだよね。(MSに確認とっていないので若干不安ですが・・・)

ってことは・・・System Center 2007 With SQL Serverってサーバーライセンスを買っていたら、SQL Server分の費用が丸損ですか?

MSVLからのダウンロードにもSystem Center 2012にSQL Server 2008 R2が含まれるってことで、無料じゃないけど、無料でSQL Serverが付いてきます。もしかしてライセンス値上げしてる?

今までは単一機能を使ってたわけだけど、ほかの機能も使えるようになったってのはうれしいです。資料だけ見ててもこれがあるとなんか便利そうって機能あるしね。
System Center 2012の資料はすべて英語ってのが理解度に問題が発生するのですが・・・



15A-標準ライセンス調整レポートに載ってないリスト

MVSL以外のライセンス管理って結構面倒なことが多いですよね。
何が面倒ってインポート用のCSVファイルを作成すること。

インベントリデータの製品名を一致させないとカウントできない。

正直、製品名を統一してくれれば問題ないんですけど、製品名にバージョン情報を書き込んでくれたり、言語名入れたりと様々。
そのたびにCSVに追記してインポートしないとダメ。

これじゃぁ運用的に破たんしかねないですね。
ってことで、CSVに登録されていないソフトウェアインベントリの一覧を出力するレポートをつくってみました。
名づけて「15A-標準ライセンス調整レポートに載ってないリスト」

これを定期的に眺めれば、新しいバージョンが追加されたりしたときも登録漏れによるライセンス不一致も防げますね。

--SQLステートメント
SELECT
    soft.ProductName0 as [Product Name], 
    soft.ProductVersion0 as [Version],
    soft.Publisher0,
    count( soft.ResourceID) as [Inventory Count]
FROM
    v_GS_INSTALLED_SOFTWARE soft
    LEFT OUTER JOIN 
    ( SELECT Name , Version as ver FROM v_AI_NON_MS_LICENSE) lic
    ON lic.Name = soft.ProductName0 AND dbo.fn_MatchLicenseVersion(Lic.Ver, soft.ProductVersion0) = 1
WHERE
    lic.Ver IS NULL
GROUP BY
    soft.ProductName0,
    soft.ProductVersion0,
    soft.Publisher0
ORDER BY
    soft.ProductName0,
    soft.ProductVersion0
 
ちなみにWHERE lic.Ver IS NULLで絞り込みの条件を入れてあげると使いやすくなりますよ。


SharePoint アイテム保管ライブラリをのぞいてみよう(2025年12月改訂)

※2025年コンテンツ検索等の機能がリニューアルされましたので修正しました。 ※2023年アカウント移行に失敗し画像を失ったので再度取得し改訂しました。 Office 365 Advent Calendar 2021  の12月16日投稿です。 警告: 個人的な理解に基づく内容、...