Azure Blob を使用するための Windchill ファイルボルトの設定
このセクションでは、Windchill が Azure 仮想マシン (VM) で動作している場合に Azure Blob を使用できるようにするために Windchill と Azure ポータルで必要なコンフィギュレーションについて説明します。
|
• Windchill がオンプレミスで動作している状態での Azure Blob への接続はサポートされていません。
• このセクションで説明するコンフィギュレーションは、既存の Windchill バージョンをアップデートまたはアップグレードした後に再度実行しなければなりません。
|
Azure ポータルのコンフィギュレーション
Azure ポータルで実行しなければならないコンフィギュレーションには、必要なコンポーネントの追加とアクセス制御の設定が含まれます。Windchill が正常に Azure Blob と連動するには、Azure ポータルでアクセス許可とアクセスを設定する必要があります。
Windchill では、2 つのメカニズムで認証を設定できます。
• MSI - これは、AZURE VM が MSI で有効になっている場合に使用でき、推奨されるオプションです。
• SECURITY_CREDENTIALS - これは、MSI オプションを使用できない場合のフォールバックのメカニズムです。このオプションでは、Windchill は資格証明を安全に保存し、Azure との通信に使用します。
開始する前に
Windchill 用に Azure Blob を設定する前に、Azure ポータルで次のエンティティを作成します。
• ストレージアカウント - 「Account kind」が「Standard (general purpose v2)」である必要があります。
• Managed Service Identity (MSI) が有効になっている Azure VM。
• キーボルトキー - このエンティティはオプションですが、キーボルト暗号を使用する場合は作成する必要があります。
MSI ユーザーアカウントのポリシーの追加
お使いのストレージアカウント用の MSI が有効になっている Azure VM には、「Storage Blob Data Contributor」役割を割り当てる必要があります。この役割を追加するには次の手順を実行します。
1. Azure ポータルにログインします。
2. 自分のストレージアカウントに移動します。
3. 「Access Control(IAM)」に移動します。
4. 「Add」をクリックします。
5. 「Storage Blob Data Contributor」を選択し、MSI が設定されている Azure VM へのアクセス権を割り当てます。
|
ストレージアカウント間でのコピーを可能にするには、「Storage Blob Data Contributor」の代わりに「Storage Account Contributor」を割り当てます。これは複数のリモートファイルサーバーでのコンテンツレプリケーションのように、ボルトのストレージアカウントが複数ある場合に生じます。
|
6. 「Save」をクリックします。お使いの Azure VM は MSI が有効になっていません。
Azure Blob でのキーボルト暗号の設定
キーボルト暗号を有効にするには、Azure ポータルで次のステップを実行する必要があります。
1. キーボルトを作成してキーを生成する
2. アプリケーションを作成する
3. このアプリケーションをキーにリンクする
キーボルトの作成とキーの生成
キーボルトを作成してキーを生成するには、Azure ポータルで次のステップを実行します。
1. ダッシュボードから、「+ Create a resource」をクリックします。
2. 「New」ウィンドウで、「Key Vault」をサーチします。
3. 「Create」をクリックします。「Name」、「Subscription」、「Resource Group」、「Location」に入力し、「Create」をクリックします。
4. キーボルトが正常に生成され、概要ページが表示されます。このページの DNS 名をメモしておきます。
|
KeyVaultKeyIDURL は「DNS Name」とキーの「Name」を組み合わせたものです。たとえば、キーの「Name」が KeyVaultKey で「DNS Name」が https://contentkeyvault.vault.azure.net/ の場合、KeyVaultKeyIDURL は https://contentkeyvault.vault.azure.net/keys/KeyVaultKey になります。KeyVaultKeyIDURL は Windchill におけるカスタム Java プログラムで必要です。
|
5. > の順にクリックします。
6. 「Name」に入力します。
7. 「Key Type」として「RSA」を選択します。
8. 「RSA Key Size」を選択し、「Create」をクリックします。
9. キーが正常に作成されました。
|
このキーの「VALUE」は、Windchill におけるカスタム Java プログラムによって使用される AuthKey です。これは後から取得できないので必ずメモしておいてください。
|
アプリケーションの作成
新規アプリケーションを作成するには、Azure ポータルで次のステップを実行します。
1. ダッシュボードから、 > > の順にクリックします。
2. 「Name」、「Application Type」、「Sign-on URL」に入力し、「Create」をクリックします。
3. アプリケーションが正常に作成されました。
|
「Application ID」は、Windchill におけるカスタム Java プログラムで必要な AppId です。
|
アプリケーションとキーのリンク
アプリケーションとキーをリンクするには、Azure ポータルで次のステップを実行します。
1. ダッシュボードから、 > > > の順にクリックします。
2. アプリケーション名をサーチし、「Select」をクリックします。
3. 「Key permissions」で「Select all」を選択し、「OK」をクリックします。
4. アプリケーションとキーが正常にリンクされ、これによって Azure Blob でのキーボルト暗号の設定が完了しました。
アクセス制御の設定 - 注意事項
• アカウント名とキーを使用して認証する場合、Windchill はお使いのストレージアカウントの管理アクセス権を持ちます。
• MSI を使用し、役割「Storage Blob Data Contributor」を割り当てる場合、Windchill はお使いのストレージアカウントに対する管理アクセス権を持ちます。
• さらに、役割「Storage Blob Data Reader」を割り当てた場合、Windchill はお使いのストレージアカウントに対する読み取りのアクセス権のみを取得します。
Windchill コンフィギュレーション
コマンドラインツールを使用して、Azure Blob を使用するよう Windchill を設定できます。
開始する前に
このコマンドラインツールはいくつかのコンフィギュレーションフィールドから成ります。特定のコンフィギュレーションをスキップするには、Enter キーを押します。コマンドラインツールには既存のコンフィギュレーションが表示されます。コンフィギュレーションは登録されているすべてのファイルサーバー、つまりレプリカサイトに自動的に公表されます。認証方法として SECURITY_CREDENTIALS を使用して、複数の Azure Blob Storage アカウントを設定できます。
Azure Blob を設定するには、Windchill シェルで次のコマンドを実行します。
windchill com.ptc.windchill.objectstorage.azureblob.tools.BlobConfigurationTool configure -u <username> -p <password>.
次の手順を実行してアカウントを設定します。
1. Authentication Strategy: (SECURITY_CREDENTIALS/MSI)? [SECURITY_CREDENTIALS] - デフォルト値は SECURITY_CREDENTIALS です。MSI オプションを選択した場合、手順 3 と 4 は適用されません。
2. Azure Environment: (AZURE/AZURE_US_GOVERNMENT)? [AZURE] - デフォルト値は AZURE です。設定する Azure Blob Storage アカウントに従って Azure 環境に入ります。
3. 「Azure Blob Storage アカウントを追加または更新しますか?(y/n)」 - y と入力してストレージアカウントを追加または更新します
◦ Azure Storage Account Name - 設定するアカウントの名前を入力します。
◦ Azure Storage Account Key - Azure アカウントのアクセスキー ID を入力します。
◦ 「Azure Blob Storage アカウントを追加または更新しますか?(y/n)」 - n と入力して次の手順に進みます
4. 「既存の Azure Blob Storage アカウントを除去しますか?(y/n)」 - y と入力して既存のストレージアカウントを除去します
◦ Azure Storage Account Name - 除去するアカウントの名前を入力します。
◦ 「既存の Azure Blob Storage アカウントを除去しますか?(y/n)」 - n と入力して次の手順に進みます
5. Blob Encryption Configurator Delegate Name - 暗号タイプを選択するための委任名を入力します。その暗号タイプを使用して、Azure Blob に保管されているコンテンツが暗号化されます。
6. SSEKeyVaultKeyProvider Delegate Name - KMS キー ID を選択するための委任名を入力します。その KMS キー ID を使用して、Azure Blob に保管されているコンテンツが暗号化されます。
7. CSESecKeyGenerator Delegate Name - シークレットキーを管理するための委任名を入力します。この委任によって返されたシークレットキーを使用して、Azure Blob に保管されているコンテンツが暗号化されます。
コンフィギュレーションを検証するため、次のコマンドラインツールを使用してレポートを生成できます。
windchill com.ptc.windchill.objectstorage.azureblob.tools.BlobConfigurationTool generateReport -u <username> -p <password>
|
• 委任名に関連するコンフィギュレーションが変更された場合、そのコンフィギュレーションを有効にするには、メインサーバーとレプリカサーバーを再起動します。
• Windchill で安全なファイル転送がサポートされるようになりました。Azure Storage アカウントで Secure transfer required プロパティをオンに設定することで、セキュリティで保護された接続からのリクエストのみを受け付けるようにストレージアカウントを設定できます。 ここで説明するように、安全な転送をオンにできます。
• Azure Blob Storage への安全な接続を確保するため、Secure transfer required をオンにしたままにすることを強くお勧めします。
|
Azure Blob Storage へのマウント
開始する前に
Azure ポータルで、必要なマウントパスにフォルダを作成します。以下の手順を実行します。
1. Azure ポータルにログインし、「Blobs」に移動します。
2. 「Upload」をクリックします。
3. サンプルテキストファイルを選択し、「Advanced」タブの「Upload to folder」で必要なフォルダ名を指定します。
4. 「Upload」をクリックします。フォルダが正常に作成されました。Azure ポータルからのパスをメモしておきます。
Windchill からのルートフォルダのマウント
Windchill でルートフォルダをマウントする際に「マウントタイプ」として「Azure Blob Storage」を選択します。マウントパスは次いずれかのパターンでなければなりません。
<StorageAccountName>/<ContainerName>/<PathtoDesiredFolder>
たとえば、ストレージアカウントの名前が StorageForUSA、コンテナ名が Container-in-USA、パスが VaultsForWindchill/RootFolderMountLocation である場合、マウントパスとして次のように入力する必要があります。
StorageForUSA/Container-in-USA/VaultsForWindchill/RootFolderMountLocation