次の方法で共有


現場マネージャーの Shifts アクセス許可を管理する

Shifts の現場担当者は、 チーム所有者またはスケジュール所有者ロールを持つユーザーです。 チームのスケジュールを作成および管理します。 既定では、現場担当者は Shifts で次の操作を実行できます。

  • チーム の Shifts 設定 を構成します。 たとえば、現場マネージャーは時間時計をオンにし、チームの現場担当者がシフトを入れ替え、休暇を要求できるかどうかを設定できます。
  • Shifts でチームのスケジュール グループを作成および管理します。 スケジュール グループは、部門や職種など、チーム内の一般的な特性に基づいて現場担当者をグループ化するために使用されます。

組織のニーズに応じて、現場マネージャーがチーム スケジュールを管理するために使用できる Shifts 機能を制限することが必要になる場合があります。 この記事では、 shiftsRoleDefinition Graph API を使用して、これらの機能に対するアクセス許可を制御する方法について説明します。

チームを管理するためのシフトの現場マネージャー機能

次の表は、Shifts の現場マネージャーがチームを管理するために使用できる設定とスケジュール グループの機能を示し、機能を制限できるかどうかを示しています。

設定/機能 説明 shiftsRoleDefinition Graph API を使用してアクセス許可を制御する
チーム タイム ゾーン チームのタイム ゾーンと最も近い都市を設定します。
週の始まり スケジュールを開始する曜日を設定します。
シフトのコピー シフトのコピー時にシフトアクティビティを自動的に含めるかどうかを設定します。
シフトを開く オープン シフトを作成して要求する機能をオンまたはオフにします。 ✔️1
シフトのスワップ 作業者のシフトを相互に交換する機能をオンまたはオフにします。 ✔️1
オファーシフト 同僚にシフトを提供する作業者の機能をオンまたはオフにします。 ✔️1
タイムアウト要求 作業者が休暇を要求する機能をオンまたはオフにします。 ✔️
休暇の理由 チームの休暇の理由を追加および編集します。 ✔️
タイム クロック チームのタイム クロックをオンまたはオフにします。 ✔️
時刻時計の位置情報 時刻クロックの位置情報を定義する (時刻クロック設定よりも優先されます) ✔️
過去のシフトの可視性 同僚の過去のシフトを確認する作業者の機能をオンまたはオフにします。
休暇の可視性 作業者の機能をオンまたはオフにして、お互いの休暇の詳細を表示します。
シフトの詳細の可視性 作業者が互いのシフトの詳細を表示する機能をオンまたはオフにします。
スケジュール グループを管理する スケジュール グループを追加、名前変更、削除します。 ✔️
スケジュール グループ メンバーシップを管理する スケジュール グループからチーム メンバーを追加および削除します。

1パラメーターを使用して、これら 3 つの機能を CanModifyShiftRequestsCapabilities 管理します。

また、スケジュール グラフの 作成または置換 API を使用して、Shifts 設定を定義し、スケジュール グループとメンバーシップを管理する [Create schedulingGroup Graph API] を使用することもできます。

シナリオ例

Contoso Ltd では、部門マネージャーがストア マネージャーに直接報告します。 ストア マネージャーは、部門マネージャーよりも社内でより多くの権限を持ち、ロールは次のように割り当てられます。

  • ストア マネージャーは Teams のチーム所有者です。
  • 部署マネージャーは Teams のチーム メンバーであり、Shifts で所有者をスケジュールします。

Contoso は、現場マネージャーの Shifts 機能を確認し、ビジネス ニーズに基づいて次の要件を決定しました。

現場マネージャーは、チームがシフトでタイム クロックを使用できるかどうかを選択することはできません

Contoso は、現場担当者が店舗内のステーションを使用してシフトの出勤と退勤を行う必要があるため、今のところシフトでタイム クロックを使用しないことを決定しました。 これは、次のことが必要であることを意味します。

  • ストア マネージャー (チーム所有者) と部門マネージャー (スケジュール所有者) のアクセス許可を削除して、チームのシフトのタイム クロック設定を変更します。
  • すべてのチームに対して、Shifts のタイム クロック設定を [オフ] に設定します。

