Microsoft Planner にて一般ユーザーによるプラン作成を制限する方法について

こんにちは、SharePoint サポートの森村です。
本記事では Microsoft Planner (以下 Planner) を使用した場合の動作について、弊社の米国のエンジニアが公開済みの下記ブログ記事の内容についてご案内いたします。

タイトル : Microsoft Planner–a few common support answers
アドレス : https://blogs.msdn.microsoft.com/brismith/2016/06/06/microsoft-plannera-few-common-support-answers/

タイトル : Microsoft Planner: Another look as MsolSettings–and a couple more answers
アドレス : https://blogs.msdn.microsoft.com/brismith/2016/06/07/microsoft-planner-another-look-as-msolsettingsand-a-couple-more-answers/

なお、本日 (2016 年 6 月 24 日) 現在の情報となるため、動作に変更等がある可能性があります。

※2016/9/15、2017/3/13、2017/3/27 に一部内容を更新しました。

※2017/3/28 追記 本日 (2017 年 3 月 28 日) 時点で、本ブログ記事の手順に必要なモジュールの提供が停止されており、再開の予定がない状態となります。こちらは、該当モジュールが Azure Active Directory PowerShell Module V1 Public Preview (ベータ) 版での提供であったことと、現在最新の Version 2 (V2) を開発、提供中であるためとなります。 このため、既に Azure Active Directory PowerShell Module V1 Public Preview 版をダウンロード済みの方は本ブログ記事の手順をご利用可能ですが、新規に本ブログ記事の手順をご利用いただくことはできません。 新規に設定を行いたい方のために、Azure Active Directory PowerShell Module V2 版を利用して Planner 上からプラン作成を制限する方法について下記のブログ記事でご案内しておりますので、併せてご確認ください。

タイトル : Microsoft Planner にて一般ユーザーによるプラン作成を制限する方法について (V2)
アドレス : https://blogs.technet.microsoft.com/sharepoint_support/2017/03/27/microsoft-planner-plan-creation-restriction-v2/

目次
1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法 2. 一部のユーザーのみにプラン作成を許可する方法 3. 再度全ユーザーにプラン作成を許可する方法 (設定を変更、削除する方法) 4. インストール時、PowerShell 実行時にエラー メッセージが表示された場合 5. 関連情報 1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法
Planner 製品は Office 365 グループの機能を利用しております。
Planner のページから [新しいプラン] をクリックすると、プランの名前の Office 365 グループが作成され、そのグループ用のプランとして Planner 上でプランの編集が可能となります。

しかし、テナントの管理方針によっては、自由に Office 365 グループの作成をさせたくない、ということも考えられます。
Planner の [新しいプラン] メニューでは、Outlook Web Access ページからの Office 365 グループ作成とは異なる機能を使用しているため、Exchange Online の PowerShell にて、Set-OwaMailboxPolicy を使用し Office 365 グループの作成を禁止している場合でも新規にプラン (Office 365 グループ) が作成される動作となります。

このため、自由に Office 365 グループの作成をさせたくない場合は、下記手順にて PowerShell を使用することで、全体管理者を含むすべてのユーザーに対し、Planner や Outlook on the Web 上からのプランの作成 (Office 365 グループの作成) を禁止することが可能です。
(ただし、全体管理者のユーザーの場合は、Office 365 管理センター上から Office 365 グループを作成することが可能です。)

