SSRS レポートを SQL 2008 R2 サーバーに展開しようとすると、次のエラーが表示されます。「レポート サーバーは、レポート サーバー データベース内の機密データまたは暗号化されたデータへのアクセスに使用される対称キーを復号化できません...」. Web 上のソリューションのほとんどは、暗号化キーを削除してからデータソースを再構成することを提案しています。私はまだ SSRS の初心者です。この問題を解決する別の解決策はありますか。ありがとうございます。
3 に答える
After checking this link Microsoft support link, it seems that this is a know issue in SSRS reports. And it seems the only way to fix it is to delete the Encryption keys.
- Open Reporting Services Configuration Tool ( Programs->Microsoft SQL Server 2008 R2 -> Configuration tools -> Reporting Services Configuration Manager)
- Go to Encryption Keys
- Click Delete.
This solved my problem
SQL Server Reporting Services アカウントを services.msc から変更した後、Microsoft Dynamics CRM 2016 レポート拡張機能のセットアップでこれに遭遇しました。これは、Microsoft Dynamics CRM 2016 レポート拡張機能のセットアップに非ローカル サービス アカウントが必要なためです。 https://technet.microsoft.com/en-us/library/hh699754.aspxHaasan の質問に見られる根本的な原因である可能性が高いここでの主なトリガーは、暗号化キーをバックアップせずに SQL Server Reporting Services サービス アカウントを変更したことです。彼が行った暗号化キーの削除は機能しましたが、その暗号化情報が失われるという欠点があります。可能であれば、以下の手順を使用して元のサービス アカウント ユーザーに戻し、以下に記載されている手順を使用してサービス アカウントを変更する必要があります。参考記事。
Microsoft Dynamics CRM Reporting Extensions が実行されている Microsoft SQL Server Reporting Services のインスタンスを実行している ID アカウントを、ローカル システムまたは仮想アカウントにすることはできません。これは、Microsoft Dynamics CRM が使用する PrivReportingGroup Active Directory セキュリティ グループに ID アカウントを追加する必要があるため、Microsoft Dynamics CRM レポートが機能するために必要です。
ここでの長い話は、SQL Server Reporting Services アカウントを変更するときは、SQL Server Reporting Services が使用する対称暗号化キーをバックアップし、それを新しいサービス アカウント ユーザー。
レポート サーバー サービスは、対称キーを使用して、レポート サーバー データベース内の暗号化されたデータにアクセスします。この対称キーは、レポート サーバー サービスの実行に使用されるコンピューターとユーザー アカウントに対応する非対称公開キーを使用して暗号化されます。レポート サーバー サービスの実行に使用するユーザー アカウントを変更すると、レポート サーバーは非対称公開キーを使用して対称キーを解読できなくなります。したがって、レポート サーバー サービスは対称キーを使用してレポート サーバー データベースのデータにアクセスできません。
SQL Server Reporting Services レポート マネージャーからサービス アカウントを変更すると、次のようになります。
ローカル コンピューター上に作成されたレポート サーバー グループに新しいアカウントを自動的に追加します。このグループは、Reporting Services ファイルを保護するアクセス制御リスト (ACL) で指定されます。レポート サーバー データベースをホストするために使用される SQL Server データベース エンジン インスタンスのログイン権限を自動的に更新します。新しいアカウントが RSExecRole に追加されます。古いアカウントのデータベース ログインは自動的に削除されません。使用しなくなったアカウントは必ず削除してください。詳細については、SQL Server Books Online の「レポート サーバー データベースの管理 (SSRS ネイティブ モード)」を参照してください。最初にサービス アカウントを使用するようにレポート サーバー データベース接続を構成した場合にのみ、新しいサービス アカウントにデータベース権限が付与されます。ドメイン ユーザー アカウントまたは SQL Server データベース ログインを使用するようにレポート サーバー データベース接続を構成した場合、接続情報はサービス アカウントの更新の影響を受けません。暗号化キーを自動的に更新して、新しいアカウントのプロファイル情報を含めます。
私のシナリオのように、たまたま以前のサービス アカウント ユーザーが何であったかを知っている場合、修正するには、SQL Server レポート サービス アカウントのユーザーを最初に指定されたアカウントに戻してから、SQL Server Reporting Services レポート マネージャーを使用して、新しいサービス アカウント ユーザーが設定されると、そのプロセスによって暗号化キーの復元が自動化されるため、暗号化キーをバックアップするようにしてください。
参考文献: https://msdn.microsoft.com/en-us/library/ms160340.aspx - レポート サーバー サービス アカウントを構成する (SSRS 構成マネージャー)
https://support.microsoft.com/en-us/kb/842421 - レポート サーバーの実行に使用するユーザー アカウントを変更した後、レポート サーバー サービスを再起動すると、レポート サービスのトレース ログにエラー メッセージが表示されるサービス (これは古い KB 記事ですが、一般的な問題と解決策は SQL Reporting Services の新しいバージョンにも適用されます)
キーを削除することができない場合、これで誰かの時間を節約できることを願っています。
ReportServer と ReportServerTempDB を動作中のサーバーから Reporting Services を実行している別の環境に移動した後、この問題に遭遇しました。暗号化キーを削除することはできませんでした。また、暗号化キーの作成に使用したパスワードを知っていたので、稼働中のサーバーからキーのバックアップを取り、新しい環境で Reporting Services 構成マネージャーを使用して復元しました。ページを更新したところ、エラーはなくなりました。