<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:05:38 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[DOCS-12596] Docs for SERVER-39251: Implement translation of delete command for mongocryptd</title>
                <link>https://jira.mongodb.org/browse/DOCS-12596</link>
                <project id="10380" key="DOCS">Documentation</project>
                    <description>&lt;h2&gt;&lt;a name=&quot;Description&quot;&gt;&lt;/a&gt;Description&lt;/h2&gt;
&lt;blockquote&gt;&lt;/blockquote&gt;
&lt;h3&gt;&lt;a name=&quot;Description%3A&quot;&gt;&lt;/a&gt;Description: &lt;/h3&gt;

&lt;p&gt;This probably should be documented as part of our docs for the FLE project as a whole. But it should mention that delete is supported for automatic encryption using mongocryptd.&lt;/p&gt;



&lt;h2&gt;&lt;a name=&quot;Scopeofchanges&quot;&gt;&lt;/a&gt;Scope of changes&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;ImpacttoOtherDocs&quot;&gt;&lt;/a&gt;Impact to Other Docs&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;MVP%28WorkandDate%29&quot;&gt;&lt;/a&gt;MVP (Work and Date)&lt;/h2&gt;

&lt;h2&gt;&lt;a name=&quot;Resources%28ScopeorDesignDocs%2CInvision%2Cetc.%29&quot;&gt;&lt;/a&gt;Resources (Scope or Design Docs, Invision, etc.)&lt;/h2&gt;
</description>
                <environment></environment>
        <key id="728365">DOCS-12596</key>
            <summary>Docs for SERVER-39251: Implement translation of delete command for mongocryptd</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="13203">Gone away</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="kay.kim@mongodb.com">Kay Kim</reporter>
                        <labels>
                            <label>docs-4.2-client-side-encryption</label>
                    </labels>
                <created>Tue, 2 Apr 2019 22:11:54 +0000</created>
                <updated>Mon, 13 Nov 2023 18:23:41 +0000</updated>
                            <resolved>Tue, 26 Nov 2019 17:10:50 +0000</resolved>
                                                    <fixVersion>4.1.10</fixVersion>
                    <fixVersion>Server_Docs_20231030</fixVersion>
                    <fixVersion>Server_Docs_20231106</fixVersion>
                    <fixVersion>Server_Docs_20231105</fixVersion>
                    <fixVersion>Server_Docs_20231113</fixVersion>
                                    <component>manual</component>
                    <component>Server</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="2566697" author="ravind.kumar" created="Tue, 26 Nov 2019 17:10:50 +0000"  >&lt;p&gt;Documented here: &lt;a href=&quot;https://docs.mongodb.com/manual/reference/security-client-side-query-aggregation-support/#supported-read-and-write-commands&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://docs.mongodb.com/manual/reference/security-client-side-query-aggregation-support/#supported-read-and-write-commands&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="2323625" author="ravind.kumar" created="Fri, 12 Jul 2019 18:16:57 +0000"  >&lt;p&gt;Can&apos;t find the source for the life of me, but your explanation captured what I was looking for. Thanks!&lt;/p&gt;</comment>
                            <comment id="2320107" author="david.storch" created="Wed, 10 Jul 2019 20:12:33 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=ravind.kumar&quot; class=&quot;user-hover&quot; rel=&quot;ravind.kumar&quot;&gt;ravind.kumar&lt;/a&gt;, where did that text come from? I&apos;m having a hard time parsing it myself!&lt;/p&gt;

&lt;p&gt;If I understand correctly, the example scenario is that the schema says both &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt; are deterministically encrypted, and you wish to delete documents that have particular values of &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt;. That&apos;s a supported scenario. If you have a shell or driver with client-side encryption enabled, then you can write code to issue an operation like db.collection.remove({foo: {$eq: 3}, bar: {$eq: 4}}). The shell or driver will use its protocol involving mongocryptd and libmongocrypt to encrypt the constants 3 and 4 before shipping the operation to the server. The server will then perform the delete operation, using the BinData ciphertext to determine which documents to delete.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;For deterministic deletions I assume this is somewhat straightforward, but with random I&apos;m assuming we&apos;d have to check every document in the collection to find matching values of foo and bar ?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The operation I described above will only work transparently if &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt; are both encrypted with the deterministic algorithm. If either one of them is encrypted with the random algorithm, then mongocryptd will return an error (which will be propagated to the user) before the command ever makes it to the server. Since randomly encrypted values aren&apos;t queryable on the server, I don&apos;t think there is an easy way for the user to perform the db.collection.remove({foo: {$eq: 3}, bar: {$eq: 4}}) operation over randomly encrypted fields. The application would have to be written to delete only by unencrypted fields or deterministically encrypted fields.&lt;/p&gt;

&lt;p&gt;Did that answer your question?&lt;/p&gt;</comment>
                            <comment id="2316167" author="ravind.kumar" created="Mon, 8 Jul 2019 23:37:35 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=david.storch%40mongodb.com&quot; class=&quot;user-hover&quot; rel=&quot;david.storch@mongodb.com&quot;&gt;david.storch@mongodb.com&lt;/a&gt; having a bit of trouble parsing this, but spitballing:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;If deleting &lt;tt&gt;foo : a, bar: b&lt;/tt&gt; where both &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt; are encrypted, we support decrypting values of &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt; to only delete documents with matching values?&lt;/p&gt;

&lt;p&gt;For deterministic deletions I assume this is somewhat straightforward, but with random I&apos;m assuming we&apos;d have to check every document in the collection to find matching values of &lt;tt&gt;foo&lt;/tt&gt; and &lt;tt&gt;bar&lt;/tt&gt; ?&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10320">
                    <name>Documented</name>
                                            <outwardlinks description="documents">
                                        <issuelink>
            <issuekey id="679623">SERVER-39251</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 8 Jul 2019 23:37:35 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        4 years, 11 weeks, 1 day ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>DOCS-11762</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>emet.ozar@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            4 years, 11 weeks, 1 day ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>david.storch@mongodb.com</customfieldvalue>
            <customfieldvalue>kay.kim@mongodb.com</customfieldvalue>
            <customfieldvalue>ravind.kumar</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|huss6n:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|huibyn:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|husefz:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                </customfields>
    </item>
</channel>
</rss>