翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
DMS v3.5.3 以降では、Kerberos 認証を使用してデータベースインスタンスに接続するように Oracle または SQL Server ソースエンドポイントを設定できます。DMS は、Microsoft Active Directory および Kerberos 認証 AWS Directory Service をサポートしています。Microsoft Active Directory Services への AWSマネージドアクセスの詳細については、「 とは AWS Directory Service」を参照してください。
AWS DMS Kerberos 認証アーキテクチャの概要
次の図は、Kerberos AWS DMS 認証ワークフローの概要を示しています。

での Kerberos 認証の使用に関する制限 AWSAWS DMS
で Kerberos 認証を使用する場合、次の制限が適用されます AWS AWS DMS。
DMS レプリケーションインスタンスは、1 つの Kerberos
krb5.conf
ファイルと 1 つのキーキャッシュファイルをサポートします。チケットの有効期限が切れる少なくとも 30 分前に、Secrets Manager で Kerberos キーキャッシュファイルを更新する必要があります。
Kerberos 対応 DMS エンドポイントは、Kerberos 対応 DMS レプリケーションインスタンスでのみ機能します。
前提条件
開始するには、既存の Active Directory または Kerberos 認証ホストから次の前提条件を満たす必要があります。
オンプレミス AD と Active Directory の信頼関係を確立します。詳細については、「チュートリアル: AWS Managed Microsoft AD とセルフマネージド Active Directory ドメインの間に信頼関係を作成する」を参照してください。
Kerberos
krb5.conf
設定ファイルの簡略化されたバージョンを準備します。領域、ドメイン管理サーバーの場所、Kerberos 領域へのホスト名のマッピングに関する情報を含めます。krb5.conf
コンテンツがレルムとドメインのレルム名に正しい大文字と小文字が混在してフォーマットされていることを確認する必要があります。以下に例を示します。[libdefaults] dns_lookup_realm = true dns_lookup_kdc = true forwardable = true default_realm = MYDOMAIN.ORG [realms] MYDOMAIN.ORG = { kdc = mydomain.org admin_server = mydomain.org } [domain_realm] .mydomain.org = MYDOMAIN.ORG mydomain.org = MYDOMAIN.ORG
Kerberos キーキャッシュファイルを準備します。ファイルには、クライアントプリンシパル情報の一時的な Kerberos 認証情報が含まれています。ファイルはクライアントのパスワードを保存しません。DMS タスクはこのキャッシュチケット情報を使用して、パスワードなしで追加の認証情報を取得します。既存の Active Directory または Kerberos 認証ホストで次の手順を実行して、キーキャッシュファイルを生成します。
Kerberos キータブファイルを作成します。kutil または ktpass ユーティリティを使用してキータブファイルを生成できます。
Microsoft ktpass ユーティリティの詳細については、Windows Server ドキュメントの「ktpass
」を参照してください。 MIT kutil ユーティリティの詳細については、MIT Kerberos ドキュメントの「kutil
」を参照してください。 kinit ユーティリティを使用して、keytab ファイルから Kerberos キーキャッシュファイルを作成します。kinit ユーティリティの詳細については、MIT Kerberos ドキュメントの「kinit
」を参照してください。
-
SecretBinary
パラメータを使用して、Kerberos キーキャッシュファイルを Secrets Manager に保存します。Secrets Manager にキーキャッシュファイルをアップロードすると、DMS はそのファイルを取得し、約 30 分ごとにローカルキャッシュファイルを更新します。ローカルキーキャッシュファイルが事前定義された有効期限タイムスタンプを超えると、DMS はタスクを適切に停止します。継続的なレプリケーションタスク中に認証が失敗しないようにするには、チケットの有効期限が切れる少なくとも 30 分前に Secrets Manager のキーキャッシュファイルを更新します。詳細については、「 Secrets Manager API リファレンス」の「createsecret」を参照してください。次の AWS CLI サンプルは、キーキャッシュファイルをバイナリ形式で Secrets Manager に保存する方法を示しています。aws secretsmanager create-secret —name keycache —secret-binary fileb:
//keycachefile
Secrets Manager からキーキャッシュファイルを取得するための
GetSecretValue
および アクセスDescribeSecret
許可を IAM ロールに付与します。IAM ロールにdms-vpc-role
信頼ポリシーが含まれていることを確認します。dms-vpc-role
信頼ポリシーの詳細については、「」を参照してくださいで使用する IAM ロールの作成 AWS DMS。
次の例は、Secrets Manager GetSecretValue
と アクセスDescribeSecret
許可を持つ IAM ロールポリシーを示しています。<keycache_secretsmanager_arn>
値は、前のステップで作成した Keycache Secrets Manager ARN です。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": [
<keycache_secretsmanager_arn>
] } ] }
DMS レプリケーションインスタンスでの AWS Kerberos サポートの有効化
Kerberos 領域は Windows のドメインと同じです。プリンシパル領域を解決するために、Kerberos はドメインネームサービス (DNS) に依存します。dns-name-servers
パラメータを設定すると、レプリケーションインスタンスは事前定義されたカスタム DNS サーバーのセットを使用して Kerberos ドメイン領域を解決します。Kerberos 領域クエリを解決するもう 1 つの代替オプションは、レプリケーションインスタンス Virtual Private Cloud (VPC) で Amazon Route 53 を設定することです。詳細については、「Route 53」を参照してください。
を使用して DMS レプリケーションインスタンスで Kerberos サポートを有効にする AWS Management Console
コンソールを使用して Kerberos サポートを有効にするには、レプリケーションインスタンスの作成またはレプリケーションインスタンスの変更ページの Kerberos 認証セクションに次の情報を入力します。
krb5.conf
ファイルの内容キーキャッシュファイルを含む Secrets Manager シークレットの ARN
シークレットマネージャー ARN にアクセスできる IAM ロールの ARN と、キーキャッシュファイルを取得するアクセス許可
を使用して DMS レプリケーションインスタンスで Kerberos サポートを有効にする AWS CLI
次の AWS CLI サンプル呼び出しでは、Kerberos をサポートするプライベート DMS レプリケーションインスタンスを作成します。レプリケーションインスタンスはカスタム DNS を使用して Kerberos 領域を解決します。詳細については、「create-replication-instance」を参照してください。
aws dms create-replication-instance --replication-instance-identifier my-replication-instance --replication-instance-class dms.t2.micro --allocated-storage 50 --vpc-security-group-ids sg-12345678 --engine-version 3.5.4 --no-auto-minor-version-upgrade --kerberos-authentication-settings'{"KeyCacheSecretId":<secret-id>,"KeyCacheSecretIamArn":<secret-iam-role-arn>,"Krb5FileContents":<krb5.conf file contents>}' --dns-name-servers
<custom dns server>
--no-publicly-accessible
ソースエンドポイントでの Kerberos サポートの有効化
DMS Oracle または SQL Server ソースエンドポイントで Kerberos 認証を有効にする前に、クライアントマシンから Kerberos プロトコルを使用してソースデータベースに対して認証できることを確認してください。 AWS DMS Diagnostic AMI を使用して、レプリケーションインスタンスと同じ VPC で Amazon EC2 インスタンスを起動し、kerberos 認証をテストできます。AMI の詳細については、「」を参照してくださいAWS DMS 診断サポート AMI の使用。
DMS AWS コンソールの使用
エンドポイントデータベースへのアクセスで、Kerberos 認証を選択します。
の使用 AWS CLI
エンドポイント設定パラメータを指定し、AuthenticationMethod
オプションを kerberos として設定します。以下に例を示します。
Oracle
aws dms create-endpoint --endpoint-identifier my-endpoint --endpoint-type source --engine-name oracle --username dmsuser@MYDOMAIN.ORG --server-name
mydatabaseserver
--port 1521 --database-namemydatabase
--oracle-settings "{\"AuthenticationMethod\": \"kerberos\"}"
SQL Server
aws dms create-endpoint --endpoint-identifier my-endpoint --endpoint-type source --engine-name sqlserver --username dmsuser@MYDOMAIN.ORG --server-name
mydatabaseserver
--port 1433 --database-namemydatabase
--microsoft-sql-server-settings "{\"AuthenticationMethod\": \"kerberos\"}"
ソースエンドポイントのテスト
Kerberos 対応レプリケーションインスタンスに対して Kerberos 対応エンドポイントをテストする必要があります。Kerberos 認証のレプリケーションインスタンスまたはソースエンドポイントを適切に設定しないと、エンドポイントtest-connection
アクションは失敗し、Kerberos 関連のエラーを返す可能性があります。詳細については、「test-connection