次の方法で共有


Active Directory ユーザーまたはグループとしてサービスを実行する

Windows Server のスタンドアロン クラスター上で、RunAs ポリシーを使用してサービスを Active Directory ユーザーまたはグループとして実行できます。 既定では、Service Fabric アプリケーションは、Fabric.exe プロセスを実行しているアカウントで実行されます。 異なるアカウントで実行中のアプリケーションは、共有のホスト環境にある場合でも、互いからより強固に保護されることになります。 これは、ドメイン内のオンプレミスの Active Directory を使用しており、Microsoft Entra ID ではないことに注意してください。 また、グループ管理サービス アカウント (gMSA) としてサービスを実行することもできます。

ドメイン ユーザーまたはグループを使用すると、アクセス許可が付与されている、ドメイン内の他のリソース (ファイル共有など) にアクセスできます。

次の例は、TestUser という Active Directory ユーザーと、MyCert という証明書を使用して暗号化されたドメイン パスワードを示しています。 Invoke-ServiceFabricEncryptText PowerShell コマンドを使用して、シークレット暗号化テキストを作成できます。 詳細については、「Service Fabric アプリケーションでのシークレットの管理」をご覧ください。

ローカル コンピューターにアウトオブバンド方式でパスワードの暗号化を解除するには、証明書の秘密キーをデプロイする必要があります (Azure では Azure Resource Manager を使用します)。 これで、Service Fabric は、サービス パッケージをマシンにデプロイするときに、シークレットの暗号化を解除し、ユーザー名とこれらの資格情報で実行するように Active Directory による認証を実行できるようになります。

<Principals>
  <Users>
    <User Name="TestUser" AccountType="DomainUser" AccountName="Domain\User" Password="[Put encrypted password here using MyCert certificate]" PasswordEncrypted="true" />
  </Users>
</Principals>
<Policies>
  <DefaultRunAsPolicy UserRef="TestUser" />
  <SecurityAccessPolicies>
    <SecurityAccessPolicy ResourceRef="MyCert" PrincipalRef="TestUser" GrantRights="Full" ResourceType="Certificate" />
  </SecurityAccessPolicies>
</Policies>
<Certificates>

注意

サービスに RunAs ポリシーを適用し、サービス マニフェストで HTTP プロトコルのエンドポイント リソースを宣言する場合は、SecurityAccessPolicy も指定する必要があります。 詳細については、HTTP と HTTPS エンドポイントのセキュリティ アクセス ポリシーを割り当てるをご覧ください。

次の手順については、次の記事を参照してください。