Add-SqlLogin

SQL Server のインスタンスに Login オブジェクトを作成します。

構文

Add-SqlLogin
   [-LoginName <String>]
   -LoginType <LoginType>
   [-DefaultDatabase <String>]
   [-EnforcePasswordPolicy]
   [-EnforcePasswordExpiration]
   [-MustChangePasswordAtNextLogin]
   [-Certificate <String>]
   [-AsymmetricKey <String>]
   [-CredentialName <String>]
   [-LoginPSCredential <PSCredential>]
   [-Enable]
   [-GrantConnectSql]
   [[-Path] <String>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Add-SqlLogin
   [-LoginName <String>]
   -LoginType <LoginType>
   [-DefaultDatabase <String>]
   [-EnforcePasswordPolicy]
   [-EnforcePasswordExpiration]
   [-MustChangePasswordAtNextLogin]
   [-Certificate <String>]
   [-AsymmetricKey <String>]
   [-CredentialName <String>]
   [-LoginPSCredential <PSCredential>]
   [-Enable]
   [-GrantConnectSql]
   [[-InputObject] <Server>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]
Add-SqlLogin
   [-LoginName <String>]
   -LoginType <LoginType>
   [-DefaultDatabase <String>]
   [-EnforcePasswordPolicy]
   [-EnforcePasswordExpiration]
   [-MustChangePasswordAtNextLogin]
   [-Certificate <String>]
   [-AsymmetricKey <String>]
   [-CredentialName <String>]
   [-LoginPSCredential <PSCredential>]
   [-Enable]
   [-GrantConnectSql]
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [<CommonParameters>]

説明

Add-SqlLogin コマンドレットは、SQL Server のインスタンスに Login オブジェクトを作成します。

例 1: SqlLogin 型を作成する

PS C:\> Add-SqlLogin -ServerInstance "MyServerInstance" -LoginName "MyLogin" -LoginType "SqlLogin" -DefaultDatabase "OtherDatabase"

Name                                          Login Type    Created
----                                          ----------    -------
MyLogin                                       SqlLogin      8/11/2016 3:19 PM

このコマンドは、SqlLogin 型の 'MyLogin' という名前の Login オブジェクトを作成します。 このコマンドは、既定のデータベースを 'MyServerInstance' という名前のサーバー インスタンスの 'OtherDatabase' として指定します。 このコマンドを実行すると、ログインのパスワードの入力を求められます。

例 2: 非対称キー型を作成する

PS C:\> Add-SqlLogin -ServerInstance "MyServerInstance" -LoginName "MyLogin" -LoginType "AsymmetricKey" -AsymmetricKey "MyKey" -CredentialName "MyCredential"

Name                                          Login Type    Created
----                                          ----------    -------
MyLogin                                       AsymmetricKey 8/11/2016 4:08 PM

このコマンドは、AsymmetricKey 型の MyLogin という名前の Login オブジェクトを作成します。 MyKey という名前の非対称キーを指定します。 また、MyCredential という資格情報を新しい Login オブジェクトにマップします。 このコマンドは、MyServerInstance という名前のサーバー インスタンスで動作します。

パラメーター

-AccessToken

ユーザー/パスワードまたは Windows 認証の代わりに、SQL Server に対する認証に使用されるアクセス トークン。

これは、たとえば、Service Principal または Managed Identityを使用して SQL Azure DBSQL Azure Managed Instance に接続するために使用できます。

使用するパラメーターには、トークンを表す文字列、または Get-AzAccessToken -ResourceUrl https://database.windows.netを実行して返される PSAccessToken オブジェクトを指定できます。

このパラメーターは、モジュールの v22 の新機能です。

型:PSObject
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-AsymmetricKey

Login オブジェクトの非対称キーの名前を指定します。 LoginType パラメーターの値が AsymmetricKey の場合は、非対称キーを指定します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Certificate

Login オブジェクトの証明書の名前を指定します。 LoginType の値が Certificate の場合は、証明書を指定します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ConnectionTimeout

タイムアウトエラーが発生するまでのサーバー接続を待機する秒数を指定します。 タイムアウト値は、0 から 65534 までの整数である必要があります。 0 を指定した場合、接続試行はタイムアウトになりません。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Credential

SQL Server への接続の PSCredential オブジェクトを指定します。 資格情報オブジェクトを取得するには、Get-Credential コマンドレットを使用します。 詳細については、「Get-Credential」Get-Help 入力します。

型:PSCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-CredentialName

Login オブジェクトの資格情報の名前を指定します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultDatabase

Login オブジェクトの既定のデータベースを指定します。 既定値は master です。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Enable

Login オブジェクトが有効になっていることを示します。 既定では、Login オブジェクトは無効になっています。

WindowsGroup 型オブジェクトは常に有効になっています。 このパラメーターは影響を受けません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Encrypt

SQL Server に接続するときに使用する暗号化の種類。

この値は、Microsoft.Data.SqlClient ドライバーの SqlConnection オブジェクトの Encrypt プロパティ SqlConnectionEncryptOption にマップされます。

モジュールの v22 では、既定値は Optional です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "必須" になり、既存のスクリプトに重大な変更が生じる可能性があります。

このパラメーターは、モジュールの v22 の新機能です。

型:String
指定可能な値:Mandatory, Optional, Strict
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EnforcePasswordExpiration

Login オブジェクトに対してパスワードの有効期限ポリシーが適用されることを示します。 このパラメーターは、SqlLogin 型オブジェクトのみを適用します。 このパラメーターは、EnforcePasswordPolicy パラメーターを意味します。 両方を指定する必要はありません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-EnforcePasswordPolicy

Login オブジェクトにパスワード ポリシーが適用されることを示します。 このパラメーターは、SqlLogin 型オブジェクトのみを適用します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-GrantConnectSql

Login オブジェクトがデータベース エンジンに接続するためのアクセス許可を拒否されていないことを示します。 既定では、ターゲット サーバーが SQL Azure でない限り、Login オブジェクトはデータベース エンジンに接続するためのアクセス許可を拒否されます。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-HostNameInCertificate

SQL Server TLS/SSL 証明書の検証に使用するホスト名。 SQL Server インスタンスで Force Encryption が有効になっていて、ホスト名/短縮名を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっている SQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。

このパラメーターは、モジュールの v22 の新機能です。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

このコマンドレットが動作する SQL Server の SQL Server 管理オブジェクト (SMO) オブジェクトを指定します。

型:Server
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-LoginName

Login オブジェクトの名前を指定します。 大文字と小文字の区別は、SQL Server のインスタンスと同じです。

型:String
Aliases:Name
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-LoginPSCredential

Login オブジェクトがプロンプトなしで名前とパスワードを指定できるようにする PSCredential オブジェクトを指定します。

型:PSCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-LoginType

Login オブジェクトの型を Microsoft.SqlServer.Management.Smo.LoginType 値として指定します。 このパラメーターに使用できる値は次のとおりです。

  • AsymmetricKey
  • 証書
  • SqlLogin
  • WindowsGroup
  • WindowsUser

現時点では、このコマンドレットは ExternalUser または ExternalGroup をサポートしていません。

型:LoginType
指定可能な値:WindowsUser, WindowsGroup, SqlLogin, Certificate, AsymmetricKey, ExternalUser, ExternalGroup
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MustChangePasswordAtNextLogin

ユーザーが次のログイン時にパスワードを変更する必要があることを示します。 このパラメーターは、SqlLogin 型オブジェクトのみを適用します。 このパラメーターは、EnforcePasswordExpiration パラメーターを意味します。 両方を指定する必要はありません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Path

このコマンドレットが操作を実行する SQL Server のパスを指定します。 既定値は現在の作業ディレクトリです。

型:String
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ProgressAction

スクリプト、コマンドレット、またはプロバイダーによって生成された進行状況の更新 (Write-Progress コマンドレットによって生成された進行状況バーなど) に対する PowerShell の応答方法を決定します。 Write-Progress コマンドレットは、コマンドの状態を示す進行状況バーを作成します。

型:ActionPreference
Aliases:proga
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Script

このコマンドレットは、このコマンドレットが実行するタスクを実行する Transact-SQL スクリプトを返します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ServerInstance

SQL Server のインスタンスの名前を指定します。 既定のインスタンスには、コンピューター名を指定します。 名前付きインスタンスの場合は、ComputerName\InstanceName という形式を使用します。

型:String[]
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-TrustServerCertificate

信頼を検証するために証明書チェーンのウォークをバイパスしながらチャネルを暗号化するかどうかを示します。

モジュールの v22 では、既定値は $true です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "$false" になり、既存のスクリプトに重大な変更が生じる可能性があります。

このパラメーターは、モジュールの v22 の新機能です。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

Microsoft.SqlServer.Management.Smo.Server

System.String[]

出力

System.Object