事前準備手順

  1. 64 Bit OS が動作している Windows 10/8.1/8/7 PC を準備します。あるいは、Windows Server 2012 R2/Windows Server 2012/Windows Server 2008 R2 のサーバー PC を準備します。

  2. Windows 7 PC、あるいは Windows Server 2008 R2 で使用する場合は、前提条件を満たすために、最新の Windows Update をすべて適用します。Windows Update 適用後に再起動を行い、その後下記リンクから Windows Management Framework 3.0 をインストールし、 Windows PowerShell 3.0 を使用可能とします。(Windows 8、Windows Server 2012 以降の場合は 2. の手順は不要です。)

     タイトル : Windows Management Framework 3.0
    アドレス : https://www.microsoft.com/en-us/download/details.aspx?id=34595
    
  3. 下記弊社 TechNet ページを参照し、Microsoft Online Services サインイン アシスタントのインストールを行います。

     タイトル : Connect to Office 365 PowerShell
    アドレス : https://technet.microsoft.com/ja-jp/library/dn975125.aspx
    
  4. 下記のページを開き、AdministrationConfig-V1.1.130.0-Preview.msi ファイルの右側の [単一のファイルをダウンロードする] 列に表示されている [ダウンロード] のリンクをクリックし、今回利用するコマンドレットを含むプレビュー版の Azure Active Directory の PowerShell モジュール (AdministrationConfig.msi) を入手し、インストールを実施します。ページに記載がありますように、9/7 時点でプレビュー版の内容となります。
    なお、利用するコマンドレットはプレビュー版にて追加されたものとなりますため、以前に Azure Active Directory の PowerShell モジュールをインストール済みの環境の場合でも、改めてプレビュー版の入手、およびインストールが必要となります。
    また、ページ内に記載がございますが、同一ページ内からダウンロード可能である AdministrationConfig-V1.1.160.0-GA.msi には今回利用するコマンドレットが含まれていないため、下記手順にはご利用いただけません。プレビュー版の AdministrationConfig-V1.1.130.0-Preview.msi をご利用ください。

     タイトル : Azure Active Directory Connection
    アドレス : https://connect.microsoft.com/site1164/Downloads/DownloadDetails.aspx?DownloadID=59185
    

    なお、冒頭にも記載いたしましたように、本日 (2017 年 3 月 28 日) 時点で上記モジュールはダウンロードできません。詳細はこちらのブログ記事をご参照ください。

  5. PowerShell の実行ポリシーを変更していない場合は、インストールした Windows PowerShell の Microsoft Azure Active Directory モジュール を管理者権限で起動し、下記コマンドを実行します。(すでに変更済みの場合は 5. の手順は不要です。)

     Set-ExecutionPolicy RemoteSigned
    

設定手順

  1. インストールした "Microsoft Azure Active Directory Module for Windows PowerShell" をクリックして、コンソールを起動後、以下の 5 行のコマンドレットを実行します。1 行目の Connect-MsolService を実行すると、認証ダイアログがポップアップされるので、該当テナントの全体管理者のアカウントとパスワードを入力します。

     Connect-MsolService;
    $template = Get-MsolSettingTemplate -TemplateId 62375ab9-6b52-47ed-826b-58e47e0e304b;
    $setting = $template.CreateSettingsObject();
    $setting["EnableGroupCreation"] = "false";
    New-MsolSettings -SettingsObject $setting;
    

    なお、2 行目の Get-MsolSettingTemplate にてエラーとなる場合は、プレビュー版の Azure Active Directory の PowerShell モジュールをインストールしていないことが原因として考えられます。
    上記「事前準備手順」の手順 4. を再度ご確認ください。

  2. 設定が反映されるまで、数分~1 時間程度待ちます。

  3. Planner にアクセスを行い、新規プラン作成を試みるとエラーメッセージが表示され、プランが作成できない動作に変化したことを確認します。

プランが作成できない場合のメッセージ
プランと Office 365 グループの作成が無効になっています
「プランと Office 365 グループの作成が無効になっています 組織のグローバル管理者が、新しいプランと Office 365 グループを作成する機能を無効にしています。」と表示されます。

2. 一部のユーザーのみにプラン作成を許可する方法
上記「1. Microsoft Planner にて管理者以外の一般ユーザーによるプラン作成を制限する方法」では、すべてのユーザーによるプラン作成 (Office 365 グループ作成) を禁止しますが、テナントの管理方針によっては、管理者等、一部のユーザーにはプラン作成を許可したい、ということも考えられます。

この場合は、上記 1. の方法に少し手順を追加することで、実現が可能です。

