할당된 액세스 구성 XML 파일 만들기
할당된 액세스를 구성하려면 구성 XML 파일을 만들어 디바이스에 적용해야 합니다. 구성 파일은 XSD(할당된 액세스 XML 스키마 정의)에 정의된 스키마를 따라야 합니다.
이 문서에서는 실제 예제를 포함하여 할당된 액세스 구성 파일을 구성하는 방법을 설명합니다.
먼저 XML 파일의 기본 구조를 살펴보겠습니다. 할당된 액세스 구성 파일에는 다음이 포함됩니다.
- 하나 이상의
profiles
입니다. 각각profile
은 실행할 수 있는 애플리케이션 집합을 정의합니다. - 하나 이상의
configs
입니다. 각config
사용자는 사용자 계정 또는 그룹을 에 연결합니다.profile
다음은 하나의 프로필과 하나의 구성이 있는 할당된 액세스 구성 파일의 기본 예입니다.
<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config">
<Profiles>
<Profile Id="{GUID}">
<!-- Add configuration here as needed -->
</Profile>
</Profiles>
<Configs>
<Config>
<!-- Add configuration here as needed -->
</Config>
</Configs>
</AssignedAccessConfiguration>
버전 관리
할당된 액세스 구성 XML의 버전이 지정됩니다. 버전은 XML 루트 요소에 정의되며 XML 파일의 유효성을 검사하는 데 사용할 스키마를 결정하는 데 사용됩니다. 이 버전은 구성에 사용할 수 있는 기능을 결정하는 데도 사용됩니다. 다음은 설명서 예제에 사용된 버전, 별칭 및 네임스페이스의 테이블입니다.
버전 | 별칭 | 네임스페이스 |
---|---|---|
Windows 11 버전 22H2 | v5 |
http://schemas.microsoft.com/AssignedAccess/2022/config |
Windows 11 버전 21H2 | v4 |
http://schemas.microsoft.com/AssignedAccess/2021/config |
Windows 10 | v5 |
http://schemas.microsoft.com/AssignedAccess/202010/config |
Windows 10 | v3 |
http://schemas.microsoft.com/AssignedAccess/2020/config |
Windows 10 | rs5 |
http://schemas.microsoft.com/AssignedAccess/201810/config |
Windows 10 | default | http://schemas.microsoft.com/AssignedAccess/2017/config |
버전별 요소 및 특성을 포함하는 호환되는 구성 XML에 권한을 부여하려면 항상 추가 기능 스키마의 네임스페이스를 포함하고 그에 따라 특성과 요소를 네임스페이스 별칭으로 데코레이트합니다. 예를 들어 Windows 11 버전 22H2에 추가된 기능을 구성 StartPins
하려면 아래 예제를 사용합니다. 22H2 릴리스의 네임스페이 http://schemas.microsoft.com/AssignedAccess/2022/config
스에 연결된 별칭 v5
과 인라인에서 별칭에 StartPins
태그가 지정됩니다.
<?xml version="1.0" encoding="utf-8" ?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config"
xmlns:v5="http://schemas.microsoft.com/AssignedAccess/2022/config">
<Profiles>
<Profile Id="{GUID}">
<!-- Add configuration here as needed -->
<v5:StartPins>
<!-- Add StartPins configuration here -->
</v5:StartPins>
</Profile>
</Profiles>
<Configs>
<Config>
<!-- Add configuration here as needed -->
</Config>
</Configs>
</AssignedAccessConfiguration>
여기에서 할당된 액세스 XML 스키마 정의: 할당된 액세스 XML 스키마 정의(XSD)를 찾을 수 있습니다.
프로필
구성 파일에는 하나 이상의 프로필이 포함될 수 있습니다. 각 프로필은 고유 식별자와 Profile Id
필요에 Name
따라 로 식별됩니다. 예시:
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" Name="Microsoft Learn example">
<!-- Add configuration here as needed -->
</Profile>
</Profiles>
팁
는 Profile Id
XML 파일 내에서 고유해야 합니다. PowerShell cmdlet New-Guid
을 사용하여 GUID를 생성할 수 있습니다.
프로필은 다음 두 가지 유형 중 하나일 수 있습니다.
-
KioskModeApp
: 키오스크 환경을 구성하는 데 사용됩니다. 이 프로필이 할당된 사용자는 데스크톱에 액세스하지 않지만 잠금 화면 위의 전체 화면에서 실행되는 유니버설 Windows 플랫폼(UWP) 애플리케이션 또는 Microsoft Edge만 액세스합니다. -
AllAppList
는 제한된 사용자 환경을 구성하는 데 사용됩니다. 이 프로필이 할당된 사용자는 시작 메뉴에서 특정 앱을 사용하여 데스크톱에 액세스합니다.
중요
- 디바이스에서 및
ShellLauncher
를 동시에 설정할KioskModeApp
수 없습니다. - 구성 파일은 하나의
KioskModeApp
프로필만 포함할 수 있지만 여러AllAppList
프로필을 포함할 수 있습니다.
KioskModeApp
프로필의 KioskModeApp
속성은 다음과 같습니다.
속성 | 설명 | 세부 정보 |
---|---|---|
AppUserModelId |
UWP 앱의 AUMID(애플리케이션 사용자 모델 ID)입니다. | 설치된 앱의 애플리케이션 사용자 모델 ID를 찾는 방법을 알아봅니다. |
v4:ClassicAppPath |
데스크톱 앱 실행 파일의 전체 경로입니다. | 키오스크 모드에서 사용되는 데스크톱 앱의 경로입니다. 경로는 형식의 %variableName% 시스템 환경 변수를 포함할 수 있습니다. |
v4:ClassicAppArguments |
데스크톱 앱에 전달할 인수입니다. | 이 속성은 선택 사항입니다. |
기본적으로 Ctrl+Alt+DEL 시퀀스를 사용하여 키오스크 모드를 종료할 수 있습니다. 요소를 정의 BreakoutSequence
하여 기본 시퀀스를 변경할 수 있습니다. 특성은 Key
키 조합을 나타내는 문자열입니다.
데스크톱 앱과 UWP 앱이라는 두 프로필의 예:
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
<KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://www.contoso.com/ --edge-kiosk-type=fullscreen --kiosk-idle-timeout-minutes=2" />
<v4:BreakoutSequence Key="Ctrl+A"/>
</Profile>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F79}">
<KioskModeApp AppUserModelId="Microsoft.BingWeather_8wekyb3d8bbwe!App" />
</Profile>
참고
그룹에는 KioskModeApp
프로필이 아닌 사용자에게만 프로필을 할당할 수 있습니다.
AllAppList
키오스크 장치의 용도에 따라 실행이 허용된 응용 프로그램 목록을 정의합니다. 이 목록에는 UWP 앱과 데스크톱 앱이 모두 포함될 수 있습니다. 디바이스에 mult-app 키오스크 구성이 적용되면 AppLocker 규칙이 생성되어 구성에 나열된 앱을 허용합니다.
참고
앱에 다른 앱에 대한 종속성이 있는 경우 둘 다 허용된 앱 목록에 포함되어야 합니다.
노드 내에서 AllAppList
실행이 허용되는 애플리케이션 목록을 정의합니다. 각 App
요소에는 다음과 같은 속성이 있습니다.
속성 | 설명 | 세부 정보 |
---|---|---|
AppUserModelId |
UWP 앱의 AUMID(애플리케이션 사용자 모델 ID)입니다. | 설치된 앱의 애플리케이션 사용자 모델 ID를 찾는 방법을 알아봅니다. |
DesktopAppPath |
데스크톱 앱 실행 파일의 전체 경로입니다. | 키오스크 모드에서 사용되는 데스크톱 앱의 경로입니다. 경로는 형식의 %variableName% 시스템 환경 변수를 포함할 수 있습니다. |
rs5:AutoLaunch |
사용자가 로그인할 때 자동으로 앱(데스크톱 또는 UWP 앱)을 시작할지 여부를 나타내는 부울 특성입니다. | 이 속성은 선택 사항입니다. 하나의 애플리케이션만 자동 실행을 수행할 수 있습니다. |
rs5:AutoLaunchArguments |
로 구성된 AutoLaunch 앱에 전달할 인수입니다. |
AutoLaunchArguments는 있는 그대로 앱에 전달되며 앱은 인수를 명시적으로 처리해야 합니다. 이 속성은 선택 사항입니다. |
예제:
<AllAppsList>
<AllowedApps>
<App AppUserModelId="Microsoft.WindowsCalculator_8wekyb3d8bbwe!App" />
<App DesktopAppPath="C:\Windows\system32\cmd.exe" />
<App DesktopAppPath="%windir%\explorer.exe" />
<App AppUserModelId="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" />
<App DesktopAppPath="C:\Windows\System32\notepad.exe" rs5:AutoLaunch="true" rs5:AutoLaunchArguments="%windir%\setuperr.log" />
</AllowedApps>
</AllAppsList>
파일 탐색기 제한 사항
제한된 사용자 환경(AllAppList
)에서 폴더 검색은 기본적으로 잠깁니다. 노드를 포함하여 FileExplorerNamespaceRestrictions
알려진 폴더에 대한 액세스를 명시적으로 허용할 수 있습니다.
다운로드 폴더, 이동식 드라이브 또는 제한 사항에 대한 사용자 액세스를 지정할 수 있습니다. 다운로드 및 이동식 드라이브는 동시에 허용될 수 있습니다.
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" Name="Microsoft Learn example">
<AllAppsList>
<AllowedApps>
<!-- Add configuration here as needed -->
</AllowedApps>
</AllAppsList>
<rs5:FileExplorerNamespaceRestrictions>
<!-- Add configuration here as needed -->
</rs5:FileExplorerNamespaceRestrictions>
<!-- Add configuration here as needed -->
</Profile>
</Profiles>
다음은 몇 가지 실용적인 예입니다.
모든 항목 차단
노드를 사용하지 않거나 비워 둡니다.
<rs5:FileExplorerNamespaceRestrictions>
</rs5:FileExplorerNamespaceRestrictions>
다운로드만 허용
<rs5:FileExplorerNamespaceRestrictions>
<rs5:AllowedNamespace Name="Downloads"/>
</rs5:FileExplorerNamespaceRestrictions>
이동식 드라이브만 허용
<rs5:FileExplorerNamespaceRestrictions>
<v3:AllowRemovableDrives />
</rs5:FileExplorerNamespaceRestrictions>
다운로드 및 이동식 드라이브 모두 허용
<rs5:FileExplorerNamespaceRestrictions>
<rs5:AllowedNamespace Name="Downloads"/>
<v3:AllowRemovableDrives/>
</rs5:FileExplorerNamespaceRestrictions>
제한 없음, 모든 위치 허용
<rs5:FileExplorerNamespaceRestrictions>
<v3:NoRestriction />
</rs5:FileExplorerNamespaceRestrictions>
팁
제한된 사용자 환경에서 파일 탐색기 대한 액세스 권한을 부여하려면 허용된 앱 목록에 를 추가하고 Explorer.exe
시작 메뉴에 바로 가기를 고정합니다.
시작 메뉴 사용자 지정
제한된 사용자 환경 프로필(AllAppList
)의 경우 시작 레이아웃을 정의해야 합니다. 시작 레이아웃에는 시작 메뉴에 고정된 애플리케이션 목록이 포함되어 있습니다. 허용되는 모든 애플리케이션을 시작 메뉴 또는 하위 집합에 고정하도록 선택할 수 있습니다. 사용자 지정된 시작 레이아웃을 만드는 가장 쉬운 방법은 테스트 디바이스에서 시작 메뉴를 구성한 다음 레이아웃을 내보내는 것입니다.
시작 메뉴 구성을 사용자 지정하고 내보내는 방법을 알아보려면 시작 메뉴 사용자 지정을 참조하세요.
내보낸 시작 메뉴 구성을 StartLayout
사용하여 요소를 사용하고 XML 파일의 콘텐츠를 추가합니다. 예시:
<StartLayout>
<![CDATA[
<!-- Add your exported Start menu XML configuration file here -->
]]>
</StartLayout>
일부 앱이 고정된 예제:
<StartLayout>
<![CDATA[
<LayoutModificationTemplate xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout" Version="1"
xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification">
<LayoutOptions StartTileGroupCellWidth="6" />
<DefaultLayoutOverride>
<StartLayoutCollection>
<defaultlayout:StartLayout GroupCellWidth="6">
<start:Group Name="Group1">
<start:Tile Size="4x4" Column="0" Row="0" AppUserModelID="Microsoft. ZuneMusic_8wekyb3d8bbwe!Microsoft.ZuneMusic" />
<start:Tile Size="2x2" Column="4" Row="2" AppUserModelID="Microsoft. ZuneVideo_8wekyb3d8bbwe!Microsoft.ZuneVideo" />
</start:Group>
<start:Group Name="Group2">
<start:DesktopApplicationTile Size="2x2" Column="2" Row="0" DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Paint.lnk" />
<start:DesktopApplicationTile Size="2x2" Column="0" Row="0" DesktopApplicationLinkPath="%APPDATA%\Microsoft\Windows\Start Menu\Programs\Accessories\Notepad. lnk" />
</start:Group>
</defaultlayout:StartLayout>
</StartLayoutCollection>
</DefaultLayoutOverride>
</LayoutModificationTemplate>
]]>
</StartLayout>
내보낸 시작 메뉴 구성을 v5:StartPins
사용하여 요소를 사용하고 내보낸 JSON 파일의 콘텐츠를 추가합니다. 예시:
<v5:StartPins>
<![CDATA[
<!-- Add your exported Start menu JSON configuration file here -->
]]>
</v5:StartPins>
일부 앱이 고정된 예제:
<v5:StartPins>
</v5:StartPins>
참고
사용자를 위해 앱을 설치하지 않았지만 시작 레이아웃 XML에 포함된 경우 앱이 시작 화면에 표시되지 않습니다.
작업 표시줄 사용자 지정
제한된 사용자 환경에서는 작업 표시줄에 앱을 고정할 수 없습니다. 할당된 액세스 구성의 일부로 레이아웃 수정 XML의 태그를 사용하여 <CustomTaskbarLayoutCollection>
작업 표시줄 레이아웃을 구성하는 것은 지원되지 않습니다.
사용 가능한 유일한 작업 표시줄 사용자 지정은 부울 특성을 사용하여 ShowTaskbar
표시하거나 숨기는 옵션입니다.
다음 예제에서는 작업 표시줄을 노출합니다.
<Taskbar ShowTaskbar="true"/>
다음 예제에서는 작업 표시줄을 숨깁니다.
<Taskbar ShowTaskbar="false"/>
참고
이는 태블릿 모드의 자동으로 작업 표시줄 숨기기 옵션과 다릅니다. 여기에서는 마우스 포인터를 위로 살짝 밀거나 화면 아래로 이동할 때 작업 표시줄을 보여 줍니다. 로 false
설정 ShowTaskbar
하면 작업 표시줄이 영구적으로 숨겨지게 됩니다.
사용자 지정 레이아웃을 만들고 XML 파일에 추가하여 작업 표시줄을 사용자 지정할 수 있습니다. 작업 표시줄 구성을 사용자 지정하고 내보내는 방법을 알아보려면 작업 표시줄 사용자 지정을 참조하세요.
참고
Windows 11 특성은 ShowTaskbar
no-op입니다. 값을 true
사용하여 구성합니다.
내보낸 작업 표시줄 구성을 v5:TaskbarLayout
사용하여 요소를 사용하고 XML 파일의 콘텐츠를 추가합니다. 예시:
<Taskbar ShowTaskbar="true" />
<v5:TaskbarLayout><![CDATA[
<!-- Add your exported Taskbar XML configuration file here -->
]]>
</v5:TaskbarLayout>
다음은 몇 가지 앱이 고정된 사용자 지정 작업 표시줄의 예입니다.
<Taskbar ShowTaskbar="true" />
<v5:TaskbarLayout><![CDATA[
<?xml version="1.0" encoding="utf-8"?>
<LayoutModificationTemplate
xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification"
xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout"
xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout"
xmlns:taskbar="http://schemas.microsoft.com/Start/2014/TaskbarLayout"
Version="1">
<CustomTaskbarLayoutCollection>
<defaultlayout:TaskbarLayout>
<taskbar:TaskbarPinList>
<taskbar:DesktopApp DesktopApplicationID="Microsoft.Windows.Explorer" />
<taskbar:DesktopApp DesktopApplicationID="windows.immersivecontrolpanel_cw5n1h2txyewy!microsoft.windows.immersivecontrolpanel" />
<taskbar:DesktopApp DesktopApplicationLinkPath="%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk"/>
</taskbar:TaskbarPinList>
</defaultlayout:TaskbarLayout>
</CustomTaskbarLayoutCollection>
</LayoutModificationTemplate>
]]>
</v5:TaskbarLayout>
구성
에서 Configs
하나 이상의 사용자 계정 또는 그룹 및 프로필과의 연결을 정의합니다.
사용자 계정이 로그인하면 제한된 사용자 환경의 일부인 정책 설정과 함께 연결된 할당된 액세스 프로필이 적용됩니다.
다음을 할당할 수 있습니다.
- 로컬, 도메인 또는 Microsoft Entra ID 수 있는 표준 사용자 계정
- 로컬, Active Directory(도메인) 또는 Microsoft Entra ID 수 있는 그룹 계정
제한:
- 그룹 계정을 지정하는 구성은 키오스크 프로필을 사용할 수 없으며 제한된 사용자 환경 프로필만 사용할 수 있습니다.
- 표준 사용자에게만 제한된 사용자 환경을 적용합니다. 관리자 사용자를 할당된 액세스 프로필과 연결하는 것은 지원되지 않습니다.
- 사용자 상호 작용이 필요한 조건부 액세스 정책의 대상이 되는 사용자 또는 그룹에는 프로필을 적용하지 마세요. 예를 들어 MFA(다단계 인증) 또는 TOU(사용 약관)입니다. 자세한 내용은 다중 앱 키오스크 프로필이 할당된 경우 사용자가 Windows에 로그온할 수 없습니다를 참조하세요.
참고
Microsoft Entra 가입된 디바이스 및 도메인에 가입된 디바이스에서는 로컬 사용자 계정이 기본적으로 로그인 화면에 표시되지 않습니다. 로그인 화면에 로컬 계정을 표시하려면 정책 설정을 사용하도록 설정합니다.
- GPO: 컴퓨터 구성>관리 템플릿>시스템>로그온>도메인 가입 컴퓨터에서 로컬 사용자 열거
- CSP:
./Device/Vendor/MSFT/Policy/Config/WindowsLogon/
EnumerateLocalUsersOnDomainJoinedComputers
AutoLogon 계정
를 사용하여 <AutoLogonAccount>
할당된 액세스는 디바이스를 다시 시작한 후 자동으로 로그인할 사용자 계정을 만들고 관리합니다. 계정은 로컬 표준 사용자입니다.
다음 예제에서는 자동으로 로그인할 계정을 지정하고 로그인 화면에서 계정의 선택적 표시 이름을 지정하는 방법을 보여줍니다.
<Configs>
<Config>
<AutoLogonAccount rs5:DisplayName="Microsoft Learn example"/>
<DefaultProfile Id="{GUID}"/>
</Config>
</Configs>
중요
디바이스에서 EAS(Exchange Active Sync) 암호 제한이 활성화되어 있으면 자동 로그온 기능이 작동하지 않습니다. 이 동작은 의도된 것입니다. 자세한 내용은 Windows에서 자동 로그온을 설정하는 방법을 참조하세요.
전역 프로필
를 사용하면 GlobalProfile
로그인하는 모든 비관리 계정에 적용되는 할당된 액세스 프로필을 정의할 수 있습니다.
GlobalProfile
는 모든 사용자가 일관된 환경을 갖도록 하려는 최전방 작업자 또는 학생 디바이스와 같은 시나리오에서 유용합니다.
<Configs>
<v3:GlobalProfile Id="{GUID}"/>
</Configs>
참고
전역 프로필을 다른 프로필과 결합할 수 있습니다. 사용자에게 비 전역 프로필을 할당하는 경우 전역 프로필은 해당 사용자에게 적용되지 않습니다.
사용자 계정
개별 계정은 를 사용하여 <Account>
지정됩니다.
중요
할당된 액세스 구성을 적용하기 전에 지정된 사용자 계정을 디바이스에서 사용할 수 있는지 확인합니다. 그렇지 않으면 실패합니다.
도메인 및 Microsoft Entra 계정 모두에 대해 디바이스가 Active Directory에 가입되었거나 Microsoft Entra 조인된 경우 디바이스가 조인된 도메인 포리스트 또는 테넌트에서 계정을 검색할 수 있습니다. 로컬 계정의 경우 할당된 액세스를 위해 계정을 구성하기 전에 계정이 존재해야 합니다.
로컬 사용자
로컬 계정은 , 또는 로 devicename\user
입력할 수 있습니다user
. .\user
<Config>
<Account>user</Account>
<DefaultProfile Id="{GUID}"/>
</Config>
Active Directory 사용자
도메인 계정은 형식 domain\samAccountName
을 사용하여 입력해야 합니다.
<Config>
<Account>contoso\user</Account>
<DefaultProfile Id="{GUID}"/>
</Config>
Microsoft Entra 사용자
Microsoft Entra 계정은 형식AzureAD\{UPN}
으로 지정해야 합니다.
AzureAD
를 있는 그대로 제공한 다음 Microsoft Entra UPN(사용자 계정 이름)을 따라야 합니다.
<Config>
<Account>AzureAD\user@contoso.onmicrosoft.com</Account>
<DefaultProfile Id="{GUID}"/>
</Config>
그룹 계정
그룹 계정은 를 사용하여 <UserGroup>
지정됩니다. 중첩된 그룹은 지원되지 않습니다. 예를 들어 사용자 A 가 그룹 A의 구성원인 경우 그룹 A 는 그룹 B의 구성원이고 그룹 B 는 에서 <Config/>
사용됩니다. 사용자 A 에는 키오스크 환경이 없습니다.
로컬 그룹
그룹 유형을 로 LocalGroup
지정하고 특성에 Name
그룹 이름을 추가합니다.
<Config>
<UserGroup Type="LocalGroup" Name="groupname" />
<DefaultProfile Id="{GUID}"/>
</Config>
Active Directory 그룹
보안 및 배포 그룹이 모두 지원됩니다. 그룹 유형을 로 ActiveDirectoryGroup
지정합니다. 이름 특성의 접두사로 도메인 이름을 사용합니다.
<Config>
<UserGroup Type="ActiveDirectoryGroup" Name="contoso\groupname" />
<DefaultProfile Id="{GUID}"/>
</Config>
Microsoft Entra 그룹
Microsoft Entra 그룹의 개체 ID를 사용합니다. Microsoft Entra 관리 센터 로그인하고ID 그룹 모든 그룹으로 이동하여 그룹의 개요 페이지에서 개체 ID를 >> 찾을 수 있습니다. 그룹 유형을 로 AzureActiveDirectoryGroup
지정합니다. 키오스크 디바이스는 그룹 로그인에 속한 사용자가 인터넷에 연결되어 있어야 합니다.
<Config>
<UserGroup Type="AzureActiveDirectoryGroup" Name="Group_GUID" />
<DefaultProfile Id="{GUID}"/>
</Config>
다음 단계
할당된 액세스 XML 구성의 몇 가지 실용적인 예제를 검토합니다.