<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:20:56 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>[CDRIVER-4439] Cache AWS Credentials Where Possible</title>
                <link>https://jira.mongodb.org/browse/CDRIVER-4439</link>
                <project id="10030" key="CDRIVER">C Driver</project>
                    <description>&lt;p&gt;This ticket was split from &lt;tt&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2333&quot; title=&quot;Cache AWS Credentials Where Possible&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2333&quot;&gt;&lt;del&gt;DRIVERS-2333&lt;/del&gt;&lt;/a&gt;&lt;/tt&gt;, please see that ticket for a detailed description. &lt;/p&gt;</description>
                <environment></environment>
        <key id="2100938">CDRIVER-4439</key>
            <summary>Cache AWS Credentials Where Possible</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</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="13201">Fixed</resolution>
                                        <assignee username="kevin.albertson@mongodb.com">Kevin Albertson</assignee>
                                    <reporter username="dbeng-pm-bot">PM Bot</reporter>
                        <labels>
                    </labels>
                <created>Wed, 27 Jul 2022 20:14:14 +0000</created>
                <updated>Sat, 28 Oct 2023 11:28:02 +0000</updated>
                            <resolved>Thu, 23 Feb 2023 13:58:48 +0000</resolved>
                                                    <fixVersion>1.24.0</fixVersion>
                                    <component>Authentication</component>
                                        <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="5224732" author="xgen-internal-githook" created="Thu, 23 Feb 2023 13:58:39 +0000"  >&lt;p&gt;Author: &lt;/p&gt;
{&apos;name&apos;: &apos;Kevin Albertson&apos;, &apos;email&apos;: &apos;kevin.albertson@mongodb.com&apos;, &apos;username&apos;: &apos;kevinAlbs&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CDRIVER-4439&quot; title=&quot;Cache AWS Credentials Where Possible&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CDRIVER-4439&quot;&gt;&lt;del&gt;CDRIVER-4439&lt;/del&gt;&lt;/a&gt; add AWS credential cache (#1207)&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;add test-awsauth&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;test-awsauth is intended to replace mongoc-ping in AWS tests.&lt;br/&gt;
test-awsauth will include caching tests specific to AWS.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;unconditionally define _mongoc_aws_credentials_cleanup&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;There is no reason to condition on the presence of ENABLE_MONGODB_AWS_AUTH&lt;/p&gt;

&lt;p&gt;Removing reduces duplicate definitions.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;add AWS credential cache&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;add _mongoc_aws_credentials_copy_to&lt;/p&gt;

&lt;p&gt;add _mongoc_aws_credentials_cache_t&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;use AWS credential cache&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;use test-awsauth in Evergreen&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;remove outdated docs of optional variables&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;fix docs to note TESTCASE is an env var&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;remove unnecessary additions runtime paths&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;test-awsauth statically links the C driver&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;use `mcd_timer` for expiration&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;remove unused vars&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;simplify bash scripts&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;fix comment for `expiration`&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;be more explicit about _mongoc_aws_credentials_cache_get behavior&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;rename helper to expiration_to_mcd_timer&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;compute in int64_t domain&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;remove unnecessary expiration vars&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;add MONGOC_AWS_CREDENTIALS_INIT macro&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;only initialize and cleanup AWS cache if AWS is enabled&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;remove unnecessary can_setenv&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;fix -Wmissing-braces warning&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;fix signature of test_aws_cache&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;do not support uninitialized creds in _mongoc_aws_credentials_cache_get&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;do not reuse creds after cleanup&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;fix -Wmissing-field-initializers warning&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-c-driver/commit/8eaac64c6893c717ac6af3bfdb4aac870848ee43&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-c-driver/commit/8eaac64c6893c717ac6af3bfdb4aac870848ee43&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="2100945">PHPC-2158</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10620">
                    <name>Issue split</name>
                                                                <inwardlinks description="split from">
                                        <issuelink>
            <issuekey id="2053282">DRIVERS-2333</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="2173628">CDRIVER-4518</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY23Q4</label>
            <label>FY24Q1</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr6i7r:f0i7</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_21457" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Upstream Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/browse/DRIVERS-2333&quot; title=&quot;Cache AWS Credentials Where Possible&quot; class=&quot;issue-link&quot; data-issue-key=&quot;DRIVERS-2333&quot;&gt;&lt;del&gt;DRIVERS-2333&lt;/del&gt;&lt;/a&gt;:&lt;br/&gt;
&lt;b&gt;Summary of required changes&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Create an internal cache for fetched AWS credentials used by the driver&lt;/li&gt;
	&lt;li&gt;Add integration tests to verify cache usage&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;b&gt;Additional background&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;Please see &lt;a href=&quot;https://github.com/mongodb/specifications/commit/364761d3dae5e430b0812f23786b592f4bb629c1&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/commit/364761d3dae5e430b0812f23786b592f4bb629c1&lt;/a&gt; for the specification change and &lt;a href=&quot;https://github.com/mongodb/specifications/commit/745e486dd03f0d724c68593bf9ddb017d2d58fa6&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/specifications/commit/745e486dd03f0d724c68593bf9ddb017d2d58fa6&lt;/a&gt; for a follow-up to tests.&lt;/p&gt;

&lt;p&gt;Please see &lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/3d67e80c3553051286afed4c3e7ba7aabcf7cba3&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/3d67e80c3553051286afed4c3e7ba7aabcf7cba3&lt;/a&gt;&#160;for a reference implementation in C#.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Integration test&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;Drivers are expected to add an integration test as described in the specification change&lt;/p&gt;</customfieldvalue>

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