設定手順

  1. 上記「1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法」の事前準備手順を実施します。

  2. Office 365 管理センター上にて、セキュリティ グループを作成します。(例 : CanCreateGroups)

  3. プランを作成可能としたいユーザーをセキュリティ グループに追加します。

  4. "Microsoft Azure Active Directory Module for Windows PowerShell" をクリックして、コンソールを起動後、以下のコマンドレットを実行します。「セキュリティ グループ名」の部分は適宜変更します。
    1 行目の Connect-MsolService を実行すると、認証ダイアログがポップアップされるので、該当テナントの全体管理者のアカウントとパスワードを入力します。

     # 新規に設定を行う場合は、下記 8 行のコマンドレットを実行します。
    Connect-MsolService;
    $groupname = "セキュリティ グループ名";
    $targetgroup = Get-MsolGroup -SearchString $groupname -MaxResults 5000 | Where-Object { $_.DisplayName -eq $groupname};
    $template = Get-MsolSettingTemplate -TemplateId 62375ab9-6b52-47ed-826b-58e47e0e304b;
    $setting = $template.CreateSettingsObject();
    $setting["EnableGroupCreation"] = "false";
    $setting["GroupCreationAllowedGroupId"] = $targetgroup.ObjectId;
    New-MsolSettings -SettingsObject $setting;
    
     # 既に「1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法」を実施済みの場合は、
    # 下記 8 行のコマンドレットを実行します。
    Connect-MsolService;
    $groupname = "セキュリティ グループ名";
    $targetgroup = Get-MsolGroup -SearchString $groupname -MaxResults 5000 | Where-Object { $_.DisplayName -eq $groupname};
    $currentsetting = Get-MsolAllSettings | Where-Object { $_.TemplateId -eq "62375ab9-6b52-47ed-826b-58e47e0e304b"};
    $value = $currentsetting.GetSettingsValue();
    $value["EnableGroupCreation"] = "false";
    $value["GroupCreationAllowedGroupId"] = $targetgroup.ObjectId;
    Set-MsolSettings -SettingId $currentsetting.ObjectId -SettingsValue $value;
    

    Get-MsolSettingTemplate や Get-MsolAllSettings 等がエラーとなる場合は、プレビュー版の Azure Active Directory の PowerShell モジュールをインストールしていないことが原因として考えられます。
    上記「事前準備手順」の手順 4. を再度ご確認ください。

  5. 設定が反映されるまで、数分~1 時間程度待ちます。

  6. セキュリティグループに含まれているユーザーにて Planner にアクセスを行い、新規プランの作成が可能であることを確認します。また、セキュリティ グループに含まれていないユーザーにて Planner にアクセスを行い、新規プラン作成を試みるとエラーメッセージが表示され、プランが作成できない動作であることを確認します。

3. 再度全ユーザーにプラン作成を許可する方法 (設定を変更、削除する方法)
プラン作成を禁止した後に、再度全ユーザーに対しプラン作成を許可したい場合は、下記手順にて設定値の変更を行うことで、テナントの設定が変更され、再度プラン作成が可能となります。

設定手順

  1. 上記「1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法」の事前準備手順を実施します。

  2. "Microsoft Azure Active Directory Module for Windows PowerShell" をクリックして、コンソールを起動後、以下の 6 行のコマンドレットを実行します。
    1 行目の Connect-MsolService を実行すると、認証ダイアログがポップアップされるので、該当テナントの全体管理者のアカウントとパスワードを入力します。

     Connect-MsolService;
    $currentsetting = Get-MsolAllSettings | Where-Object { $_.TemplateId -eq "62375ab9-6b52-47ed-826b-58e47e0e304b"};
    $value = $currentsetting.GetSettingsValue();
    $value["EnableGroupCreation"] = "true";
    $value["GroupCreationAllowedGroupId"] = "";
    Set-MsolSettings -SettingId $currentsetting.ObjectId -SettingsValue $value;
    
  3. 設定が反映されるまで、数分~1 時間程度待ちます。

  4. 一般ユーザーにて Planner にアクセスを行い、新規プラン作成が可能となったことを確認します。

  5. 以降は任意の手順となりますが、"EnableGroupCreation"、"GroupCreationAllowedGroupId" 以外の設定を変更していない場合は、追加で下記 3 行のコマンドレットを実行することで、設定を削除することが可能です。必ず先に 2. の手順にて "EnableGroupCreation" の設定値を変更後に削除をお願いいたします。

     Connect-MsolService;
    $currentsetting = Get-MsolAllSettings | Where-Object {$_.TemplateId -eq "62375ab9-6b52-47ed-826b-58e47e0e304b"};
    Remove-MsolSettings -SettingId $currentsetting.ObjectId;
    

4. インストール時、PowerShell 実行時にエラーメッセージが表示された場合PowerShell モジュールのインストール時や、PowerShell の実行時にエラー メッセージが表示される場合があります。 主なパターンについてトラブルシュート方法を記載します。

  1. 32 ビット PC に Azure Active Directory PowerShell モジュールのインストールを試みた場合
  2. 前提条件のソフトウェアのインストールを行っていない場合
  3. 以前のバージョンの Azure Active Directory PowerShell モジュールを使用している場合
  4. 既にテナント上にプラン作成許可、制限の設定が行われている場合

a. 32 ビット PC に Azure Active Directory PowerShell モジュールのインストールを試みた場合
Azure Active Directory PowerShell モジュールは、64 ビット版のみをサポートしております。(参考ページ)
このため、32 ビット版の Windows OS に対してインストールを試みると、下記の様なエラーが表示されます。 事前準備手順にも記載いたしましたように、64 ビット版の Windows OS 上で再度実施してください。

32 ビット版 Windows OS 上に表示されるメッセージ例 cannotinstallto32bit

 -------- エラー内容 ここから --------
このインストールパッケージはこの種類のプロセッサでサポートされていません。プロダクトベンダーに問い合わせてください。
-------- エラー内容 ここまで --------