これを行うには、次の手順を実行します。

  1. 現場マネージャーがチームのタイム クロック設定を変更できないようにするには、shiftsRoleDefinition Graph API を使用し、Shifts を使用してチーム所有者ロールのリストからallowedResourceActionsパラメーターを削除CanModifyTimeClockCapabilitiesし、すべてのチームの所有者ロールをスケジュールします。

    この例では、Contoso シカゴ ストアのチーム所有者ロールのアクセス許可を示します (チーム ID fb963991-69a8-4d2c-8465-cd8e374891c4)。

    要求

    PATCH https://graph.microsoft.com/beta/teams/fb963991-69a8-4d2c-8465-cd8e374891c4/schedule/shiftsRoleDefinition/teamowner
    Content-Type: application/json
    
    {
    "shiftsRoleDefinition": [
      {
        "allowedResourceActions": [
           "CanModifyShiftRequestsCapabilities",
           "CanModifyTimeOffRequestsCapabilities",
           "CanModifySchedulingGroups",
           "CanModifyTimeOffReasons"
         ]
      }
     ]
    }     
    
  2. すべてのチームの Shifts でタイム クロックをオフにするには、スケジュール Graph API の 作成または置換 を使用し、すべてのチームに 対して を timeClockEnabled parameterfalse 設定します。

    ここでは、Contoso シカゴ ストアのタイム クロックがオフになっています (チーム ID fb963991-69a8-4d2c-8465-cd8e374891c4)。

    要求

    PUT https://graph.microsoft.com/v1.0/teams/fb963991-69a8-4d2c-8465-cd8e374891c4/schedule
    Content-Type: application/json
    
    {
      "enabled": true,
      "timeZone": "America/Chicago”, 
      "timeClockEnabled": false
    }
    

Shifts の時間時計の設定は、Contoso のストア マネージャーと部署マネージャーがアクセス許可を削除して変更する前と後に、次のようになります。 アクセス許可を削除すると、Shifts で設定を使用できなくなります。

アクセス許可を削除して変更する前と後の現場マネージャーの Shifts でのタイム クロック設定の例。

部署のマネージャーは、シフトで休暇の理由を追加および編集できるかどうかを選択することはできません

Contoso では、タイムアウトの理由を追加および編集することが、ストア マネージャーの責任です。 つまり、すべてのチームの Shifts で休暇の理由を追加および編集するには、部門マネージャー (スケジュール所有者) のアクセス許可を削除する必要があります。

これを行うには、 shiftsRoleDefinition Graph API を使用し、Shifts を CanModifyTimeOffReasons 使用するすべてのチームのスケジュール所有者ロールのパラメーターをリストから allowedResourceActions 削除します。

この例では、Contoso シカゴ ストアのスケジュール所有者ロールのアクセス許可を示します (チーム ID fb963991-69a8-4d2c-8465-cd8e374891c4)。

要求

PATCH https://graph.microsoft.com/beta/teams/fb963991-69a8-4d2c-8465-cd8e374891c4/schedule/shiftsRoleDefinition/scheduleowner
Content-Type: application/json

{
"shiftsRoleDefinition": [
  {
    "allowedResourceActions": [
       "CanModifyShiftRequestsCapabilities",
       "CanModifyTimeOffRequestsCapabilities",
       "CanModifySchedulingGroups"
     ]
  }
 ]
}

Shifts の [休暇の理由] オプションは、Contoso の部門マネージャーが使用するアクセス許可を削除する前と削除後に表示されます。 アクセス許可を削除した後、Shifts ではオプションを使用できません。

Shifts で使用するアクセス許可を削除する前と後の部署マネージャーの [休暇の理由] オプションの例。