160 lines
12 KiB
XML
160 lines
12 KiB
XML
<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
|
<Grid Margin="24">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<!-- Header -->
|
|
<StackPanel Grid.Row="0" Margin="0,0,0,20">
|
|
<TextBlock Text="환경설정 및 실제 인프라 연결 구성" FontSize="24" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
|
|
<TextBlock Text="Active Directory, NetApp ONTAP 스토리지 및 MS SQL 데이터베이스 접속 엔드포인트를 구성하고 실시간 테스트합니다."
|
|
FontSize="13" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,4,0,0" />
|
|
</StackPanel>
|
|
|
|
<!-- Settings Cards Scroll Area -->
|
|
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto">
|
|
<StackPanel>
|
|
<!-- Group 1: Global Operating Mode -->
|
|
<Border Style="{StaticResource ModernCardStyle}" Margin="0,0,0,16">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0">
|
|
<TextBlock Text="전역 동작 모드 (Global Operation Mode)" FontSize="16" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
|
|
<TextBlock Text="실제 인프라 장비 및 서버와 통신할지, 또는 데모/시뮬레이션 모드로 작동할지 선택합니다."
|
|
FontSize="12" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,4,0,0" />
|
|
</StackPanel>
|
|
<CheckBox x:Name="ChkGlobalLiveMode" Grid.Column="1" Content="실제 연결 모드 활성화 (Live Production Mode)"
|
|
Foreground="{StaticResource PrimaryAccentHoverBrush}" FontWeight="Bold" VerticalAlignment="Center" FontSize="13" />
|
|
</Grid>
|
|
</Border>
|
|
|
|
<!-- Group 2: Active Directory Configuration -->
|
|
<Border Style="{StaticResource ModernCardStyle}" Margin="0,0,0,16">
|
|
<StackPanel>
|
|
<DockPanel Margin="0,0,0,12">
|
|
<TextBlock Text="Active Directory (AD DS) 연결" FontSize="16" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
|
|
<CheckBox x:Name="ChkAdLive" Content="AD 실제 연결 사용" Foreground="{StaticResource TextPrimaryBrush}" HorizontalAlignment="Right" VerticalAlignment="Center" />
|
|
</DockPanel>
|
|
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0" Margin="0,0,12,0">
|
|
<TextBlock Text="도메인 컨트롤러 (DC FQDN / IP):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtAdDc" Text="dc01.corp.local" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="검색 기본 루트 OU (DN):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtAdBaseOu" Text="DC=corp,DC=local" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<CheckBox x:Name="ChkAdLdaps" Content="보안 LDAPS 암호화 연결 (Port 636) 사용" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,4,0,0" />
|
|
</StackPanel>
|
|
<StackPanel Grid.Column="1" Margin="12,0,0,0">
|
|
<TextBlock Text="관리자 계정 (비워둘 시 현재 Windows 로그인 토큰 사용):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtAdUser" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="관리자 암호:" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<PasswordBox x:Name="TxtAdPassword" Background="#0F172A" Foreground="{StaticResource TextPrimaryBrush}" BorderBrush="{StaticResource CardBorderBrush}" Height="34" Margin="0,0,0,12" />
|
|
|
|
<Button x:Name="BtnTestAd" Content="AD 연결 테스트" Style="{StaticResource SecondaryButtonStyle}" HorizontalAlignment="Right" Padding="14,6" />
|
|
</StackPanel>
|
|
</Grid>
|
|
</StackPanel>
|
|
</Border>
|
|
|
|
<!-- Group 3: NetApp ONTAP Storage Configuration -->
|
|
<Border Style="{StaticResource ModernCardStyle}" Margin="0,0,0,16">
|
|
<StackPanel>
|
|
<DockPanel Margin="0,0,0,12">
|
|
<TextBlock Text="NetApp ONTAP 스토리지 (REST API) 연결" FontSize="16" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
|
|
<CheckBox x:Name="ChkNetAppLive" Content="NetApp 실제 연결 사용" Foreground="{StaticResource TextPrimaryBrush}" HorizontalAlignment="Right" VerticalAlignment="Center" />
|
|
</DockPanel>
|
|
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0" Margin="0,0,12,0">
|
|
<TextBlock Text="클러스터 관리 LIF (HTTPS 엔드포인트 URL):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtNetAppEndpoint" Text="https://10.200.10.50" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="기본 대상 SVM (Vserver):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtNetAppDefaultSvm" Text="svm_cifs_prod01" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<CheckBox x:Name="ChkNetAppIgnoreSsl" Content="자체 서명(Self-signed) SSL 인증서 신뢰" IsChecked="True" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,4,0,0" />
|
|
</StackPanel>
|
|
<StackPanel Grid.Column="1" Margin="12,0,0,0">
|
|
<TextBlock Text="스토리지 관리자 ID (vsadmin / admin):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtNetAppUser" Text="admin" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="스토리지 관리자 암호:" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<PasswordBox x:Name="TxtNetAppPassword" Background="#0F172A" Foreground="{StaticResource TextPrimaryBrush}" BorderBrush="{StaticResource CardBorderBrush}" Height="34" Margin="0,0,0,12" />
|
|
|
|
<Button x:Name="BtnTestNetApp" Content="NetApp ONTAP 연결 테스트" Style="{StaticResource SecondaryButtonStyle}" HorizontalAlignment="Right" Padding="14,6" />
|
|
</StackPanel>
|
|
</Grid>
|
|
</StackPanel>
|
|
</Border>
|
|
|
|
<!-- Group 4: MS SQL Server Configuration -->
|
|
<Border Style="{StaticResource ModernCardStyle}" Margin="0,0,0,16">
|
|
<StackPanel>
|
|
<DockPanel Margin="0,0,0,12">
|
|
<TextBlock Text="MS SQL Server 연결 기본값" FontSize="16" FontWeight="Bold" Foreground="{StaticResource TextPrimaryBrush}" />
|
|
<CheckBox x:Name="ChkSqlLive" Content="MS SQL 실제 연결 사용" Foreground="{StaticResource TextPrimaryBrush}" HorizontalAlignment="Right" VerticalAlignment="Center" />
|
|
</DockPanel>
|
|
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0" Margin="0,0,12,0">
|
|
<TextBlock Text="SQL 인스턴스 주소 (예: localhost 또는 SRV\INSTANCE):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtSqlServer" Text="localhost" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="인증 방식:" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<ComboBox x:Name="CmbSqlAuthType" SelectedIndex="0" Height="32" Background="#0F172A" Foreground="{StaticResource TextPrimaryBrush}" Margin="0,0,0,12">
|
|
<ComboBoxItem Content="Windows 통합 인증 (Integrated Security)" />
|
|
<ComboBoxItem Content="SQL Server 인증 (User ID / Password)" />
|
|
</ComboBox>
|
|
|
|
<TextBlock Text="백업 파일 기본 저장 디렉토리:" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtSqlBackupDir" Text="C:\Backups" Style="{StaticResource ModernTextBoxStyle}" />
|
|
</StackPanel>
|
|
<StackPanel Grid.Column="1" Margin="12,0,0,0">
|
|
<TextBlock Text="SQL 계정 (SQL 인증 시):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<TextBox x:Name="TxtSqlUser" Text="sa" Style="{StaticResource ModernTextBoxStyle}" Margin="0,0,0,12" />
|
|
|
|
<TextBlock Text="SQL 암호 (SQL 인증 시):" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,0,0,4" FontSize="12" />
|
|
<PasswordBox x:Name="TxtSqlPassword" Background="#0F172A" Foreground="{StaticResource TextPrimaryBrush}" BorderBrush="{StaticResource CardBorderBrush}" Height="34" Margin="0,0,0,12" />
|
|
|
|
<Button x:Name="BtnTestSql" Content="SQL Server 연결 테스트" Style="{StaticResource SecondaryButtonStyle}" HorizontalAlignment="Right" Padding="14,6" />
|
|
</StackPanel>
|
|
</Grid>
|
|
</StackPanel>
|
|
</Border>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
|
|
<!-- Bottom Action Bar -->
|
|
<Border Grid.Row="2" Margin="0,16,0,0">
|
|
<DockPanel>
|
|
<Button x:Name="BtnTestAllConnections" Content=" 전체 인프라 연결 상태 일괄 진단" Style="{StaticResource SecondaryButtonStyle}" HorizontalAlignment="Left" />
|
|
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
|
|
<Button x:Name="BtnReloadConfig" Content="설정 다시 로드" Style="{StaticResource SecondaryButtonStyle}" Margin="0,0,8,0" />
|
|
<Button x:Name="BtnSaveSettings" Content="설정 저장 및 적용" Style="{StaticResource PrimaryButtonStyle}" />
|
|
</StackPanel>
|
|
</DockPanel>
|
|
</Border>
|
|
</Grid>
|
|
</UserControl>
|