b. 前提条件のソフトウェアのインストールを行っていない場合
Windows 7 あるいは Windows Server 2008 R2 上にインストールする場合、Windows Management Framework 3.0 が必須モジュールとなりますが、Windows Management Framework 3.0 をインストールしていない状態でスタートメニューから [Microsoft Azure Active Directory Module for Windows PowerShell] を起動すると、下記の様なエラー メッセージが表示されます。 事前準備手順を再度確認し、Windows Management Framework 3.0 の追加インストールを行ってください。

Windows Management Framework 3.0 をインストールしていない場合のエラー メッセージ例
powershell3isnotinstalled

 -------- エラー内容 ここから --------
Import-Module : ファイルまたはアセンブリ 'file:///C:\Windows\system32\WindowsPowerShell\v1.0\Modules\MSOnline\Microsoft.Online.Administration.Automation.PSModule.dll'、またはその依存関係の 1 つが読み込めませんでした。このアセンブリは現在読み込まれているランタイムより新しいランタイムでビルドされているため、読み込むことができません。
発生場所 行:1 文字:14
+ Import-Module <<<<  MSOnline
    + CategoryInfo          : InvalidOperation: (:) [Import-Module]、BadImageFo    rmatException
    + FullyQualifiedErrorId : FormatXmlUpateException,Microsoft.PowerShell.Commands.ImportModuleCommand
-------- エラー内容 ここまで --------

c. 以前のバージョンの Azure Active Directory PowerShell モジュールを使用している場合
プラン作成を制限する際に使用する下記のコマンド群は、プレビュー版の Azure Active Directory PowerShell モジュールにのみ含まれております。(AdministrationConfig-V1.1.130.0-Preview.msi)

  • Get-MsolSettingTemplate
  • New-MsolSettings
  • Remove-MsolSettings
  • Get-MsolSettings
  • Set-MsolSettings

これ以前のバージョンの Azure Active Directory PowerShell モジュールなど、該当のプレビュー版以外を使用していた場合は、下記の様なエラー メッセージが表示されます。 事前準備手順を再度確認し、以前のバージョンのアンインストール、および正しいバージョンのインストールを行ってください。

以前のバージョンの Azure Active Directory PowerShell モジュールを使用している場合のエラー メッセージ例
incorrectversionisinstalled

 -------- エラー内容 ここから --------
Get-MsolSettingTemplate : 用語 'Get-MsolSettingTemplate' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してください。
発生場所 行:1 文字:13
+ $template = Get-MsolSettingTemplate -TemplateId 62375ab9-6b52-47ed-826b-58e47e0e ...
+             ~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Get-MsolSettingTemplate:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
-------- エラー内容 ここまで --------

d. 既にテナント上にプラン作成許可、制限の設定が行われている場合
既にプラン作成を制限する設定をテナント上に行っている状態で、「1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法」を実施した場合、New-MsolSettings コマンドで追加される設定内容がすでに存在するため、下記の様なエラーが表示されて処理が失敗します。 この状況で設定変更を行うためには、「2. 一部のユーザーのみにプラン作成を許可する方法」内の、『既に「1. Microsoft Planner にて全ユーザーによるプラン作成を制限する方法」を実施済みの場合は、下記 8 行のコマンドレットを実行します。』の方法にて、設定内容を変更します。

既にテナント上にプラン作成許可、制限の設定が行われている場合のエラー メッセージ例
settingisalreadycreated

 -------- エラー内容 ここから --------
New-MsolSettings : Error calling CreateSettings:
Content {
  "error": {
    "code": "Request_BadRequest",
    "message": "A conflicting object with one or more of the specified property values is present in the directory.",
    "innerError": {
      "request-id": "9c78c4c6-e181-4ca1-bc06-7bb460ea9355",
      "date": "2016-12-06T01:39:41"
    }
  }
}
ErrorException
ErrorMessage
StatusCode BadRequest
StatusDescription Bad Request
ResponseStatus Completed
発生場所 行:1 文字:1
+ New-MsolSettings -SettingsObject $setting;
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [New-MsolSettings], ApiException
    + FullyQualifiedErrorId : Microsoft.Online.Administration.Automation.ApiException,Microsoft.Online.Administration.Automation.CreateSettings
-------- エラー内容 ここまで --------

5. 関連情報
プランの作成の制限方法は 2016 年 6 月の Office 365 の更新で機能追加されております。
詳細につきましては下記でご案内いたしております。

タイトル : What’s new in Office 365 Groups administration—June 2016 update
アドレス : https://blogs.office.com/2016/06/13/whats-new-in-office-365-groups-administration-june-2016-update/

今回の投稿は以上です。


本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。